测试代码:
unit Unit1;interfaceuses 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; Clipper: IWICBitmapClipper; {修剪图像的接口} r: WICRect;begin WicImg := TWICImage.Create; WicImg.LoadFromFile('c:\temp\test.jpg'); Factory := WicImg.ImagingFactory; Factory.CreateBitmapClipper(Clipper); r.X := WicImg.Width div 4; r.Y := WicImg.Height div 4; r.Width := WicImg.Width div 2; r.Height := WicImg.Height div 2; Clipper.Initialize(WicImg.Handle, r); WicImg.Handle := IWICBitmap(Clipper); Canvas.Draw(0, 0, WicImg); Clipper := nil; Factory := nil; WicImg.Free;end;end.