文档章节

再学 GDI+[60]: TGPGraphics.SetSmoothingMode - 绘图质量

涂孟超
 涂孟超
发布于 2014/09/26 15:34
字数 276
阅读 11
收藏 0
本例效果图:



代码文件:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    procedure FormCreate(Sender: TObject);
    procedure FormPaint(Sender: TObject);
    procedure ListBox1Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses GDIPOBJ, GDIPAPI;

procedure TForm1.FormCreate(Sender: TObject);
begin
  ListBox1.Align := alRight;
  with ListBox1.Items do
  begin
    Add('SmoothingModeInvalid    ');       
    Add('SmoothingModeDefault    ');
    Add('SmoothingModeHighSpeed  ');     
    Add('SmoothingModeHighQuality');   
    Add('SmoothingModeNone       ');
    Add('SmoothingModeAntiAlias  ');  
  end;
end;

procedure TForm1.FormPaint(Sender: TObject);
var
  g: TGPGraphics;
  p: TGPPen;
begin
  g := TGPGraphics.Create(Canvas.Handle);
  p := TGPPen.Create(aclRed, 2);

  g.SetSmoothingMode(ListBox1.ItemIndex - 1);
  g.DrawEllipse(p, 10, 10, ClientWidth - ListBox1.Width - 20, ClientHeight - 20);
  g.DrawLine(p, 0, 0, ClientWidth - ListBox1.Width, ClientHeight);
  g.DrawLine(p, ClientWidth - ListBox1.Width, 0, 0, ClientHeight);

  p.Free;
  g.Free;
end;

procedure TForm1.ListBox1Click(Sender: TObject);
begin
  Repaint;
end;

end.

 
 
 
 
 

 

 

  
窗体文件:
object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 108
  ClientWidth = 286
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  Position = poDesktopCenter
  OnCreate = FormCreate
  OnPaint = FormPaint
  PixelsPerInch = 96
  TextHeight = 13
  object ListBox1: TListBox
    Left = 133
    Top = 8
    Width = 145
    Height = 73
    ItemHeight = 13
    TabOrder = 0
    OnClick = ListBox1Click
  end
end

 
 
 
 
 

 

 

  
绘图质量参数:
SmoothingModeInvalid     = -1; {指定一个无效模式}
SmoothingModeDefault     = 0;  {指定不消除锯齿}
SmoothingModeHighSpeed   = 1;  {指定高速度、低质量呈现}
SmoothingModeHighQuality = 2;  {指定高质量、低速度呈现}
SmoothingModeNone        = 3;  {指定不消除锯齿}
SmoothingModeAntiAlias   = 4;  {指定消除锯齿的呈现}

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2008/06/23/1228119.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
C# WinForm开发系列 - GDI+

UI(User Interface)编程在整个项目开发过程中是个颇为重要的环节,任何好的解决方案若没有良好的用户界面呈现给最终用户,那么就算包含了最先进的技术也不能算是好程序。UI编程体现在两个方...

长征2号
2017/11/14
0
0
实战开发:新手小白如何用C++制作经典网游DNF

十年前,那时候的网吧还不叫网咖,那时候没有王者荣耀也没有英雄联盟,那时候梦幻西游刚推出珍宝阁系统,那时候巫妖王的灵魂还封闭在冰封王座。 寻仙、穿越火线、征途、天龙八部……同时在线...

stone15165
05/05
0
0
【Visual C++】游戏开发笔记之四——游戏画面绘图(一)基本图形绘制

本系列文章由zhmxy555编写,转载请注明出处。 http://blog.csdn.net/zhmxy555/article/details/7333886 作者:毛星云 邮箱: happylifemxy@qq.com 欢迎邮件交流编程心得 从本篇文章开始笔锋一...

长平狐
2012/11/12
135
0
Winform 界面开发

小弟在.net Winform 这一块儿工地灰常一般,最近从事相关开发,才发现原来界面制作也是一门很深的学问呀,IDE 自带的控件什么的 几乎都用不了 完全达不到视觉要求 ,一个简单的按钮 在XP经典...

青蛙天涯
2011/10/30
5.9K
10
OpenGL基础技术讲座--体系结构

OpenGL是一套图形标准,它严格按照计算机图形学原理设计而成,符合光学和视觉原理,非常适合可视化仿真系统。 首先,在OpenGL中允许视景对象用图形方式表达,如由物体表面顶点坐标集合构成的...

teacheryang
2010/10/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring源码学习笔记-1-Resource

打算补下基础,学习下Spring源码,参考书籍是《Spring源码深度解析》,使用版本是Spring 3.2.x,本来想试图用脑图记录的,发现代码部分不好贴,还是作罢,这里只大略记录下想法,不写太细了 ...

zypy333
今天
10
0
RestClientUtil和ConfigRestClientUtil区别说明

RestClientUtil directly executes the DSL defined in the code. ConfigRestClientUtil gets the DSL defined in the configuration file by the DSL name and executes it. RestClientUtil......

bboss
今天
17
0

中国龙-扬科
昨天
2
0
Linux系统设置全局的默认网络代理

更改全局配置文件/etc/profile all_proxy="all_proxy=socks://rahowviahva.ml:80/"ftp_proxy="ftp_proxy=http://rahowviahva.ml:80/"http_proxy="http_proxy=http://rahowviahva.ml:80/"......

临江仙卜算子
昨天
10
0
java框架学习日志-6(bean作用域和自动装配)

本章补充bean的作用域和自动装配 bean作用域 之前提到可以用scope来设置单例模式 <bean id="type" class="cn.dota2.tpye.Type" scope="singleton"></bean> 除此之外还有几种用法 singleton:......

白话
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部