delphi11 TBitMap获取JPG图片自TImage
时间: 2024-01-20 10:03:09 浏览: 231
在 Delphi 11 中,如果您想从 TImage 控件中获取 JPEG 格式的图像并将其转换为 TBitmap 对象,您可以使用以下代码:
```delphi
uses
FMX.Graphics, System.IOUtils; // 导入图像和文件单元
// ...
procedure TForm1.Button1Click(Sender: TObject);
var
Bitmap: TBitmap;
FileName: string;
begin
// 创建 TBitmap 对象
Bitmap := TBitmap.Create;
try
// 从 TImage 中获取 JPEG 格式的图像
if Image1.Bitmap.IsEmpty then
Exit;
if SameText(Image1.Bitmap.Format.Extension, '.jpg') then
Bitmap.LoadFromStream(Image1.Bitmap.Stream)
else
Bitmap.Assign(Image1.Bitmap);
// 保存图像到文件
FileName := TPath.Combine(TPath.GetCachePath, 'MyImage.jpg');
Bitmap.SaveToFile(FileName);
// 处理图像,例如发送到服务器
// ...
finally
// 释放 TBitmap 对象
Bitmap.Free;
end;
end;
```
在此示例中,我们创建了一个 TBitmap 对象,并使用 Bitmap.Assign 或 Bitmap.LoadFromStream 方法将 TImage 控件中的图像复制到 TBitmap 对象中。如果图像是 JPEG 格式,则我们使用 Bitmap.LoadFromStream 方法,否则我们使用 Bitmap.Assign 方法。接下来,我们将 TBitmap 保存到缓存中,并使用文件名进行后续处理,例如发送到服务器。请注意,此示例将图像保存为 JPEG 格式,并将其保存到缓存路径。您可以根据需要更改这些设置。
阅读全文