我需要加载一个.png图像,因为我需要它的透明度。它不是一个选择,转换它,例如,在bmp,因为我失去了它的透明度。我怎么能这么做?
发布于 2014-04-24 13:20:31
只需为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++生成器,因为TImage
和TPngImage
都是Delphi类,因此它是相关的,因为C++ Builder用户应该非常熟悉翻译Delphi代码,因为整个TPngImage
都是在它的基础上构建的。而且,由于TImage
是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-24 14:54:29
在C++生成器中,代码可能如下所示:
#include <pngimage.hpp>
....
std::auto_ptr<TPngImage> img(new TPngImage());
img->LoadFromFile(...);
Image1->Picture->Assign(img);
https://stackoverflow.com/questions/23269531
复制相似问题