Delphi 7下IGDIPlus库的使用
2024-08-31 21:45:16
IGDI+是一个免费开源封装微软GDI+功能的Delphi库,该库使得可以用Delphi语言代码快速简短的实现复杂GDI+应用程序。
官方网站:http://www.mitov.com/html/igdi_.html
SourceForge:https://sourceforge.net/projects/igdiplus/
安装方法:
1.首先下载目前最新版的IGDI+,解压到任意目录下,这里我解压到D盘;
2.打开Delphi 7→Tools→Environment Options→Library→Library path,然后点击右边的“...”,添加IGDI+的目录路径,确定完成,如下图所示:
如要在程序中使用IGDI+的话
1.首先在单元头uses内包含IGDIPlus,如:uses IGDIPlus;
2.在窗体的OnPaint事件中,添加如下测试代码:
procedure TForm1.FormPaint(Sender: TObject);
var
AGraphics: IGPGraphics;
APen: IGPPen;
AFont: IGPFont;
ABrush: IGPSolidBrush;
rc: TPoint;
begin
AGraphics := TGPGraphics.Create(Canvas);
AGraphics.SmoothingMode := SmoothingModeAntiAlias;//指定平滑(抗锯齿)
AGraphics.TextRenderingHint := TextRenderingHintAntiAlias;//指定使用过程中呈现的文本采用反走样
APen := TGPPen.Create($FF000000,3);
AGraphics.DrawLine(APen,5,5,100,100);
APen.Color := $FF0000FF;
APen.Width := 2;
AGraphics.DrawEllipse(APen,120,5,100,100);
Canvas.Font.Name := '微软雅黑';
Canvas.Font.Size := 13;
AFont := TGPFont.Create(Canvas.Handle);
ABrush := TGPSolidBrush.Create($FFFF0000);
rc.X := 10;
rc.Y := 150;
AGraphics.DrawString('无幻博客'+#13#10+'http://blog.csdn.net/akof1314',AFont,rc,ABrush);
end;
var
AGraphics: IGPGraphics;
APen: IGPPen;
AFont: IGPFont;
ABrush: IGPSolidBrush;
rc: TPoint;
begin
AGraphics := TGPGraphics.Create(Canvas);
AGraphics.SmoothingMode := SmoothingModeAntiAlias;//指定平滑(抗锯齿)
AGraphics.TextRenderingHint := TextRenderingHintAntiAlias;//指定使用过程中呈现的文本采用反走样
APen := TGPPen.Create($FF000000,3);
AGraphics.DrawLine(APen,5,5,100,100);
APen.Color := $FF0000FF;
APen.Width := 2;
AGraphics.DrawEllipse(APen,120,5,100,100);
Canvas.Font.Name := '微软雅黑';
Canvas.Font.Size := 13;
AFont := TGPFont.Create(Canvas.Handle);
ABrush := TGPSolidBrush.Create($FFFF0000);
rc.X := 10;
rc.Y := 150;
AGraphics.DrawString('无幻博客'+#13#10+'http://blog.csdn.net/akof1314',AFont,rc,ABrush);
end;
3.运行结果如下图所示:
IGDI+库下载:
地址一:http://www.mitov.com/IGDIPlus.zip
地址二:http://download.csdn.net/source/3039922
http://blog.csdn.net/akof1314/article/details/6205578
最新文章
- ANGULAR JS WATCH监听使用
- HTML <;meta>; 标签 遇到<;meta http-equiv=";refresh"; content=";0; url=";>;详解
- android webview开启html5支持
- hdu 2999 Stone Game, Why are you always there? 博弈论
- java 代码格式(转)
- Entity Framework with MySQL 学习笔记一(关系整理版)
- File类的使用
- 转:携程App的网络性能优化实践
- Java__jar包的简单操作
- TDD单元测试驱动
- c++ const char *[] or char [][]
- RDO Stack Exception: UnboundLocalError: local variable &#39;logFile&#39; referenced before assignment
- 两个队列实现栈&;两个栈实现队列(JAVA)
- python学习第天14天。
- JAVAWEB 一一框架整合(SSI : Spring+SpringMVC+ ibtis)
- 【062新题】OCP 12c 062出现大量新题-15
- spring测试junit事务管理及spring面向接口注入和实现类单独注入(无实现接口),实现类实现接口而实现类单独注入否则会报错。
- LeetCode Python 位操作 1
- Python学习---重点模块之re
- POJ1149:PIGS——题解