做了一个报刊排版软件,要把几个4-5M的JPG文件同时调入报表中打印时出错,但此错误是随机出现的,不知有什么办法优化代码:贴部分代码如下:
procedure Tone_fourmodernmakeuppreviewForm.SpeedButton2Click(
Sender: TObject);
Var
MS:TMemoryStream;
Ajpeg:TJPEGImage;
begin
if FileExists(FileNameLabel1.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel1.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage1.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage1.Picture:=nil;
if FileExists(FileNameLabel2.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel2.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage2.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage2.Picture:=nil;
if FileExists(FileNameLabel3.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel3.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage3.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage3.Picture:=nil;
if FileExists(FileNameLabel4.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel4.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage4.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage4.Picture:=nil;
one_fourpagekindpicturedisplayform.QRLabel1.Caption:='第'+PageNoLabel.Caption+'页';
one_fourpagekindpicturedisplayform.QuickRep1.Prepare;
one_fourpagekindpicturedisplayform.QuickRep1.Preview;
end;
procedure Tone_fourmodernmakeuppreviewForm.SpeedButton2Click(
Sender: TObject);
Var
MS:TMemoryStream;
Ajpeg:TJPEGImage;
begin
if FileExists(FileNameLabel1.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel1.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage1.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage1.Picture:=nil;
if FileExists(FileNameLabel2.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel2.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage2.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage2.Picture:=nil;
if FileExists(FileNameLabel3.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel3.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage3.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage3.Picture:=nil;
if FileExists(FileNameLabel4.Caption) then
begin
MS:=TMemoryStream.Create;
Ajpeg:=TJPEGImage.Create;
try
MS.LoadFromFile(FileNameLabel4.Caption);
MS.Position:=0;
Ajpeg.LoadFromStream(MS);
one_fourpagekindpicturedisplayform.QRImage4.Picture.Assign(Ajpeg);
finally
MS.Free;
Ajpeg.Free;
end;
end
else
one_fourpagekindpicturedisplayform.QRImage4.Picture:=nil;
one_fourpagekindpicturedisplayform.QRLabel1.Caption:='第'+PageNoLabel.Caption+'页';
one_fourpagekindpicturedisplayform.QuickRep1.Prepare;
one_fourpagekindpicturedisplayform.QuickRep1.Preview;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货