SolidBrush:一般的画刷,通常只用一种颜色去填充GDI+图形

创建一般画刷:

 SolidBrush sbBrush1 = new SolidBrush(Color.Green);

HatchBrush:阴影画刷,有两种颜色:前景色和背景色
创建阴影画刷:

HatchBrush(HatchStyle,Color);//前景

HatchBrush(HatchStyle,Color,Color);//前景、背景

HatchStyle对应阴影方案列表。

名称

说明

BackwardDiagonal

从右上到左下的对角线的线条图案。

Cross

指定交叉的水平线和垂直线。

DarkDownwardDiagonal

从顶点到底点向右倾斜的对角线,两边夹角比ForwardDiagonal小50%,宽度是其两倍。此阴影图案不是锯齿消除的。

DarkHorizontal

指定水平线的两边夹角比Horizontal小50%并且宽度是Horizontal的两倍。

DarkUpwardDiagonal

指定从顶点到底点向左倾斜的对角线,其两边夹角比BackwardDiagonal小50%,宽度是其两倍,但这些直线不是锯齿消除的。

DarkVertical

指定垂直线的两边夹角比Vertical小50%并且宽度是其两倍。

DashedDownwardDiagonal

指定虚线对角线,这些对角线从顶点到底点向右倾斜。

DashedHorizontal

指定虚线水平线。

DashedUpwardDiagonal

指定虚线对角线,这些对角线从顶点到底点向左倾斜。

DashedVertical

指定虚线垂直线。

DiagonalBrick

指定具有分层砖块外观的阴影,它从顶点到底点向左倾斜。

DiagonalCross

交叉对角线的图案。

Divot

指定具有草皮层外观的阴影。

ForwardDiagonal

从左上到右下的对角线的线条图案。

Horizontal

水平线的图案。

HorizontalBrick

指定具有水平分层砖块外观的阴影。

LargeGrid

指定阴影样式Cross。

LightHorizontal

指定水平线,其两边夹角比Horizontal小50%。

LightVertical

指定垂直线的两边夹角比Vertical小50%。

Max

指定阴影样式SolidDiamond。

Min

指定阴影样式Horizontal。

NarrowHorizontal

指定水平线的两边夹角比阴影样式Horizontal小 75%(或者比LightHorizontal小25%)。

NarrowVertical

指定垂直线的两边夹角比阴影样式Vertical小 75%(或者比LightVertica小25%)。

OutlinedDiamond

指定互相交叉的正向对角线和反向对角线,但这些对角线不是锯齿消除的。

Percent05

指定5%阴影。前景色与背景色的比例为5:100。

Percent90

指定90%阴影。前景色与背景色的比例为90:100。

Plaid

指定具有格子花呢材料外观的阴影。

Shingle

指定带有对角分层鹅卵石外观的阴影,它从顶点到底点向右倾斜。

SmallCheckerBoard

指定带有棋盘外观的阴影。

SmallConfetti

指定带有五彩纸屑外观的阴影。

SolidDiamond

指定具有对角放置的棋盘外观的阴影。

Sphere

指定具有球体彼此相邻放置的外观的阴影。

Trellis

指定具有格架外观的阴影。

Vertical

垂直线的图案。

Wave

指定由代字号"~"构成的水平线。

Weave

指定具有织物外观的阴影。

TextureBrush:纹理画刷。拥有图案,使用起来填充封闭图形。

创建纹理画刷:

public TextureBrush(Image, WrapMode, Rectangle);

public TextureBrush(Image, Rectangle, ImageAttributes);

wrapMode: 纹理或渐变平铺方式

名称

说明

Tile

平铺渐变或纹理

TileFlipX

水平反转纹理或渐变,然后平铺该纹理或渐变

TileFlipY

垂直反转纹理或渐变,然后平铺该纹理或渐变

TileFlipXY

水平和垂直反转纹理或渐变,然后平铺该纹理或渐变

LinearGradientBrush:线渐变画刷。

创建线渐变画刷:

LinearGradientBrush(Rectangle, Color, Color, LinearGradientMode);

LinearGradientBrush(Rectangle, Color, Color, float);

LinearGradientBrush(RectangleF, Color, Color, float, bool);

LinearGradientMode:枚举元素,它指定渐变方向。

名称

说明

Horizontal

指定从左到右的渐变

Vertical

指定从上到下的渐变

ForwardDiagonal

指定从左上到右下的渐变

BackwardDiagonal

指定从右上到左下的渐变

Float:渐变方向线的角度(从 X 轴以顺时针角度计算)

Bool:设置为 true,指定角度受与此 System.Drawing.Drawing2D.LinearGradientBrush 关联的变换所影响;否则为false。

Rectangle:位置,大小,可以用相关参数替换

PathGradientBrush:路径渐变画刷

创建路径渐变画刷:

public PathGradientBrush(GraphicsPath );

public PathGradientBrush(Point[] , WrapMode);

属性成员:

名称

说明

CenterColor

中心处的颜色

CenterPoint

中心点

FocusScales

渐变过渡的焦点

WrapMode

PathGradientBrush的环绕模式

C#GDI+基础(三)画刷详解的更多相关文章

  1. mysql基础篇 - SELECT 语句详解

    基础篇 - SELECT 语句详解         SELECT语句详解 一.实验简介 SQL 中最常用的 SELECT 语句,用来在表中选取数据,本节实验中将通过一系列的动手操作详细学习 SELEC ...

  2. Java基础-面向接口编程-JDBC详解

    Java基础-面向接口编程-JDBC详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.JDBC概念和数据库驱动程序 JDBC(Java Data Base Connectiv ...

  3. ELK&ElasticSearch5.1基础概念及配置文件详解【转】

    1. 配置文件 elasticsearch/elasticsearch.yml 主配置文件 elasticsearch/jvm.options jvm参数配置文件 elasticsearch/log4 ...

  4. java基础(3)--详解String

    java基础(3)--详解String 其实与八大基本数据类型一样,String也是我们日常中使用非常频繁的对象,但知其然更要知其所以然,现在就去阅读源码深入了解一下String类对象,并解决一些我由 ...

  5. 计算机网络基础之IP地址详解

    计算机网络基础之IP地址详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.IP地址概述 1>.什么是IP地址 我们为什么要使用逻辑地址(IP地址)来标识网络设备,而不采 ...

  6. Qt零基础教程(四) QWidget详解篇

    在博客园里面转载我自己写的关于Qt的基础教程,没次写一篇我会在这里更新一下目录: Qt零基础教程(四) QWidget详解(1):创建一个窗口 Qt零基础教程(四) QWidget详解(2):QWid ...

  7. Qt零基础教程(四)QWidget详解(3):QWidget的几何结构

    Qt零基础教程(四)  QWidget详解(3):QWidget的几何结构 这篇文章里面分析了QWidget中常用的几种几何结构 下图是Qt提供的分析QWidget几何结构的一幅图,在帮助的 Wind ...

  8. [转]hibernate三种状态详解

    本文来自 http://blog.sina.com.cn/u/2924525911 hibernate 三种状态详解 (2013-04-15 21:24:23) 转载▼   分类: hibernate ...

  9. [五]基础数据类型之Short详解

      Short 基本数据类型short  的包装类 Short 类型的对象包含一个 short 类型的字段      原文地址:[五]基础数据类型之Short详解   属性简介   值为  215-1 ...

随机推荐

  1. SSH 学习总结-01 SSH整合环境

    一 Struts2+Spring3+Hibernate4+Maven 整合环境 1 开发工具 1)JDK下载地址:http://www.oracle.com/technetwork/java/java ...

  2. java编程思想-java注解

    注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便的使用这些数据. 一.定义注解 注解的定义看起来很像接口的定义.事实上,与其他任何Java接口一样, ...

  3. IOS VFL屏幕自适应

    -(void)fun1{ //注意使用VFL,不用设置视图的frame UIView *view = [[UIView alloc] init]; view.backgroundColor = [UI ...

  4. lunix的查看Tomcat目录下日志的快速操作

    可以使用cd命令,cd命令的功能是切换到指定的目录: 命令格式:cd [目录名] 有几个符号作为目录名有特殊的含义: "/"代表根目录. ".."代表上一级目录 ...

  5. Win7系统开放C盘下文件夹Everyone权限

    安装软件时遇到这样的情况:我就是管理员权限啊,怎么会安装有问题呢? 后来知道,用户名即使分配了你是管理员权限,有些文件还是有限制的(特别是C盘) 昨天遇到一个问题,有个文件夹里的隐藏文件就是无法显示, ...

  6. c#.net WinForm 线程内 调用窗体控件

    richTextBox1.BeginInvoke(new EventHandler(delegate { richTextBox1.AppendText("正在提交服务器..\r\n&quo ...

  7. Java——布局管理器

    在Swing中使用的所有布局管理器都可以实现LayoutManager接口,在Swing中主要使用的5种布局管理器:FlowLayout.BorderLayout.GridLayout.CardLay ...

  8. ecshop后台【订单管理】

    1.订单列表页,在‘确认’,‘无效’,’取消‘....增加一个选项’导出exl表格‘ a.增加html代码,order_list.htm <input name="print" ...

  9. [Unity] 精灵动画制作中需要注意的一些问题

    1. 为精灵添加了动画控制器,UpdateMode设置为了Animate Physics,精灵就不受控制了,在游戏中不断的晃动,不受重力影响向下掉等奇葩问题出现了. 解决办法: 此类问题,除掉刚体设置 ...

  10. Lua之元表

    Lua之metatable 一.元表 Lua中的每个值都有一套预定义的操作集合,也可以通过metatable(元表)来定义一个值的行为,metatable包含了一组meatmethod(元方法). L ...