Visual Studio VSPackage图标显示不同的颜色

时间:2018-01-23 21:31:34

标签: visual-studio-2017 png visual-studio-extensions imaging vspackage

我正在尝试为激活自定义VSPackage扩展程序的按钮提供一个图标。

设计图标时,使用以下颜色:

前景:#fff(白色) 背景:#a375e7(浅紫色)

在Visual Studio(解决方案资源管理器,顶部)中的按钮中显示图标时,会看到以下颜色:

前景:#000(黑色) 背景:#5c1fb7(深紫色)

图标已停用。

图标来自PNG文件,其中包含多个图标。每个图标为16 x 16像素。

不可否认,我不是图像处理方面的专家,因此我的有根据的猜测是,在出口之前,设计时的图像设置很简单。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

  

为了在Visual Studio黑暗主题中以正确的对比度显示图标,将以编程方式应用反转。

请参阅 Visual Studio的图像和图标文档中的Color inversion for dark themes

要退出反转,您可以尝试将右上角像素设置为青色(#00FFFF)。来自IVsImageService2.ThemeDIBits文档:

  

将主题应用于BGRA32设备无关的位图位。变换图像的亮度,使恒定的“光晕”光度与背景融为一体。这具有视觉上消除晕圈的效果。 “光晕”光度是不可变的常数,不是从输入图像计算的。在其右上像素中包含青色(#00FFFF)的图像不会反转。相反,清除右上角像素(RGBA全部设置为0)并返回S_OK而不修改图像。