BGRABitmap图像操作8:纹理,前面椭圆外加一圆角长方形
2016-09-04 16:27
465 查看
unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, BGRABitmap, BGRABitmapTypes; type { TForm1 } TForm1 = class(TForm) procedure FormPaint(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation {$R *.lfm} { TForm1 } procedure TForm1.FormPaint(Sender: TObject); var image,tex: TBGRABitmap; c: TBGRAPixel; x,y,rx,ry: single; begin image := TBGRABitmap.Create(ClientWidth,ClientHeight,ColorToBGRA(ColorToRGB(clBtnFace))); c := ColorToBGRA(ColorToRGB(clWindowText)); //ellipse coordinates x := 150; y := 100; rx := 100; ry := 50; //loads a "diagcross" brush with white pattern and orange background tex := image.CreateBrushTexture(bsDiagCross,BGRAWhite,BGRA(255,192,0)) as TBGRABitmap; image.FillEllipseAntialias(x,y,rx-0.5,ry-0.5,tex); image.EllipseAntialias(x,y,rx,ry,c,1); //draw outline image.RoundRectAntialias(x-rx-10,y-ry-10,x+rx+10,y+ry+10,20,20,c,11); image.RoundRectAntialias(x-rx-10,y-ry-10,x+rx+10,y+ry+10,20,20,tex,9); tex.Free; image.Draw(Canvas,0,0,True); image.free; end; end.
相关文章推荐
- BGRABitmap图像操作6:前面的长方形改成既有圆角又有尖角
- BGRABitmap图像操作6:前面的长方形改成圆角
- BGRABitmap图像操作8:用正弦函数生成纹理
- BGRABitmap图像操作9:用 phong 阴影制作纹理
- BGRABitmap图像操作8:另一个阈值控制方式,生成迷彩纹理
- BGRABitmap图像操作9c:同时使用莫林杂点和 phong 阴影制作纹理
- BGRABitmap图像操作8:纹理
- BGRABitmap图像操作8:彩色纹理,阈值
- BGRABitmap图像操作9d:渲染前面的水纹
- BGRABitmap图像操作8:木质纹理
- BGRABitmap图像操作10:线型映射,让纹理图贴到多边形的边上
- Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩形、多边形、曲线、圆角矩形) --图像图形
- BGRABitmap图像操作8:大理石纹理
- BGRABitmap图像操作8:彩色纹理
- BGRABitmap图像操作5:擦除部分图像
- BGRABitmap图像操作7:封闭的样条曲线(spline)
- BGRABitmap图像操作4:直接操作像素
- BGRABitmap图像操作4:直接操作像素,使用HSLA colorspace
- BGRABitmap图像操作6:使用不同的线型与形状
- BGRABitmap图像操作5:画出月亮、太阳、灯光