如何给图片加这样的边框,(附有效果图片)(100分)

  • 主题发起人 主题发起人 boby
  • 开始时间 开始时间
B

boby

Unregistered / Unconfirmed
GUEST, unregistred user!
先看看我想实现的效果:

http://homepage.ruhr-uni-bochum.de/nan.wang/test.jpg

我想实现的效果就如上图

我用image调用图片,图片格式为jpg, 本来想直接在图片上画,但是报措说image中图片只有位图格式才能编辑,而且我不知道如何去掉四个角,将其圆角化

100分,解决就给分
 
//几百年没碰到这东东了,麻烦你怎么再整一下吧。效果实现了。[:(]
procedure TForm1.Button1Click(Sender: TObject);
var
bmp, b: TBitmap;
begin
ImageList1.Height := Image1.ClientHeight;
ImageList1.Width := Image1.ClientWidth;

bmp := TBitmap.Create;
b := TBitmap.Create;
try
with bmp do
begin
bmp.Width := Image1.ClientWidth;
bmp.Height := Image1.ClientHeight;
b.Width := bmp.Width;
b.Height := bmp.Height;
b.Canvas.Draw(0, 0, Image1.Picture.Graphic);

Canvas.Draw(0, 0, Image1.Picture.Graphic);

Canvas.Brush.Style := bsClear;
Canvas.Brush.Color := clBlack;
Canvas.FillRect(Image1.ClientRect);

Canvas.Brush.Color := clWhite;
Canvas.RoundRect(0, 0, Image1.Width, Image1.Height, 40, 40);
Mask(clWhite);


ImageList1.Add(bmp, bmp);
ImageList1.Draw(b.Canvas, 0, 0, 0, true);


ImageList1.AddMasked(b, clBlack);
ImageList1.Draw(self.Canvas, 0, 0, 1, true);

end;
finally
FreeAndNil(bmp);
FreeAndNil(b);
end;
end;
 
wlmmlw,你的方法我试过了,但是我要的不光是圆滑图片的四个角,还要给它加上边框,能不能教教我
 
换汤不换药,只要把上面颜色改为Strach 图片就行了
 
不会吧,你再给它一个RoundRect 就行了。
你的边框是四个圆角的吗?
我好象没看到你的边框啊,只是一条线。
 
那条线就是边框,它的宽度和颜色要可以自己设置的
 
好,试试看,先谢谢了
 
接受答案了.
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部