`
黄继华
  • 浏览: 43028 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

渐变颜色LinearGradientBrush

 
阅读更多

LinearGradientBrush是用来渐变效果的,使用的初始化参数是矩形区域,开始颜色,结束颜色,颜色变化方向,它能够形成比较统一的渐变效果,对比PathGradientBrush的渐变,它的特点是它与周围的颜色渐变频率是一样的,设置LinearGradientBrush的区域大小时,可以想象一个大的有渐变色的长方形,压在多边形上面,并根据多边形的边界裁剪。

效果图

源码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;

namespace Graphic
{
public partial class Demo_UseLinearGradientBrush : Form
{
public Demo_UseLinearGradientBrush()
{
InitializeComponent();


}

private void b_start_color_Click(object sender, EventArgs e)
{
ColorDialog clr = new ColorDialog();

clr.ShowDialog();

this.p_start_color.BackColor = clr.Color;

}

private void b_end_color_Click(object sender, EventArgs e)
{
ColorDialog clr = new ColorDialog();

clr.ShowDialog();

this.p_end_color.BackColor = clr.Color;


}


private void p_drawpic_Paint(object sender, PaintEventArgs e)
{
drawpic(this.p_start_color.BackColor, this.p_end_color.BackColor);

}


//绘图方法
private void drawpic(Color start, Color end)
{

LinearGradientBrush br =
new LinearGradientBrush(this.ClientRectangle, start, end, LinearGradientMode.ForwardDiagonal);

Graphics g = this.p_drawpic.CreateGraphics();//为控件创建Graphics
g.Clear(this.BackColor);
g.FillRectangle(br,this.ClientRectangle);

Font font = new Font("隶书", 50, FontStyle.Bold);
g.DrawString("测试", font, br, new PointF(100, 50));


g.Dispose();

}


}
}

分享到:
评论

相关推荐

    C#中使用LinearGradientBrush画渐变色

    绘制渐变色标在绘图中,特别是地质方面的绘图,经常用到。试了几次终于搞出,当然少不了网上的参考。用LinearGradientBrush实现的。希望对有需要的同仁有帮助 :)

    梯度渐变,C#源代码LinearGradientBrush linGrBrush = new LinearGradientBrush(

    梯度渐变,C#源代码LinearGradientBrush linGrBrush = new LinearGradientBrush( new Point(0, 10), new Point(200, 10), Color.Red, Color.Blue); e.Graphics.FillRectangle(linGrBrush, 0, 0, ...

    C#线性渐变画刷LinearGradientBrush用法实例

    主要介绍了C#线性渐变画刷LinearGradientBrush用法,实例分析了线性渐变画刷LinearGradientBrush的相关使用技巧,需要的朋友可以参考下

    创建线性梯度,C#源代码LinearGradientBrush linGrBrush = new LinearGradientBrush(

    创建线性梯度,C#源代码LinearGradientBrush linGrBrush = new LinearGradientBrush( new Point(0, 0), new Point(200, 100), Color.FromArgb(255, 0, 0, 255), // opaque blue Color.FromArgb(255, 0, 255, 0));...

    第03个小程序:渐变画笔

    brush有个SpreadMethod属性,其默认值是GradientSpreadMethod.Pad,表示超出设定区域部分延续之前的颜色;另一个值GradientSpreadMethod.Reflect,表示按相向方向重复渐变;还有一个值GradientSpreadMethod.Repeat,...

    C#绘制线性渐变

    LinearGradientBrush 使用线性渐变绘制区域。线性渐变沿直线定义渐变。该直线的终点由线性渐变的 StartPoint 和 EndPoint 属性定义。LinearGradientBrush 画笔沿此直线绘制其 GradientStops。

    C#绘制渐变色背景

    C#源代码:绘制窗口或控件的渐变背景色。 知识点: 1、直接采用System.Drawing.Drawing2D.LinearGradientBrush笔刷填充渐变背景。 2、调整窗口大小时刷新背景填充。

    C#源码:如何绘制渐变色背景

    C#源代码:绘制窗口或控件的渐变背景色。 1、直接采用System.Drawing.Drawing2D.LinearGradientBrush笔刷填充渐变背景。 2、调整窗口大小时刷新背景填充。

    C#画刷绘制渐变矩形

    C#简单实现画刷绘制渐变矩形。 Brush brush1 = new LinearGradientBrush(new Point(10, 10), new Point(50, 50), this.button4.BackColor, this.button3.BackColor); Graphics g; g = this.CreateGraphics(); g....

    设置窗体渐变色背景图像,C#源代码 Rectangle MyRect = this.ClientRectangle;

    设置窗体渐变色背景图像,C#源代码 Rectangle MyRect = this.ClientRectangle; Bitmap MyBmp = new Bitmap(MyRect.Width, MyRect.Height); Graphics g = Graphics.FromImage(MyBmp); LinearGradientBrush MyBrush ...

    如何使用GDI+绘制简单的图像

    Pen的属性主要有: Color(颜色),DashCap(短划线终点形状),DashStyle...• LinearGradientBrush:使用沿渐变混合的两种颜色进行绘制 • PathGradientBrush :基于编程者定义的唯一路径,使用复杂的混合色渐变进行绘制

    C#美化单选按钮和复选按钮

    C#美化单选按钮和复选按钮,用绘制的方法来实现美化,首先改变了单选框和复选框的颜色,其实是改变了...//设置渐变的初始值  LinearGradientBrush Periphery_br;//外圆的颜色  LinearGradientBrush Central_br;//移入

    WPF实现渐变淡入淡出的登陆窗口效果

    ② OpacityMask属性接受任何画刷,可利用LinearGradientBrush线性渐变画刷,通过对渐变画刷中各颜色点加以动画处理即可。 2、渐变淡入实现 渐变淡入效果,可通过事件触发器触发Loaded事件实现,所以可以仅用前端XAML...

    利用div+css3实现一个背景渐变的button按钮的示例代码

    随着目前前端页面的需求不断提升,有些场景需要渐变背景的元素。本文利用div和css3新属性,实现了一个背景渐变的按钮,具体如下: 1.background: linear-gradient 背景为渐变色属性 2.利用css3中动画特性animation,...

    用paint方法渐变的窗口背景,using System.Drawing.Drawing2D的应用,C#源代码Graphics g=e.Graphics;

    用paint方法渐变的窗口背景,using System.Drawing.Drawing2D的应用,C#源代码Graphics g=e.Graphics; Color FColor=Color.Blue; Color TColor=Color.Yellow; Brush b =new LinearGradientBrush(this....

    wpf DataGrid定行内控件

    <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1"> </LinearGradientBrush> <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1"> </LinearGradientBrush> ...

    面向对象的 VB.net 版《扫雷》游戏源代码(.net 2.0)

    界面方面,砖块使用 LinearGradientBrush 线性渐变填充,比 Windows 自带的《扫雷》要好看得多。 功能与操作方面,完全与 Windows 自带的《扫雷》相同,支持左右键同时点击。另外还支持窗口尺寸的任意改变,比 ...

    画任意大小形状的椭圆

    画任意大小形状的椭圆

    4位数验证控件,代码可以修改

    new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, img.Width, img.Height), Color.DarkOrchid, Color.Blue, 1.5f, true); gfc.DrawString(strValue, font, brush, 3, 2); drawPoint(img); ...

Global site tag (gtag.js) - Google Analytics