X xuehua_ljy Unregistered / Unconfirmed GUEST, unregistred user! 2005-10-11 #1 我使用了两个image组件,分别使用画布画了两个图像,即图头和图的内容,我想实现把这两个图像保存成一个图形文件,可以进行打印和打开等操作,不知能否实现?
X xuehua_ljy Unregistered / Unconfirmed GUEST, unregistred user! 2005-10-11 #2 我使用了两个image组件,分别使用画布画了两个图像,即图头和图的内容,我想实现把这两个图像保存成一个图形文件,可以进行打印和打开等操作,不知能否实现?
T tanhua Unregistered / Unconfirmed GUEST, unregistred user! 2005-10-11 #3 把两个图并排着方在一起(看你需要怎么排了,也可以上下),把整个需要合并范围的画布重画一下就可以了。缺点是只能重画屏幕内的,如果你是大显示器就没有问题,搞不定屏幕外的,如果你的图很大,大过屏幕就完了。
X xuehua_ljy Unregistered / Unconfirmed GUEST, unregistred user! 2005-10-12 #4 我就是想上下图像保存成一个图像,并且我的下面的图像应该是超出显示器了,我把image组件放到了scrollbox中,想问一下怎么保存和打印这样的图像,拜托帮忙亚
J Jonson_sunshine Unregistered / Unconfirmed GUEST, unregistred user! 2005-11-13 #6 新建一个,然后复制合并,再保存,完毕释放掉
娃 娃娃 Unregistered / Unconfirmed GUEST, unregistred user! 2005-11-14 #7 procedure TForm1.Button1Click(Sender: TObject); var t1, t2: TBitmap; begin t1 := Image1.Picture.Bitmap; t2 := Image2.Picture.Bitmap; Image3.Canvas.Draw(0,0, t1); Image3.Canvas.Draw(t1.Width,0, t2); end;
procedure TForm1.Button1Click(Sender: TObject); var t1, t2: TBitmap; begin t1 := Image1.Picture.Bitmap; t2 := Image2.Picture.Bitmap; Image3.Canvas.Draw(0,0, t1); Image3.Canvas.Draw(t1.Width,0, t2); end;
X xuehua_ljy Unregistered / Unconfirmed GUEST, unregistred user! 2005-11-30 #8 试了一下你告诉我的方法,发现image1和image2上的图像并没有放到image3上,好像不太好用
Z zhangyuntian Unregistered / Unconfirmed GUEST, unregistred user! 2005-11-30 #9 procedure TForm1.Button1Click(Sender: TObject); var jp1, jp2, jp: TJPEGImage; bmp_t, bmp: TBitmap; begin jp1 := TJPEGImage.Create; jp2 := TJPEGImage.Create; jp := TJPEGImage.Create; try jp1.LoadFromFile('D:/aaa1.jpg'); jp2.LoadFromFile('D:/aaa1.jpg'); bmp := TBitmap.Create; bmp_t := TBitmap.Create; try bmp.Width := jp1.Width; bmp.Height := jp1.Height + jp2.Height; bmp_t.Assign(jp1); bmp.Canvas.Draw(0, 0, bmp_t); bmp_t.Assign(jp2); bmp.Canvas.Draw(0, jp1.Height, jp2); jp.Assign(bmp); jp.SaveToFile('C:/0.jpg'); finally bmp.Free; bmp_t.Free; end; finally jp1.Free; jp2.Free; jp.Free; end; end; 将上面代码修改一下就可以了
procedure TForm1.Button1Click(Sender: TObject); var jp1, jp2, jp: TJPEGImage; bmp_t, bmp: TBitmap; begin jp1 := TJPEGImage.Create; jp2 := TJPEGImage.Create; jp := TJPEGImage.Create; try jp1.LoadFromFile('D:/aaa1.jpg'); jp2.LoadFromFile('D:/aaa1.jpg'); bmp := TBitmap.Create; bmp_t := TBitmap.Create; try bmp.Width := jp1.Width; bmp.Height := jp1.Height + jp2.Height; bmp_t.Assign(jp1); bmp.Canvas.Draw(0, 0, bmp_t); bmp_t.Assign(jp2); bmp.Canvas.Draw(0, jp1.Height, jp2); jp.Assign(bmp); jp.SaveToFile('C:/0.jpg'); finally bmp.Free; bmp_t.Free; end; finally jp1.Free; jp2.Free; jp.Free; end; end; 将上面代码修改一下就可以了
G gqying Unregistered / Unconfirmed GUEST, unregistred user! 2005-11-30 #10 procedure TForm1.Button1Click(Sender: TObject); begin Image1.Canvas.Ellipse(1,1,50,50); Image2.Canvas.Ellipse(1,1,100,100); Image3.Canvas.Draw(26,1,image1.Picture.Graphic ); Image3.Canvas.Draw(1,51,image2.Picture.Graphic ); end;
procedure TForm1.Button1Click(Sender: TObject); begin Image1.Canvas.Ellipse(1,1,50,50); Image2.Canvas.Ellipse(1,1,100,100); Image3.Canvas.Draw(26,1,image1.Picture.Graphic ); Image3.Canvas.Draw(1,51,image2.Picture.Graphic ); end;