呵呵,本来用TQrWMFExport都做好了,要打包的时候发现对于多页报表有问题,
由于在多页状况下生成的报表文件名不太好处理,只好把203010兄的改了一下:
//========================
//将当前打印面保存到文件
//========================
procedure TForm1.SaveToPIC(const APageNum: Integer);
var
E: TMetaFile;
B: TBitmap;
J: TJPEGImage;
s: string;
begin
//========================
//获取当前打印页的WMF描述
//========================
E := frmBasicMD.QuickRep1.QRPrinter.GetPage(APageNum);
//========================
B := TBitmap.Create;
try
J := TJPEGImage.Create;
try
with TMetafileCanvas.Create(E, 0)do
try
//========================
//将WMF转换成BMP
//========================
B.Height := E.Height;
B.Width := E.Width;
B.Canvas.Draw(0, 0, E);
s := 'C:/' + IntToStr(APageNum) + '.BMP';
B.SaveToFile(s);
//========================
//将位图保存成JPEG格式
//========================
J.CompressionQuality := 50;
J.Assign(B);
s := 'C:/' + IntToStr(APageNum) + '.JPG';
J.SaveToFile(s);
//========================
finally
Free;
end;
finally
J.Free;
end;
finally
B.Free;
end;
end;
完整的代码已发,请查收!