在 VSIX 中捆绑 Visual Studio 项目模板时防止图标颜色和大小失真

Posted

技术标签:

【中文标题】在 VSIX 中捆绑 Visual Studio 项目模板时防止图标颜色和大小失真【英文标题】:Preventing icon color and size distortions when bundling a Visual Studio project template in a VSIX 【发布时间】:2016-10-06 10:46:12 【问题描述】:

我们创建了一个包含许多项目模板的 VSIX。在每个模板中,.vstemplate 引用的图标图像文件如下:

  <Icon>TemplateIcon.png</Icon>

以下是此类 PNG 的示例:

我实际上是直接从模板项目中拖动了这三个图像 - 将被编译到 VSIX 中的文件完全相同。

这里很难说,但是左上角和右下角是透明的,蓝色的里面是白色的。

当我编译 VSIX 时,所有模板都已正确安装并且它们都可以正常工作。但是,New Project 对话框中的图标不同:

透明的边角看起来不错,但是里面的白色变成了黑色,并且在第三个图标中出现了缩小。

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

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

【问题讨论】:

【参考方案1】:

将每个图标的右上角像素设置为 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找到一些信息。寻找“允许颜色反转”。也许这对你更相关。

感谢@Newrad0603 和来自https://gitter.im/Microsoft/extendvs 的@lishu 帮助我完成了这些。

【讨论】:

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

以上是关于在 VSIX 中捆绑 Visual Studio 项目模板时防止图标颜色和大小失真的主要内容,如果未能解决你的问题,请参考以下文章

如何卸载.vsix Visual Studio Extensions?

是否可以创建适用于 Visual Studio 和 Blend 的 VSIX 扩展?

创建一个从在线提要中提取 NuGet 引用的 Visual Studio 项目模板

生产力提升! 自己动手自定义Visual Studio 2019的 类创建模板,制作简易版Vsix安装包...

生产力提升! 自己动手自定义Visual Studio 2019的 类创建模板,制作简易版Vsix安装包...

Visual Studio Code