图像保存问题,在线,急×3!!!(要分开口)(50分)

  • 主题发起人 主题发起人 youyo2bb
  • 开始时间 开始时间
Y

youyo2bb

Unregistered / Unconfirmed
GUEST, unregistred user!
通过点击系列图像(选中其中四幅),将此四幅图像保存在内存中,在以后打印时调入QRImage1-QRImage4中,可不可以帮忙给出代码!!!谢谢!(分两段,保存与调用)
 
怎么没人,给点思路建议也可以,但由于对delphi很菜,不麻烦的话就给些原码,函数变量随便定就可以了。谢谢,真的很急。
 
fw们不会这么无情吧!!!
 
思路:
存入到TMemoryStream
procedure TForm1.Button1Click(Sender: TObject);
var
MyJPEG : TJPEGImage;
MS: TMemoryStream;
begin
MyJPEG := TJPEGImage.Create;
try
  with MyJPEG do
  begin
   Assign(Image.Picture.Graphic);
   MS:=TMemoryStream.create;
   SaveToStream(MS);
   MS.Position:=0;

end;
 finally
  MyJPEG.Free;
 end;
再从TMemoryStream调出
 
首先标定选择的数量变量,不是问题吧;
然后根据数量创建 动态数组 , array of Tqrimage ,不是问题吧

然后设置绑定数组到 Qreport 中的 band ,虽然有些麻烦,但也不是问题

赋值吧 ,assigen ,或者 bitmp:= 等均可以的

 
procedure TForm1.Button1Click(Sender: TObject);
var
bitmap:Tbitmap;
begin
bitmap:=nil;
bitmap:=Tbitmap.Create;
bitmap.LoadFromFile('E:/net1.bmp');
qrimage1.Picture.Bitmap :=bitmap;
bitmap.free;
QuickRep1.Preview;
end;
 
楼上的zhbj:

方便的话给点代码可以吗?
先谢了!
 
weichao9999,先谢谢你,但你的回答和问题好像差一些。
 
可以把一副保存到内存中,四副我还没有办法
 
那是你悟性不高.
我的那段程序既有图片的存储,又有图片的打印和释放。只是是随手写的,缺乏细节
但是你稍加改进就能完成你的要求。
 
这个应该有问题:
procedure TForm1.Button1Click(Sender: TObject);
var
bitmap:Tbitmap;
begin
bitmap:=nil; //这句是什么地干活???!!!
bitmap:=Tbitmap.Create;
bitmap.LoadFromFile('E:/net1.bmp');
//qrimage1.Picture.Bitmap :=bitmap; //这是指针复制, FREE后就没有了.
quimage1.Picture..Assign(bitmap); //这样才行.
bitmap.free;
QuickRep1.Preview;
end;
 
谢谢了!
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
825
DelphiTeacher的专栏
D
D
回复
0
查看
769
DelphiTeacher的专栏
D
后退
顶部