【发布时间】:2021-05-26 16:12:12
【问题描述】:
我正在尝试使用 GIMP 2.10.24(也尝试使用 2.9)为 Visual Studio 2019 的资源编辑器中的 MFC 应用程序修改工具栏的 BMP 文件。
使用these explanations,我可以保存 BMP 文件,以便它在 Visual Studio 中打开。 我还将模式设置为 RGB 并确保没有 alpha 通道。
MS VS 编辑器的标题为
0x0, 1 bit, BMP
和以前一样。
应用程序构建正常,但是当我运行它时,
VERIFY(toolBar->LoadToolBar(nID));
因异常而失败。
我还需要做什么才能让我的工具栏再次加载吗?
提前致谢!
【问题讨论】:
-
BMP 文件格式非常复杂,几乎没有人能正确理解。只是为了确保您的位图有效,在 MS Paint 中打开它,然后再次保存。尽管(显然)您使用的是单色(1bpp)位图似乎很奇怪。
-
你说得对,看到“1 bit”令人惊讶……尤其是当我在 Gimp、Visual Studio 和 Paint 中看到颜色时!从 Paint 中保存回来使它在单色模式下工作(但我失去了颜色)。另存为 16 种颜色会在工具之间添加空白图标。保存为 256 个作品,但会搞砸颜色(它们在油漆和工作室中显示正常)。保存为 24 位使其再次崩溃。奇怪的。 MS VS 文档讨论了为工具栏导出和导入位图,但我的 VS 2019 中只有“导出”,而不是“导入”。:-( (docs.microsoft.com/en-us/cpp/windows/…)
-
好的,解决了一个难题:GIMP 无法写入符合要求的 BMP 文件。考虑到 Adobe Photoshop 也不会,这并不奇怪。无论如何,如果图像被识别为单色图像,但您看到的是颜色,则无法查看 BMP 文件。它可能是一个 ICO,由单色蒙版和颜色信息组成。您能否提供问题中图像数据的十六进制转储?
-
我记得我不得不将 GIMP 降级到 2.6.0 版,因为新生成的位图无法与我的 MFC 同化。您可以通过oldversion.com/windows/the-gimp-2-6-0 获取
-
回到基础 - 首先使用资源编辑器创建工具栏资源。然后,关闭解决方案,将 res 文件夹中的图像文件的特征与您自己的图像文件进行比较,看看它们有何不同。此外,请考虑在 IDE 和属性中显示图像的屏幕截图,以及来自 RC 文件的适当图像数据的 sn-p。
标签: visual-studio bitmap mfc visual-studio-2019 gimp