1,183
社区成员
发帖
与我相关
我的任务
分享
// 把多帧图像分解为单图像保存到文件
procedure TForm1.Button2Click(Sender: TObject);
var
I, Count: Integer;
Clsid: TClsid;
Parameters: TEncoderParameters;
Quality: Integer;
Image: TGpImage;
GUID: TGUID;
begin
Image := TGpImage.Create({'..\media\hbmap108.gif'}'hb.tif');
Image.GetFrameDimensionsList(@GUID, 1);
Count := Image.GetFrameCount(GUID);
GetImageEncoderClsid('image/jpeg', Clsid);
Parameters.Count := 1;
Parameters.Parameter[0].Guid := EncoderQuality;
Parameters.Parameter[0].ValueType := EncoderParameterValueTypeLong;
Parameters.Parameter[0].NumberOfValues := 1;
Quality := 100; // 图片质量100
Parameters.Parameter[0].Value := @Quality;
for I := 0 to Count - 1 do
begin
Image.SelectActiveFrame(GUID, I);
Image.Save('Hb' + IntToStr(I) + '.jpg', Clsid, @Parameters);
end;
end;