GDI+ 学习记录(10): 线性渐变画刷 - LinearGradientBrush
为什么80%的码农都做不了架构师?>>>
//线性渐变画刷
varg: TGPGraphics;lb: TGPLinearGradientBrush;rect: TGPRect;
beging := TGPGraphics.Create(Canvas.Handle);rect := MakeRect(11,11,222,111);lb := TGPLinearGradientBrush.Create(rect, aclBlue, aclGreen, LinearGradientModeHorizontal);g.FillEllipse(lb, rect);lb.Free;g.Free;
end;//定义渐变的位置与颜色
varg : TGPGraphics;p: TGPPen;lb: TGPLinearGradientBrush;p1,p2: TGPPoint;c1,c2: TGPColor;
beging := TGPGraphics.Create(Canvas.Handle);p1 := MakePoint(0, 0);p2 := MakePoint(200, 100);c1 := MakeColor(255, 0, 0, 255);c2 := MakeColor(255, 0, 255, 0);lb := TGPLinearGradientBrush.Create(p1, p2, c1, c2);p:= TGPPen.Create(lb, 10);g.DrawLine(p, 0, 0, 600, 300);g.FillEllipse(lb, 10, 100, 200, 100);lb.Free;p.Free;g.Free;
end;//自定义渐变过渡效果
varg : TGPGraphics;lb: TGPLinearGradientBrush;p1,p2: TGPPoint;c1,c2: TGPColor;
constFactors: array[0..2] of Single = (0.0, 0.5, 1.0); {颜色比例}Positions: array[0..2] of Single = (0.0, 0.2, 1.0); {位置比例, 两个数组元素须相同}
beging := TGPGraphics.Create(Canvas.Handle);p1 := MakePoint(0, 10);p2 := MakePoint(200, 10);c1 := aclBlack;c2 := aclRed;lb := TGPLinearGradientBrush.Create(p1, p2, c1, c2);lb.SetBlend(@Factors, @Positions, 3); {设置渐变因子}g.FillEllipse(lb, 0, 30, 200, 100);g.FillRectangle(lb, 0, 155, 500, 30);lb.Free;g.Free;
end;
线性渐变的方向参数:
Delphi | 微软 | 说明 |
---|---|---|
LinearGradientModeBackwardDiagonal | BackwardDiagonal | 指定从右上到左下的渐变。 |
LinearGradientModeForwardDiagonal | ForwardDiagonal | 指定从左上到右下的渐变。 |
LinearGradientModeHorizontal | Horizontal | 指定从左到右的渐变。 |
LinearGradientModeVertical | Vertical | 指定从上到下的渐变。 |
转载于:https://my.oschina.net/hermer/blog/320287
GDI+ 学习记录(10): 线性渐变画刷 - LinearGradientBrush相关推荐
- GDI+ 学习记录(11): 路径渐变画刷 - PathGradientBrush
为什么80%的码农都做不了架构师?>>> //路径渐变画刷 varg: TGPGraphics;path: TGPGraphicsPath;pb: TGPPathGradien ...
- GDI+学习记录(10)- 影线画刷HatchBrush
影线画刷(HatchBrush)的基本使用: private void Form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Gr ...
- WPF(C#) LinearGradientBrush线性渐变画刷
LinearGradientBrush线性渐变画刷 LinearGradientBrush其实很简单,我们只需要关注5个属性,使用这5个属性你就可以完成这个画刷几乎所有的变化. 一.属性介绍 1.St ...
- GDI+学习之线性渐变画刷
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 作者:朱 ...
- GdiplusFlat(4)单色画刷 和 线性渐变画刷
本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article ...
- WPF线性渐变画刷应用之——炫彩线条
原文:WPF线性渐变画刷应用之--炫彩线条 效果图: Xaml代码: <Rectangle Width="800" Height="10"> < ...
- 转 Silverlight开发历程—(画刷与着色之线性渐变画刷)
转自:http://blog.csdn.net/work201003/article/details/6960427 线性渐变画刷(LinearGradientBrush)用来填充一个复合渐变色到一个 ...
- WPF图形之纯色画刷和渐变画刷的使用
背景介绍 在WPF中,画刷的使用无处不在,可以说画刷是整个WPF体系里不可或缺的一部分,在画刷中,从渲染效果的特征来看,可以分为纯色画刷.线性渐变画刷.径向渐变画刷.每一种画刷都有其适用的场景,下 ...
- GDI+学习笔记(六)渐变画刷
画刷,顾名思义,就是像画刷一样,向设备上绘制,还记得小时候常唱的首歌,"我是一个粉刷匠.." 好吧,跑题了. 本系列博客希望尽可能简单的描述每项功能,而不希望把每个参数都介绍的详详 ...
最新文章
- TensorRT推理报错:pycuda._driver.LogicError: cuMemcpyHtoDAsync failed: invalid argument
- python用辗转相除法求最大公约数
- linux 多线程 多进程同步
- [HDOJ5542]The Battle of Chibi(DP,树状数组)
- 【转】WPF从我炫系列3---内容控件的用法
- 如何在mysql中添加复选框_如何使用输入和复选框更新mysql
- [svc]mousedos网络批量部署xp
- 哈哈,代码比较工具,好像就这5款比较顺手~~~
- 分布式文件存储FastDFS之配置Nginx模块
- 为程序界面添加滑动条
- 超低延时超低卡顿率视频传输的秘密
- 2022年R2移动式压力容器充装国家题库及答案
- 初唐名臣---凌烟阁上二十四功臣
- 蓝牙扫描startLeScan测试
- 分析1996~2015年人口数据各个特征的分布与分散情况
- OBIEE + OAS集群配置 Part 1
- 操作系统春招面试复习之:存储管理
- matplotlib中关于极坐标轴的控制
- 数字图像处理Matlab
- 废纸篓清空|mac删除的文件如何恢复
热门文章
- python的类程序的结构_Python程序员学习路径之数据结构篇
- 计算机主机内部防尘装置,一种计算机主机用防尘装置的制作方法
- mysql自动生成日期序列号_mysql – 在一天内为实体生成唯一的序列号
- mac mysql-python 失败_MAC OS安装MySQL-python总是失败,请帮忙看看什么原因?
- linux执行指定程序的命令,linux 下使用指定的用户来执行命令
- linux route 刷新_linux基础命令介绍十五:推陈出新
- oracle 容器切换,oracle12c 多租户管理四(容器连接切换)
- java第二阶段_Java第二阶段总结
- (1)hibenrate入门例子
- 学习《apache源代码全景分析》之常用过滤器摘录