zoukankan      html  css  js  c++  java
  • 再学 GDI+[81]: TGPImage(1) 显示图像

    已知 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;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;
    
    type
      TForm1 = class(TForm)
        procedure FormPaint(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    uses GDIPOBJ, GDIPAPI;
    
    procedure TForm1.FormPaint(Sender: TObject);
    var
      g: TGPGraphics;
      img: TGPImage;
    begin
      g := 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: TForm1
      Left = 0
      Top = 0
      Caption = 'Form1'
      ClientHeight = 290
      ClientWidth = 355
      Color = clBtnFace
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clWindowText
      Font.Height = -11
      Font.Name = 'Tahoma'
      Font.Style = []
      OldCreateOrder = False
      OnPaint = FormPaint
      PixelsPerInch = 96
      TextHeight = 13
    end
    
  • 相关阅读:
    PHP 使用memcached
    linux下使用yum安装 mencached
    mysql 连接字符串 CONCAT
    linux 下 apache启动、停止、重启命令
    js中push()的用法
    linux下使用yum安装mysql
    SVN服务器多个项目的权限分组管理
    yum 安装nginx
    Linux下php安装Redis安装
    使用BarcodeLib.Barcode.ASP.NET生成条形码
  • 原文地址:https://www.cnblogs.com/del/p/1232856.html
Copyright © 2011-2022 走看看