Graphics 單元新增了 TWICImage 類, 該類的功能源於新增的 Wincodec.pas 單元.
WIC(Windows Imaging Component) 是 Windows 為 Vista 和 WPF 提供的用於圖像編碼、解碼的 COM 組件, 但在 XP 下也能使用它.
WIC 支持的圖像有 BMP、PNG、ICO、JPEG、GIF、TIFF、HDP(HDP 是微軟隨 Vista 推出的新的圖像格式).
Wincodec 單元裡的那些 API 函數還是挺繁瑣的, 不過 TWICImage 可以非常方便地操作這些格式的圖像.
這樣以後使用 jpg、gif、png 等圖片時, 有 TWICImage 就夠了!
本例假定有這張圖片存在: c:\temp\test.jpg, 然後把它轉換為其他格式.
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}
procedure TForm1.Button1Click(Sender: TObject);
var
WicImg: TWICImage;
begin
WicImg := TWICImage.Create;
WicImg.LoadFromFile('c:\temp\test.jpg');
{在窗體上預覽圖片}
Canvas.Draw(0, 0, WicImg);
{轉換為 png}
WicImg.ImageFormat := TWICImageFormat.wifPng;
WicImg.SaveToFile('c:\temp\test.png');
WicImg.Free;
end;
end.