Delphi TImageList PNG alpha渲染太暗

时间:2013-03-27 14:46:15

标签: delphi png alpha timagelist

我的Delphi XE3应用程序工具栏上有PNG图标,当通过TActionToolbar添加到TImageList时,alpha通道渲染得比应该更暗,导致图标看起来很糟糕。我认为这个问题与TImageList有关,而与TActionToolbar无关。

Photoshop模型:

Photoshop mockup

导入TActionToolbar后的实际效果(文件夹填充的Alpha为深蓝色):

Actual

以下是我TImageList的Delphi对象检查器设置(不,问题不是BlendColor属性):

TImageList Object Inspector

有没有办法让Delphi / Windows /谁的罪魁祸首是正确呈现alpha通道?一个选项是将图标设置为所有位图,但我宁愿不去编辑使用透明颜色编辑位图的头痛,因为,我宁愿不回复恐龙时代...... TIA。

1 个答案:

答案 0 :(得分:0)

我发现处理此问题的最佳方法是在保存PNG图像之前,在包含Photoshop透明度的每个像素下绘制Delphi工具栏(或任何UI元素)的背景颜色。这样,工具栏图标完全不透明,除了100%透明像素,因此没有发生alpha混合 - 因此没有丑陋。

使用RRUZ's code here使禁用的工具栏图标看起来更好。