bmp.loadfromfile 载入一BMP后使用 bmp.width=bmp.width*3增加了宽度,如何使其中原有图像位于中间呢? ( 积分: 50 )

  • 主题发起人 主题发起人 wyxriver
  • 开始时间 开始时间
W

wyxriver

Unregistered / Unconfirmed
GUEST, unregistred user!
用这种办法增加宽度后会在原始图像右边增加空白区域,如果不加任何设置,原始图像会位于(0,0)处,所有增加的宽度全加到了右边,我现在想在改变了这个BMP的宽度后,使其中原来的图像位于中间,如何做到呢?
 
Image1.Stretch:=true;
 
我只是用了一个tbitmap变量裁入图片,并没有用image,如何处理呢?
 
bmp.Stretch:=true;
 
OW := Bmp.Width; //保存旧的宽度
Bmp.Width := Bmp.Width * 3;
Bmp.Canvas.Draw(OW,0, Bmp); //把图像画到新位置
Bmp.Canvas.Pen.Color := clWhite;
Bmp.Canvas.Rectangle(0,0,OW,Bmp.Height); //把旧位置填充白色
 

Similar threads

后退
顶部