在Embarcadero C++Builder XE5中将.png加载到TImage中
Load .png to TImage in Embarcadero C++Builder XE5
我需要加载一个.png图像,因为我需要它的透明度。不能将其转换为bmp格式,因为我失去了它的透明度。我该怎么做?
只需为stdimage.hpp
添加一个include。
在设计时,这将使.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:Imagescalculator.png');
Image1.Picture.Assign(Png);
finally
Png.Free;
end;
end;
XE5文档中的更多信息
在C++Builder中,代码可能如下所示:
#include <pngimage.hpp>
....
std::auto_ptr<TPngImage> img(new TPngImage());
img->LoadFromFile(...);
Image1->Picture->Assign(img);
相关文章:
- std::原子加载和存储都需要吗
- 如何加载(或映射)文件部分的最大大小,但适合在Windows上的RAM
- C++ 雷神库 - 使用资源加载器类时出现问题(不命名类型)
- 为什么加载SDF会导致Mobilizer创建闭环错误
- C++atioglxx.pdb未加载错误glBufferData OpenGL
- 如何使用tinyxml2从XML加载父实体和子实体
- 如何在C++中使用pybind11加载一个pickle python列表
- 系统.将数组移交给c#中动态加载的c++DLL时发生AccessViolationException
- 当我尝试加载内核模块时,如何修复C++中的这个 malloc() 错误?
- 树莓上的 Libtorch 无法加载 pt 文件,但在 ubuntu 上工作
- Python ctypes:不会按预期加载 dll
- 为什么会出现 gettnig 运行时错误:加载类型为"_Bit_type"(stl_bvector.h) 的空指针?
- 我的程序有一个保存配置文件的GUI,如何双击此配置文件以直接加载带有配置数据的GUI?
- 保存/加载大量短数组到二进制文件
- 使用 SDL2 和SDL_image C++加载图像
- 无法使用加载库卸载注入的 dll (C++)
- 是否有原子加载非原子值的函数?
- 将 bmp 文件加载到 TSpeedButton 中
- 如何使用Qt 3D库加载和显示搅拌机.obj源文件场景
- 在Embarcadero C++Builder XE5中将.png加载到TImage中