- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
经过我想要的更多调查后,我得出了结论(可能是错误的),BRCC32 在创建具有不同颜色深度的 ICO 图像的资源文件时存在问题。
具体来说,如果 ICO 文件中的图标同时具有 8 位 256 色和 24 位 XP(alpha)图像,那么 BRCC32 将生成一个包含这些图标的 RES 文件,但同时包含 8 位和 24 位图像将被标记为 24 位。那么问题是,想要显示 24 位图像(即能够显示超过 256 色的图像)的系统将选择符合该要求的第一个图像。至少就我而言,这恰好是“伪”24 位 256 色图标。因此,您在桌面上看到的图标分辨率低于应有的分辨率。
使用HeavenTools的“资源调谐器”,可以清楚地看到“组图标”信息保存了8位图像的24位描述符。
我有两条路前进。删除 256 色 ico 图像,这会在生成的 RES 文件中仅生成“正确的”24 位 XP Alpha 图像。缺点是没有 256 色图标(如果您需要的话)。更好的方法是使用 http://www.godevtool.com/#rc 中的 GoRC.exe(资源编译器)作为 BRCC32 的替代品。这可以正确处理 8 位和 24 位图像的组合。结果是 Windows 可以选择适合系统显示分辨率的正确图标。
作为一个附带问题,我还发现 BRCC32 似乎无法处理 PNG 压缩图像(您会收到错误 15分配失败)。正是在寻找这个错误时,我遇到了 GoRC(来自 Jan Wichers 博客)。
是否有人有类似的经历来证实我的发现,或者我是否遗漏了一些关键知识?我的后续问题是,这在 D2009/D2010 中仍然是一个问题吗??
保罗。
最佳答案
我最近遇到了同样的问题 - 如果同一个图标中有 256 色和 32 位颜色子图标,BRCC32 资源编译器肯定会感到困惑。经过大量调查,似乎当图标组标题写入 .res 文件时,它总是放入 32 位的值,忽略实际的颜色深度。
我必须制作一个应用程序来解决这个问题,我已将其附在下面的源代码中。请记住,这是我所做的一个快速修复,它对资源文件中将找到的内容做出了一些假设,我认为这可能会对您有所帮助:
关于delphi - D2007(2007 年 12 月更新)BRCC32、ICO、RES 和颜色深度问题/澄清,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2470086/
我是一名优秀的程序员,十分优秀!