canvas教程

Canvas.CopyRect应用问题

字号+ 作者:H5之家 来源:H5之家 2015-11-13 12:47 我要评论( )

【话题】Canvas.CopyRect应用问题 2009-08-28 10:28:54 来自:黄一冰 浏览数: 26 次 我想把image1的位图分为一个个矩形,逐步copy到位图bmp上,然后在image2上显示,可是用下面的代码,发现image2上一直只能显示image1的左上角部分,敬请高手指点!(iamge1和image2

【话题】Canvas.CopyRect应用问题

2009-08-28 10:28:54 来自:黄一冰 浏览数:26

我想把image1的位图分为一个个矩形,逐步copy到位图bmp上,然后在image2上显示,可是用下面的代码,发现image2上一直只能显示image1的左上角部分,敬请高手指点!(iamge1和image2的stretch属性均为true)
procedure TForm3.Button5Click(Sender: TObject);
var
  bmp:Tbitmap;
  i,bmpheight,bmpwidth:integer;
begin
    bmp:=Tbitmap.Create;
    bmp.Height:=self.Image1.Height;
    bmp.Width:=self.Image1.Width;
    bmpHeight:=self.Image1.Height;
    bmpWidth:=self.Image1.Width;
    bmp.Canvas.Brush.Color:=clgray;
    bmp.Canvas.Brush.Style:=bssolid;
    bmp.Canvas.FillRect(rect(0,0,bmpwidth,bmpheight));
    for i:=0 to  bmpheight-1  do
    begin
      bmp.Canvas.CopyRect(rect(0,i,bmpwidth,i+1),self.Image1.Canvas,rect(0,i,bmpwidth,i+1));
    end;
    image2.Picture.Bitmap.Assign(bmp);
    self.Invalidate;
    bmp.Free;
end;

procedure TForm3.Button4Click(Sender: TObject);
begin
  image1.Picture.Bitmap.LoadFromFile(ExtractFilePath(Application.ExeName)+'image\base.bmp');
end;


更多相关的话题

 

tuerjia回复于28日10点37分 

very good! Thanks!

 

小白熊回复于28日10点49分 

看错了。。

 

amy_zhao回复于28日11点00分 

因为设置stretch,并不代表把位图实际尺寸拉伸了,所以你得到的还是原始的尺寸,所以画上去的就不是stretch后的图像

 

wenjp0429回复于28日11点12分 

Delphi(Pascal) code //image2.Picture.Bitmap.Assign(bmp); Image2.Canvas.CopyRect(Image2.ClientRect, Canvas, Image1.BoundsRect);

你的BMP图片有可能比 Image1大,他是拷贝不了大的

 

liweichao回复于28日11点21分 

bmp.Canvas.CopyRect(rect(0,i,bmpwidth,i+1),self.Image1.Canvas,rect(0,i,bmpwidth,i+1));
这句把bmp的图象改了,当然只有那么一点

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 利用 HTML5 的 CANVAS 绘制手机应用图表

    利用 HTML5 的 CANVAS 绘制手机应用图表

    2017-04-30 09:00

  • canvas游戏开发学习之四:应用图像

    canvas游戏开发学习之四:应用图像

    2017-04-29 16:00

  • Canvas与ValueAnimator

    Canvas与ValueAnimator

    2017-04-28 18:00

  • 微信小程序学习用demo推荐:微信涂鸦、canvas学习

    微信小程序学习用demo推荐:微信涂鸦、canvas学习

    2017-04-26 10:01

网友点评