C#GDI+基础(三)画刷详解

时间:2023-02-18 08:53:51

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. 关于teleport_pro使用过程中的一点疑惑

    在我新建工程的时候,有两个选项,一个是"new project wizard"另一个是"new project",然后就纠结了,我应该使用那个呢? 使用第一个的 ...

  2. c# 产生随机字符串,包括大小写字母和数字

    #region MyRegion //產生密碼 protected static string GetPwd() { return CreateRandomNum123(2) + CreateRand ...

  3. T-SQL语句查看作业等信息

    因服务器需要迁移,需要将现有JOB迁移至新服务器,待服务器调整完毕,则重新迁移到原服务器,所以在做迁移之前希望将现有JOB进行备份,不至于乱了执行时间.1.查看所有作业列表USE master SEL ...

  4. jquery网站左侧弹出导航菜单

    下载

  5. 新手上路Tomcat 7.x和JDK的配置

    前言:这段时间又复习了JAVA以前做东西总是在IDE里面好多基础的东西都不知道,这次买了本书让自己重新认识下JAVA! 说明:以前装JDK时,我是和Mars老师学的那种开发JAVA应用程序进行配置的环 ...

  6. https tomcat 证书搭建

    首先生成证书说明 keytool -genkey -alias castest -keyalg RSA -keystore c:/keys/caskey 先让输入密码,密码必须记住,下面会用到 其中“ ...

  7. 六款常用的linux C/C++ IDE

    摘要: 一.AnjutaAnjuta是一个多语言的IDE,它最大的特色是灵活,同时打开多个文件,内嵌代码级的调试器(调用gdb),应用程序向导(Application wizards)可以方便的帮助你 ...

  8. day10 局部变量 全局变量 作用域前奏

    规则命名以及基本介绍 name="LHF" # 顶头写的全局都可以调用的就是全局变量,命名规则要求大写全局变量 def chang_name(): # global name # ...

  9. Linux基础※※※※连接XShell到Ubuntu 14.04 LTS

    参考链接: 博客链接1:http://blog.csdn.net/lichangzai/article/details/39379153 百度百科:http://baike.baidu.com/lin ...

  10. HttpUrlConnection使用Get和Post访问服务器的工具类(一)

    首先我们有一个返回响应的接口HttpCallBackListener public interface HttpCallbackListener { void onFinish(String resp ...