我正在使用Windows 8 RTM和Visual Studio Express 2012 for Windows Desktop。我正在尝试编写在Visual C++中使用UIRibbon
的应用程序。 (因为我只有Express版本,所以我无法访问MFC;请不要在答案中使用它。)图像透明度不起作用
问题与我在功能区中使用的图标有关。由于Windows 7兼容性是此项目的一项要求,因此我无法使用PNG图像;我被老派的BMP卡住了。问题是,虽然一些BMP显示正确,但大多数图像都有黑色的边界框。我怀疑这个问题与BMP文件有关,并且不在功能区XML文件或代码中。
正确显示的BMP我从互联网下载,作为我适应的样本的一部分。无法正确显示的BMP从ICO文件中提取,然后使用System.Drawing.Bitmap
.NET API转换为32位图像。 (这个转换过程是作为我的构建过程的一部分,而不是在运行时完成的。)
我的问题是:以这种方式更改BMP的位深度是否会影响图像中的颜色?如果是这样,任何人都可以指出一个免费工具,可以将PNG文件转换为32位BMP文件,在Windows UIRibbon
中正常工作?