zoukankan      html  css  js  c++  java
  • Delphi 2010 新增功能之: TWICImage 类[3] 图像的比例变换


    TWICImage 的 Width、Height 属性, 可以读取但不能赋值.

    调整 TWICImage 的大小、比例, 可以通过 IWICBitmapScaler 接口.

    //IWICBitmapScaler.Initialize 函数有四种比例变换的算法:
    WICBitmapInterpolationModeNearestNeighbor = 0;
    WICBitmapInterpolationModeLinear          = $1;
    WICBitmapInterpolationModeCubic           = $2;
    WICBitmapInterpolationModeFant            = $3;
    

    测试代码:
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    uses Wincodec;
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
      WicImg: TWICImage;
      Factory: IWICImagingFactory;
      Scaler: IWICBitmapScaler; {图像比例变换接口}
    begin
      WicImg := TWICImage.Create;
      WicImg.LoadFromFile('c:\temp\test.jpg');
    
      Factory := WicImg.ImagingFactory;
      Factory.CreateBitmapScaler(Scaler);
    
      Scaler.Initialize(WicImg.Handle,
                        WicImg.Width div 2, WicImg.Height div 3,
                        WICBitmapInterpolationModeFant);
    
      WicImg.Handle := IWICBitmap(Scaler);
      Canvas.Draw(0, 0, WicImg);
    
      Scaler := nil;
      Factory := nil;
      WicImg.Free;
    end;
    
    end.
    
  • 相关阅读:
    第一章(认识jQuery)
    csv、txt读写及模式介绍
    命令行参数
    WebDriverWait等设置等待时间和超时时间
    js加载页面使用execute_script选定加载位置
    pip镜像源配置
    python字符编码
    scrapy设置代理
    urllib2设置代理
    禁止chrome自动更新
  • 原文地址:https://www.cnblogs.com/del/p/1586908.html
Copyright © 2011-2022 走看看