已知 GDI+ 可以支持的图像格式: BMP、JPEG、GIF、TIFF、PNG、ICO、WMF、EMF



TGPGraphics.DrawImage 函数有太多重载了, 一起列在这吧:


function DrawImage(image: TGPImage; const point: TGPPointF): TStatus; overload;function DrawImage(image: TGPImage; x, y: Single): TStatus; overload;function DrawImage(image: TGPImage; const rect: TGPRectF): TStatus; overload;function DrawImage(image: TGPImage; x, y, width, height: Single): TStatus; overload;function DrawImage(image: TGPImage; const point: TGPPoint): TStatus; overload;function DrawImage(image: TGPImage; x, y: Integer): TStatus; overload;function DrawImage(image: TGPImage; const rect: TGPRect): TStatus; overload;function DrawImage(image: TGPImage; x, y, width, height: Integer): TStatus; overload;function DrawImage(image: TGPImage; destPoints: PGPPointF; count: Integer): TStatus; overload;function DrawImage(image: TGPImage; destPoints: PGPPoint; count: Integer): TStatus; overload;function DrawImage(image: TGPImage;x, y, srcx, srcy, srcwidth, srcheight: Single;srcUnit: TUnit
): TStatus; overload;function DrawImage(image: TGPImage; const destRect: TGPRectF;srcx, srcy, srcwidth, srcheight: Single;srcUnit: TUnit;imageAttributes: TGPImageAttributes = nil;callback: DrawImageAbort = nil;callbackData: Pointer = nil
): TStatus; overload;function DrawImage(image: TGPImage;destPoints: PGPPointF;count: Integer;srcx, srcy, srcwidth, srcheight: Single;srcUnit: TUnit;imageAttributes: TGPImageAttributes = nil;callback: DrawImageAbort = nil;callbackData: Pointer = nil
): TStatus; overload;function DrawImage(image: TGPImage; x, y, srcx, srcy, srcwidth, srcheight: Integer;srcUnit: TUnit
): TStatus; overload;function DrawImage(image: TGPImage;const destRect: TGPRect;srcx, srcy, srcwidth, srcheight: Integer;srcUnit: TUnit;imageAttributes: TGPImageAttributes = nil;callback: DrawImageAbort = nil;callbackData: Pointer = nil
): TStatus; overload;function DrawImage(image: TGPImage;destPoints: PGPPoint;count, srcx, srcy, srcwidth, srcheight: Integer;srcUnit: TUnit;imageAttributes: TGPImageAttributes = nil;callback: DrawImageAbort = nil;callbackData: Pointer = nil
): TStatus; overload;

本例效果图:



代码文件:


unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs;typeTForm1 = class(TForm)procedure FormPaint(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}uses GDIPOBJ, GDIPAPI;procedure TForm1.FormPaint(Sender: TObject);
varg: TGPGraphics;img: TGPImage;
beging := TGPGraphics.Create(Self.Canvas.Handle);img := TGPImage.Create('C:\temp\test.jpg');g.DrawImage(img, 0, 0, img.GetWidth, img.GetHeight);img.Free;g.Free;
end;end.

窗体文件:


object Form1: TForm1Left = 0Top = 0Caption = 'Form1'ClientHeight = 290ClientWidth = 355Color = clBtnFaceFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -11Font.Name = 'Tahoma'Font.Style = []OldCreateOrder = FalseOnPaint = FormPaintPixelsPerInch = 96TextHeight = 13
end

转载于:https://www.cnblogs.com/del/archive/2008/07/01/1232856.html

再学 GDI+[81]: TGPImage(1) - 显示图像相关推荐

  1. mysql img格式缩放,再学 GDI+[89]: TGPImage(9) - 图像缩放时的质量(算法)

    本例效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Co ...

  2. 再学 GDI+[83]: TGPImage(3) - 平行四边形变换

    为什么80%的码农都做不了架构师?>>>    本例效果图: 代码文件: unit Unit1;interfaceusesWindows, Messages, SysUtils, V ...

  3. 再学 GDI+[91]: TGPImage(11) - 转灰度图像

    本例效果图: 代码文件: unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Contr ...

  4. 再学 GDI+[94]: TGPImage(14) - 增减图像的红、绿、蓝三色的成分

    为什么80%的码农都做不了架构师?>>>    本例效果图: 代码文件: unit Unit1;interfaceusesWindows, Messages, SysUtils, V ...

  5. 再学 GDI+[86]: TGPImage(6) - 拖动图像

    为什么80%的码农都做不了架构师?>>>    本例效果图: 代码文件: unit Unit1;interfaceusesWindows, Messages, SysUtils, V ...

  6. 再学 GDI+[98]: TGPImage(18) - 获取 GDI+ 图像格式对应的 GUID

    和在 Net 中不同的是, 在具体指定图像格式时, 这里常常需要的不是格式名称, 而是格式的 GUID; 知道了格式名称, 用 GetEncoderClsid 函数可以获取格式的 GUID; GetE ...

  7. 再学 GDI+[20]: TGPTextureBrush 与 TWrapMode

    为什么80%的码农都做不了架构师?>>>    TGPTextureBrush.Create(image: TGPImage; {用于画刷的图像}wrapMode: TWrapMod ...

  8. 再学 GDI+[57]: 路径 - Widen

    为什么80%的码农都做不了架构师?>>>    路径的 Widen 方法可以把路径中的线, 根据指定画笔的宽度与样式, 转换为一个范围(有点类似区域); 但转换后再描绘路径就只能使用 ...

  9. 再学 GDI+[56]: 路径 - Warp

    为什么80%的码农都做不了架构师?>>>    通过路径的 Warp 方法可以让路径在一个范围内(四个点决定的范围)变换; 第一个参数可以是 3 个点或 4 个点的数组, 如果是 3 ...

最新文章

  1. 2014第12周二学习记
  2. Windows进程与线程学习笔记(六)—— 线程切换
  3. 实现MySQL远程连接
  4. Alibaba微服务事务Seata源码深度剖析 - 笔记
  5. Angular 如何使用 InjectionToken 的方式得到当前 location 信息
  6. oracle未过账是什么意思,EBS R12 GL过帐问题(急)
  7. 显示照片的二维直方图
  8. python入门:Anaconda和Jupyter notebook的安装与使用
  9. Python 在线免费批量美颜,妈妈再也不用担心我 P 图两小时啦
  10. 实现让两个DIV横向排列方法揭秘
  11. 员工出错处罚通知_员工被罚款50元!理由是用了单位公厕的厕纸…
  12. MVVM项目中的动态DataGrid单元样式
  13. 推荐一款好用的消息推送服务WxPusher
  14. java多个文件压缩成zip文件
  15. 2015年终总结和2016年的计划
  16. 一次因为游戏程序员猝死引发的思考
  17. 解决PowerShell上运行脚本被禁用错误
  18. Python中通过property实现属性的修改、删除、查看
  19. 在html中取消超链接的下划线
  20. 哥德巴赫猜想(难度:1颗星)

热门文章

  1. php修改后nginx返回不生效,nginx修改配置后不生效的问题
  2. 做Java头发少_这35个Java代码优化细节,你用了吗
  3. 关闭计算机后自动开机的解决方法
  4. 华为机试第11题python
  5. 语音识别|基于CNN+DFSMN(简化版:标量+无步长因子)的声学模型实现及代码开源(keras)
  6. 路由器NAT网络地址转换
  7. HR经理必须掌握的五原则
  8. 机房管理系列之文件服务器管理
  9. 微信小程序实现图书管理系统
  10. 基于springboot实现高校学生健康档案管理系统