フォーラム


ゲスト  

ようこそ ゲスト さん。このフォーラムに投稿するには 登録が必要です。

ページ: [1]
トピック: TIFF 形式画像の扱い
Mr.XRAY
メンバー
投稿数: 192
TIFF 形式画像の扱い
on: 2013/05/14 15:19 Tue

TIFF 形式の画像は,マルチページと呼ばれる形式があり,1つの画像ファイルに複数のページを
持つことができます.内部的にいろいろな仕様を構成することができます.
印刷禁止等の設定も可能です.

[Tagged Image File Format - Wikipedia]
http://ja.wikipedia.org/wiki/Tagged_Image_File_Format

Delphi 2010 で実装されたTWICImage クラスを使用すると,以下のように TImage に表示できます.

procedure TForm1.Button3Click(Sender: TObject);
var
WIC : TWICImage;
begin
WIC := TWICImage.Create;
try
WIC.LoadFromFile(TIFFファイル名);
Image1.Picture.Assign(WIC);
Image1.Update; //このコードは,表示確認のために入れておいた方が良い
finally
WIC.Free;
end;
end;

  
このコードではマルチ TIFF の他のフレーム (ページ) は表示できません.
また TIFF の内部構造によっては印刷できない場合もあるようです (TImage に表示可能かどうかは不明).
そんな場合は,LibTiffDelphi というライブラリを使用するといいようです.
ただし,私自身は使ったことはありません.

[ID: 24741, LibTiffDelphi patch to 3.8.2 libtiff]  本日現在,こちらの方が新しい
http://cc.embarcadero.com/Item/24741
[TIFF in Delphi, pre-compiled LibTiff for Borland Delphi]
http://www.awaresystems.be/imaging/tiff/delphi.html

GDI+ でも,FrameDimension で TIFF のページ数を取得して,マルチ TIFF 画像を扱えます.
ただし,GDI+ で扱えない形式の TIFF もあります.

[Windows 画像と FAX ビューアを使用すると TIFF イメージが表示されない]
http://support.microsoft.com/kb/329270
注: FAX ビューアは GDI+ を使用しています.

[JPEG 形式で圧縮されている TIFF 画像ファイルを Office 2003 の Office Document Imaging ツールで正しく開くことができない]
http://support.microsoft.com/kb/885938
注: Office 2003 は画像操作に GDI+ を使用しています.

なお,IE 9 からは TIFF 画像の表示が可能となっているようです.

Mr.XRAY
メンバー
投稿数: 192
Re: TIFF 形式画像の扱い
on: 2013/05/15 11:59 Wed

>GDI+ でも,FrameDimension で TIFF のページ数を取得して,マルチ TIFF 画像を扱えます.

サンプルを追加しておきました.
[GDI+ 関係サンプル] [R280_各種の画像形式の表示と変換]
http://mrxray.on.coocan.jp/Delphi/ResizeSamples/R280_GDIPlus_SomeImageTypes.htm#06

ページ: [1]
WP Forum Server by ForumPress | LucidCrew
バージョン: 1.7.5 ; ページロード: 0.027 sec.