回 帖 发 新 帖 刷新版面

主题:image1载入大图片时如果stretch=true,image1会显示出大图片的缩图,那么如何将这

赋值后虽然两个image显示的内容一样,但是第一个image1.picture的尺寸是原始图片的尺寸,
而新的image2.picture的尺寸是image1中缩图的尺寸,
也就是说image2.picture.width=image1.width

如何做到呢?万分感谢。

回复列表 (共4个回复)

沙发


我给你写好了~~
var
  destrect,sourect:Trect;
begin
  destrect.Left:=0;        //取得原始图片大小
  destrect.Top:=0;
  destrect.Bottom:=image1.Picture.Height;
  destrect.Right:=image1.Picture.Width;
  sourect.Left:=0;        //要显示的大小
  sourect.Top:=0;
  sourect.Bottom:=image2.Height;
  sourect.Right:=image2.Width;
 image2.Canvas.CopyRect(sourect,image1.Canvas,destrect);//就行了
end;

板凳


对了~~这个方法还可以缩小~~都是一样的道理~只要改变目标的大小就行了

3 楼

功能是实现了,可是拷贝完成的图像效果很差,这是什么原因呢?

4 楼


图像的分辨率并没有变~~你把他变大了当然就不清楚了,至于怎么提高它的分辨率我就不知道了

我来回复

您尚未登录,请登录后再回复。点此登录或注册