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
    
  • 相关阅读:
    使用树莓派3获取CPU温度
    使用树莓派控制继电器
    Darknet图像训练的步骤
    Faster-Rcnn图像识别训练的步骤
    Centos7中ELK集群安装流程
    近年来较流行的搜索引擎框架
    机器学习中,使用NMS对框取优
    当前Azure中国可使用的虚拟机的Size列表
    汉语词性对照表[北大标准/中科院标准]
    Linux中禁用THP(Transparent Huge Pages)
  • 原文地址:https://www.cnblogs.com/del/p/1232856.html
Copyright © 2011-2022 走看看