用Delphi如何实现bmp图像的显示,关键是实现拉伸和收缩的功能啊?
现在处于为生存而奋斗的时期,以上题目是老板给我的考核,我还是一个delphi新手,
没有项目经验,希望大家,.....,谢谢
问题点数:38、回复次数:8Top
1 楼ccnijzw(jia)回复于 2001-11-27 17:19:56 得分 0
只要实现就可以,我完成的是一个bmp格式图像的,打开,花样显示,和伸缩,即在我的产品中,
可以实现对bmp图像的拉伸和收缩,可以通过鼠标(左健的拖动)来控制图像的大小,但是图像的个部分不能对失,不能像windows中的画笔那样,将花布一拉伸,就出现空白,而是很像超级解霸中用鼠标,对视频窗口的大小控制一个意思. Top
2 楼leeky(雅痞·千年虫)回复于 2001-11-27 17:41:28 得分 10
按比例不就成了,设Timage的stretch属性为真罗当然你得判断是应以长为准还是以宽为准.这个容易吧.
Top
3 楼ccnijzw(jia)回复于 2001-12-08 15:52:03 得分 0
但如果把这个图片上的图形copyrect到另一个位图(newbmp)上,则这是时
就会原形毕露,是多大就是多大,如何才能在这第二张位图上不失真呢?Top
4 楼zswang(伴水清清)(专家门诊清洁工)回复于 2001-12-08 15:57:45 得分 0
StretchBlt(vBitmap1.Canvas.Handle, 0, 0, vWidth, vHeight,
mBitmapSoruce.Canvas.Handle, 0, 0, mBitmapSoruce.Width, mBitmapSoruce.Height, SRCCOPY);
Top
5 楼zswang(伴水清清)(专家门诊清洁工)回复于 2001-12-08 16:15:58 得分 28
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Image1.Picture.Bitmap.Width := Image1.Width;
Image1.Picture.Bitmap.Height := Image1.Height;
StretchBlt(Image1.Picture.Bitmap.Canvas.Handle, 0, 0,
Image1.Width, Image1.Height,
Image2.Picture.Bitmap.Canvas.Handle, 0, 0,
Image2.Picture.Bitmap.Width, Image2.Picture.Bitmap.Height, SRCCOPY);
//Image2有图
//Image1无图
end;
Top
6 楼zswang(伴水清清)(专家门诊清洁工)回复于 2001-12-08 16:16:36 得分 0
要位图哦,试一试告诉我Top
7 楼ccnijzw(jia)回复于 2001-12-10 09:47:21 得分 0
伤心中哦!
你真是好人哦!
我的这个问题解决了,
怎么给分啊?我是菜鸟,不知道给怎么给分Top
8 楼ccnijzw(jia)回复于 2001-12-10 09:49:01 得分 0
呵呵!Top




