VB6 GDI+ 入门教程[5] 基础绘图小结

时间:2022-12-10 22:44:03
http://vistaswx.com/blog/article/category/tutorial/page/2
2009 年 6 月 18 日 4条评论
标签: GdiPlus,vb 分类: Tutorial,VB6 GDI+

终于……我们的基础绘图部分可以先告一段落了。什么叫基础绘图?画线、画圈圈、画方块、画字……等等。我们来总结一下。

我们第一点就是总结DrawXXXX和FillXXXX。

1.DrawXXXX:描边可以这么说 例如DrawRectangle  DrawPath。我们都需要一个Pen(边框)来描绘它。

2.FillXXXX:填充。例如FillRectangle等等。我们需要的是Brush。

我们第二点总结平滑(反锯齿)——什么时候用GdipSetTextRenderingHint,什么时候用GdipSetSmoothingMode。

这里我很简单的借用前面的结论告诉你:

1.凡是你要用DrawXXXX或者FillXXXX画出来的,你要让他平滑,你就要用GdipSetSmoothingMode

2.其它的呢看它的类型,比如文字那么就是GdipSetTextRenderingHint……(言下之意就是还有其它的东西哦)

我们第三点总结Brush和Pen。

1.Pen是一只笔(- -||)。用于DrawXXXX的。描边。你可以通过一个纯色创建Pen(GdipCreatePen1),也可以通过一个Brush创建Pen:GdipCreatePen2(比如说纹理Pen,渐变Pen等等,不过貌似GDI+有点BUG)

2.Brush呢是刷子。我们有贴图刷子,预置纹理刷子,纯色刷子,渐变刷子,路径刷子等等。

(1)贴图刷:我们会在下一章深入探讨

(2)纯色刷:我们已经用过了,很简单——给一个颜色,传回一个Brush。

(3)渐变刷:我们也用过了,跟纯刷子差不多,给两个颜色就可以了,还有一个渐变方向~~,当然也是传回一个Brush

(4)路径刷:这个刷子很高级 可以实现前面的(2)和(3)的刷子以及他们不能实现的内容——我们可以按照路径让他去渐变……还有很多其它功能。这个嘛 以后有空我也会说的 呵呵

我们第四点总结路径。

路径我们虽然只借用到了文字路径,但是如果你翻一下我提供的API大杂烩会发现 关于Path有很多有趣的东西。例如有添加直线路径,添加圆弧路径,添加曲线路径,路径合并,路径旋转等等……很强大吧。

路径,我们需要给他一个初始化好的Path,然后按照各种需要给它参数;最后我们要把它画出来。

以后其它的路径东西我们有空会探讨。

最后再说下之前提过的一点:如果你发现复制了我的代码 结果东西没出来,那么请确保你的窗体的AutoRedraw=True。切记切记 不要忘记:) 

VB6 GDI+ 入门教程[5] 基础绘图小结的更多相关文章

  1. VB6 GDI+ 入门教程[2] GDI+初始化

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[2] GDI+初始化 2009 年 6 月 18 日 7 ...

  2. VB6 GDI+ 入门教程[6] 图片

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[6] 图片 2009 年 6 月 19 日 15条评论 ...

  3. VB6 GDI+ 入门教程[1] GDI+介绍

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[1] GDI+介绍 2009 年 6 月 18 日 17 ...

  4. VB6 GDI+ 入门教程[4] 文字绘制

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[4] 文字绘制 2009 年 6 月 18 日 7条评论 ...

  5. VB6 GDI+ 入门教程[3] 笔、刷子、矩形、椭圆绘制

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[3] 笔.刷子.矩形.椭圆绘制 2009 年 6 月 1 ...

  6. VB6 GDI+ 入门教程[7] Graphics 其他内容

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[7] Graphics 其他内容 2009 年 9 月 ...

  7. VB6 GDI+ 入门教程[8] Bitmap魔法(1):创建

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[8] Bitmap魔法(1):创建 2009 年 9 月 ...

  8. VB6 GDI+ 入门教程[9] Bitmap魔法(2):数据读写

    本文转自 http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[9] Bitmap魔法(2):数据读写 200 ...

  9. React实例入门教程(1)基础API,JSX语法--hello world

      前  言 毫无疑问,react是目前最最热门的框架(没有之一),了解并学习使用React,可以说是现在每个前端工程师都需要的. 在前端领域,一个框架为何会如此之火爆,无外乎两个原因:性能优秀,开发 ...

随机推荐

  1. Terminology: Sandbox

    In Comupter Secuity: from https://en.wikipedia.org/wiki/Sandbox_(computer_security) In computer secu ...

  2. 【java】之3种方式实现Object和Map之间的转换

    利用commons.BeanUtils实现Obj和Map之间转换,这种是最简单,也是最经常用的 public static Object mapToObject(Map<String, Obje ...

  3. jquery选择器 之 获取父级元素、同级元素、子元素

    jquery选择器 之 获取父级元素.同级元素.子元素 一.获取父级元素 1. parent([expr]): 获取指定元素的所有父级元素 <div id="par_div" ...

  4. ACM 荷兰国旗问题

    荷兰国旗问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:1   描述 荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红.白.蓝.现有若干由红.白.蓝三种颜色的条块序列,要 ...

  5. SQL Developer不能删除和复制及部分键失效问题

    打开SQL Developer工作表进行SQL代码的编写的时候,发现我不能使用回车换行键,然后陆续发现好多按键在SQL Developer中都不能正常使用,如:上下左右键只有上和右可以使用,不能使用D ...

  6. Python学习教程&lpar;learning Python&rpar;--3 Python分支结构和布尔逻辑

    本章节主要探讨研究Python下的分支选择结构程序设计问题.   if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ), 否则 我们处理另外一块语句(称为 else-块 ) ...

  7. 类 Array Arraylist List Hashtable Dictionary

    总结C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue  我们用的比较多的非泛型集合类主要有 ArrayList类 和 HashT ...

  8. MySQLBackup 使用说明

    001.mysqlbackup介绍: mysqlbackup是一个热备份工具.也就是说它不像mysqldump那样给表上一个全局锁,由于mysqldump上了这个锁,所以就造成客户端只能对 数据库进行 ...

  9. Python项目实战:福布斯系列之数据采集

    1 数据采集概述 开始一个数据分析项目,首先需要做的就是get到原始数据,获得原始数据的方法有多种途径.比如: 获取数据集(dataset)文件 使用爬虫采集数据 直接获得excel.csv及其他数据 ...

  10. ResNet

     上图为单个模型 VGGNet, GoogleNet 都说明了深度对于神经网络的重要性. 文中在开始提出: 堆叠越多的层, 网络真的能学习的越好吗? 然后通过神经网络到达足够深度后出现的退化(deg ...