2016-06-06 24 views
4

我们创建了一个包含多个项目模板的VSIX。在每个模板中,.vstemplate引用这样的图标图像文件:如PNG格式的在VSIX中捆绑Visual Studio项目模板时防止图标颜色和大小扭曲

<Icon>TemplateIcon.png</Icon> 

下面举例说明:

enter image description here enter image description here enter image description here

我从字面上直接拖到这三个图像模板项目 - 将被编译到VSIX中的文件。

这里很难说,但左上角和右下角是透明的,蓝色内部填充了白色。

当我编译VSIX时,所有模板都正确安装,它们都正常工作。然而,在新建项目对话框中的图标是不同的:

enter image description here

透明的角落看起来很好,但里面的白色已变成黑色,并在第三个图标出现缩水。

我试过GIF和ICO格式无济于事(GIF版本没有收缩,但它确实取代了白色与黑色)。另外,上面的图片是64x64。我尝试使用32x32(对话框中图标的实际大小)。得到了相同的结果。

你能帮我按预期将图像放入新建项目对话框吗?

回答

4

将每个图标的右上像素设置为RGBA#00 FF FF 01可能会有所帮助。 (青色几乎是透明的。)这会告诉Visual Studio不要变换图标。将alpha通道(不透明度)设置为00不起作用 - 这就是为什么它是01.而使用FF可以使蓝色像素可见。

它适用于我们与VSiX菜单命令图标。 (https://msdn.microsoft.com/en-us/library/bb165158.aspx

你也可以在这里找到一些信息https://msdn.microsoft.com/en-US/library/mt628927.aspx。寻找“AllowColorInversion”。也许这对你更重要。

请允许我感谢@ Newrad0603和来自https://gitter.im/Microsoft/extendvs的@lishu帮助我把它们放在一起。

+0

设置右上角的像素工作!谢谢!并感谢@Jakub Linhart捐赠的赏金 - 非常感谢。注意:指向微软的链接指向VS2015,似乎并不适用于我们正在使用的VS2013(尽管我们将尽快升级)。 – biscuit314