我想在欢迎页面上显示它。
这怎么可能?
答案 0 :(得分:5)
在5.5.7更新(2015年12月28日)中,有32位BMP实现了Alpha通道功能。
WizardImageFile和
WizardSmallImageFile
[Setup]
section指令现在支持带有alpha通道的32位位图文件。使用新的WizardImageAlphaFormat
[Setup]
section指令指定位图文件是否具有与alpha通道值预乘的红色,绿色和蓝色通道值。由Honza Rameš通过GitHub提供。
和
Pascal脚本更改:
类TBitmapImage
现在支持带有alpha通道的32位位图文件。确保在加载位图文件之前设置Bitmap.AlphaFormat
属性。
答案 1 :(得分:4)
但是,如果您的意图主要是显示部分透明的图像,则有一种解决方法:
ReplaceColor
类的ReplaceWithColor
和TBitmapImage
属性允许动态地用另一种颜色替换图像中的颜色。诀窍是用wizzard的背景颜色替换“虚拟”颜色(例如洋红色):
#FF00FF
)在国际空间站中包含图像:
[Files]
Source: "my\transparent\image.bmp"; DestDir: "{tmp}"; Flags: dontcopy
将图像添加到wizzard页面:
[Code]
procedure InitializeWizard;
var
ImageFile: String;
Image: TBitmapImage;
begin
ImageFile := ExpandConstant('{tmp}\image.bmp');
ExtractTemporaryFile('image.bmp');
Image := TBitmapImage.Create(WizardForm);
with Image do
begin
Bitmap.LoadFromFile(ImageFile);
Parent := WizardForm.WelcomePage;
Left := 10;
Top := 10;
Width := 30;
Height := 30;
ReplaceColor := $00FF00FF; // Replace magenta...
ReplaceWithColor := WizardForm.WelcomePage.Color; // ...with the background color of the page
end;
end;
它不像真正的alpha透明度那么漂亮,但对于简单的情况应该没问题。
答案 2 :(得分:3)
根据http://news.jrsoftware.org/news/innosetup.code/msg23217.html上的新闻组发布,安装表单不支持PNG,欢迎页面也不支持PNG。