程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi 中使用封裝的TWICImage加載不同類型的圖片,

Delphi 中使用封裝的TWICImage加載不同類型的圖片,

編輯:Delphi

Delphi 中使用封裝的TWICImage加載不同類型的圖片,


WIC全稱為 Microsoft Windows Imaging Component 

在沒有TWICImage之前,如果只有一個文件或一個文件流,想要正確加載到TImage可不是一件簡單的事。

Graphics單元默認也是按照文件後綴名自動選擇相應的圖像類來加載,而一旦沒有後綴名或後綴名不准確,則會導致加載圖片失敗(文件流Stream是沒有後綴名的)。

 

通常的做法是讀取圖片數據的類型格式標識(文件頭,簽名,格式特征等,如BMP是以BM開頭的),此方法需要了解盡可能多的圖片存儲格式,

此外,還需要引用各種圖片的支持單元(如 GIFImage.pas, JPEG.pas,PNGImage.pas 等...)

現在有了TWICImage,可以直接調用Windows提供的圖像處理組件,支持各種各樣的圖片類型,由於TWICImage是繼承了TGraphic,所以直接就可以加載到TImage中使用,真的是太方便的了,可惜沒法跨平台使用。

另外TWICImage封裝了ImagingFactory類庫,此類庫也是Windows以類工廠的方式提供的各種各樣圖片處理接口(翻轉,裁剪,縮放等...)

 

var
  aImg: TWICImage;
begin
  aImg := TWICImage.Create;
  aImg.LoadFromFile('c:\temp\test.jpg');
  //aImg.LoadFromFile('c:\temp\test.png');
  // ...
  Image1.Picture.Assign(aImg); //顯示圖片
  aImg.Free;
end;

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved