我需要加载 .png 图像,因为我需要它的透明度。例如在 bmp 中转换它不是一个选项,因为我失去了它的透明度。我怎样才能做到这一点?
问问题
8910 次
2 回答
3
只需为stdimage.hpp
.
在设计时,这将使 .png 文件在Image.Picture
对话框中可用。在运行时,您可以使用该文件创建和加载 TPngImage,并将其分配给Image.Picture
.
#include <stdimage.hpp>
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
TPngImage* img = new TPngImage();
img->LoadFromFile("C:\\Images\\calculator.png");
Image1->Picture->Assign(img);
delete img;
}
(包括 Delphi 代码和解释以及 C++ Builder,因为TImage
和TPngImage
都是 Delphi 类,因此它是相关的,并且因为 C++ Builder 用户应该非常熟悉翻译 Delphi 代码,因为整个 VCL 都建立在它之上。此外,TImage
正如Delphi VCL 组件,Delphi 用户可能会发现问题并找到有用的信息。)
procedure TForm4.Button1Click(Sender: TObject);
var
Png: TPngImage;
begin
Png := TPngImage.Create;
try
Png.LoadFromFile('C:\Images\calculator.png');
Image1.Picture.Assign(Png);
finally
Png.Free;
end;
end;
XE5 文档中的更多信息
于 2014-04-24T13:20:31.363 回答
2
在 C++ Builder 中,代码可能如下所示:
#include <pngimage.hpp>
....
std::auto_ptr<TPngImage> img(new TPngImage());
img->LoadFromFile(...);
Image1->Picture->Assign(img);
于 2014-04-24T14:54:29.060 回答