6 ユーザーズ・ガイド6.1 サポートされるコーデック以下の表は、PDF to Image Converterがサポートするコーデックそれぞれの機能です。
コーデック表
Codec: The Compression/Decompression(圧縮・伸張)タイプ Bits Per Pixel: サポートする、ピクセルあたりのビット数 1 = モノクロ, 8 = 256色/グレースケール, 24 =1677万色 Gray: グレースケースをサポート Indexed: インデックスカラーをサポート Quality: 品質パラメータの設定をサポート Compression: 圧縮タイプをサポート *) パレット生成において:パレットのエントリー数は、ビット/ピクセル値が8以下である場合に、2の(ビット/ピクセル値)乗となる。これは、3ビット/ピクセルのTIFF、BMPまたはEPSは生成できるが、そのパレットの大きさは4ビット/ピクセルのものと同じであることを意味している。しかしながら、3ビット/ピクセル画像は4ビット/ピクセルの画像よりも圧縮性に優れている。 **) JBIG2およびJPEG2000で損失なし画像にするためには、品質パラメータを100にします。100より小さい場合は、非可逆(損失のある)圧縮アルゴリズムが適用されます。 ファイルおよび圧縮のタイプ多くの画像タイプは、圧縮アルゴリズムが既定されていますが、TIFF形式は圧縮の形式を指定できます。 JPEG2000(PDF 1.5)およびJBIG2(PDF 1.4)形式では、圧縮率は品質パラメータを介して調整できます。 なお、これら2つの形式は新しい規格のものであり、古いバージョンのPDF用のソフトウエアでは機能しない場合があります。 以下では、目的に応じた画像タイプの選定方法を提案しています。 圧縮なし・可逆圧縮· 白/黒 JBIG2 (Q = 100) またはTIFFでG4圧縮 · グレースケール PNG, JPEG2000 (Q = 100) · カラー PNG, JPEG2000 (Q = 100) 非可逆圧縮· 白/黒 JBIG2 · グレースケール JPEG, JPEG2000 · カラー JPEG, JPEG2000 インターネット向け圧縮· 白/黒 PNG · カラー(写真) JPEG, PNG · カラー(CG画像) GIF, PNG 一般的注意事項:非可逆圧縮アルゴリズムのほうが、損失なし(可逆圧縮)に比して、より多くのCPUの演算能力を必要とします。非可逆圧縮ではファイルサイズは一般に小さくなりますが、しかし生成(圧縮)または読取り(伸張)のコストが大きくなります。 ほとんどのインターネットブラウザでサポートされている画像フォーマットは、JPEG、GIFおよびPNGです。 複数ページ画像TIFF形式は、複数ページをサポートした画像形式のひとつです。 “3-Heights™ PDF to Image Converter API”でPDF文書を複数ページのTIFF画像に変換するには、TIFF画像をクローズせずに変換されるPDF文書のオープン/変換/クローズを繰り返します。 単一ページ画像“3-Heights™ PDF to Image Converter API”でPDF単一ページのTIFF画像を生成するには、PDF文書の1ページを変換した後に画像をクローズします。さらに続ける場合は、新たな画像ファイルをオープンしてページごとの変換処理を繰り返します。 “3-Heights™ PDF to Image Converter API”で生成される画像の既知の解像度は150dpiですが、PDFフォーマットは72dpiを使っています。PDFが使っているポイント値に見合った解像度を指定する場合は、72dpiを使ってください。一般的にモニターは96dpiなので、粒度の荒い画像を100%ズームで表示させるときは注意が必要です。 生成される画像のファイルサイズを小さくするにはいくつかの方法があります。まずは、表示の品質を低くすることでサイズが小さくなることを認識しておいてください。 それ以外にに、画像のファイルサイズに影響を与えるものを以下に記します。 · 画像のピクセル数 (画像の高さと幅) · ピクセルあたりのビット数 · 圧縮のタイプ · イメージ コンテンツ (ディザリングの影響を受けて) 画像の大きさ画像の大きさ(総ピクセル数)を少なくすることで、ファイルサイズは小さくなります。例えば、1024x768ピクセルの画像は、600x480ピクセルの画像より大きいファイルサイズとなります。 画像の大きさを設定する場合は以下の様にします。 SetBitmapDimensions(600, 480) 画像の大きさをポイントで設定する場合は以下のようにします。 SetPageSize(600, 480) 画像の大きさがポイントで設定されている場合、画像のピクセルサイズは解像度に応じて計算されます。 解像度解像度(1インチあたりのドット数、DPI: Dots per Inch)を指定すると画像の詳細さを指定することができます。そのデフォルトの値は150dpiで、生成された画像はズーム(拡大表示)しない場合においてシャープに見えます。もっと大きな値であればより詳細な画像が生成されますが、たくさんのピクセルが必要なためファイルサイズは大きくなります。また、解像度を低くするとファイルサイズは小さくなりますが、画像の表示品質は低下します。 以下のように、解像度を150PDIに替えて75DPIにしますと、ファイルサイズは約4分の1になります。 dpi = 75 ピクセルあたりのビット数ピクセルあたり、1ビット(白黒)や8ビット(グレースケール)を24ビット(1677万色)に替えると、ファイルサイズを小さくできます。ただし、色深度をサポートしている画像形式は限られますので注意してください。 BitsPerPixel = 8 フォーマット / 圧縮 タイプ“3-Heights™ PDF to Image Converter”は、様々な画像形式をサポートしています。ほとんどの形式が圧縮をサポートしています。たとえば、PNG画像はフラット圧縮され、JPEG画像はJPEG圧縮されます。なかでも、TIFFは圧縮のタイプを選択できます。 圧縮のタイプには可逆と非可逆といった根本的に異なる方式があります。 可逆圧縮(損失の無い圧縮)可逆圧縮では、画像がオリジナルから圧縮された状態への変換でその内容が変更されることはありません。そのため、この変換は可逆的で、圧縮された状態から元の画像を再生することができます。 可逆圧縮は、一般にCG画像のような画像やスキャンされたテキストに使用されます。 この圧縮タイプは、GIF、PNG、BMP、JPEG2000(品質を100にした場合)、JBIG2(品質を100にした場合)、TIFF(G3、G4、LZW、フラット)で利用できます。 非可逆圧縮(損失のある圧縮)非可逆圧縮では、画像がよりよく圧縮されるように、その内容を変更します。そのため、非可逆圧縮された画像を元の状態に戻すことはできなくなります。これは、複数のアプリケーションで同じ画像を繰り返し非可逆圧縮すると、そのたびに画像の品質が劣化することを意味します。 非可逆アルゴリズムは通常、視覚的品質を犠牲にしてよりよい圧縮ができるようにします。非可逆圧縮は、一般に写真のような画像に使用されます。 この圧縮タイプは、JPEG、JPEG2000(品質を100未満にした場合)、JBIG2(品質を100未満にした場合)で利用できます。
TIFF画像フォーマットでは、以下のような様々な圧縮タイプがサポートされています。 CCITTグループ3、グループ3-2DCCITTグループ3は、CCITTグループ4の前身で、通常は低い圧縮率の単純なアルゴリズムです。 CCITTグループ4CCITTグループ4は、2値のTIFF画像(たとえばファクシミリ用)の標準的な圧縮です。 LZWLZW(のLempel-Ziv-ウェルチ)圧縮は、画像の可逆圧縮アルゴリズムです。この圧縮アルゴリズムの日本国内での特許は、2004年に失効しています。 JPEGTIFFは、画像をJPEG(非可逆圧縮アルゴリズム)で圧縮することができます。 JPEGは8および24ビット画像において、高い圧縮率を担保します。この圧縮は、写真や、文字をほとんど含まない画像に適しています。 ZIP (フラット)ZIPは可逆圧縮アルゴリズムです。この圧縮は、品質を劣化さないで大きな画像を圧縮する場合などで利用されます。
一般に、フラット圧縮(またはZIP圧縮)やJPEG圧縮は、カラーまたはグレースケールの画像で使われます。CCITTグループ3、3−2D、4およびフラット圧縮は白黒(2値の)画像に使われます。 Compression = eComprFlate 画像コンテンツ、ディザリング画像がどれだけ効率よく圧縮できるかは、画像のコンテンツそれ自体が影響します。たとえば、真っ白なページの圧縮は、写真の圧縮に比較してはるかに効率よく圧縮できることは容易に想像できます。 ディザリングは、1ビットの白黒のドットがグレーのドットに見えるような視覚効果を、カラー画像にも与えるように画像のピクセルを再配置するアルゴリズムです。“PDF to Image Converter”は、ディザリングを、カラー画像のためにも実装しています。 ディザリングは、このような複雑なピクセルの配置変換をおこなうため、うまく圧縮できずファイルのサイズが大きくなる場合があります。その場合は、ディザリングを無効にすると、ファイルサイズが小さくなります。 ディザリングを無効にするには以下のように設定します。これは一般に、スキャンした文字などの場合に利用されます。 Dithering = eDitherNone さらに詳しくは、ディザリングの章を参照してください。 “3-Heights™ PDF to Image Converter”は、同一の入力ファイル(又は出力ファイル)に何回もオープンとクローズを繰り返す場合があります。このような場合には、PDFや画像のデータをメモリから読み出したり、メモリに格納したりすることで、効率よく高速に処理できるようになります。 また、TIFF形式のように複数のページで構成された画像データを生成する場合は、RenderPageを複数回数コールしますので、画像データはメモリ上に作成すると効率がよくなります。 “3-Heights™ PDF to Image Converter”は、以下のようなメソッドでメモリ上のデータを取り扱います。 CreateImageInMemoryは、画像をメモリ上に作成します。 GetImageは、メモリ上に保持されている画像をバイト配列で戻します。その大きさは、使用しているプログラミング言語による長さを戻す演算子によって取得できます。 OpenMemは、バイト配列に格納されたPDFデータをオープンします。 文書をメモリ上に生成する以下は、メモリ上に画像を作成するVisual Basic 6のサンプルです。このサンプルでは、画像をVariant型のデータpdfbytesに格納します。 Private Sub ConvertInMemory_Click() Dim conv As New PDF2IMGOCXLib.Pdf2Img Dim pdfbytes As Variant Dim length As Long conv.Open "C:\input.pdf" conv.CreateImageInMemory ".tif" conv.RenderPage 1 conv.RenderPage 2 pdfbytes = conv.GetImage length = LenB(pdf) conv.CloseImage conv.Close メモリから文書を読み出す以下のVisual Basic 6のコードでは、レンダリングするために、メモリ上のPDF文書を開きます。 (1)で、データベースからPDFデータが格納されたバイトデータを読取り(これは説明用のサンプルです)、バイト配列に格納します。 (2)で、そのデータを開きます。 Private Sub OpenFromMemory_Click() ' (1) PDFデータをメモリに格納する Dim conv As New PDF2IMGOCXLib.Pdf2Img Dim bChar() As Byte Dim lFileLenght As Long Open "C:\input.pdf" For Binary As #1 lFileLenght = LOF(1) ReDim bChar(lFileLenght - 1) Get #1, , bChar Close #1 ' (2) メモリに格納されたPDFをオープンする If Not conv.OpenMem(bChar, "") Then MsgBox "couldn't open document" End If 6.6 カラープロファイルを設定するには“3-Heights”のレンダリングエンジンは、RGB空間で機能します。色変換では、Iccフォルダーに格納されたカラープロファイル(CMYK.iccおよびsRGB.icm)が使われます。カラープロファイルは、配布されたIccフォルダーにあるリンクからダウンロードできます。 カラープロファイルは、以下のWebサイトからダウンロードすることもできます。
カラープロファイルを変更するには、新しいカラープロファイルで上書きします。 レンダリングエンジンが、全くカラープロファイルが利用できない場合、色変換はノイゲバウアー(Neugebauer)アルゴリズムを使用して実施されます。 6.7 色を変更するには - ダーク ブラックについてPDFで使われているCMYKカラーは、まずRGBカラーに変換されます。この変換は基本的に以下の2つの方法で達成れます。 1. CMYKカラープロファイルが適用されます。推奨のデフォルト カラープロファイルは、“U.S. Web Coated (SWOP) v2”です。違うカラープロファイルを使うと別の色になります。SetCMYKProfileおよびSetsRGBProfileを参照してください。RGBとCMYKカラープロファイルは、Windowsの%SystemRoot%\system32\spool\drivers\colorに格納されています。 2. SetCMSEngine(引数としてカスタム係数を保持しているテキストファイルを指定します)を使った色変換でノイゲバウアー(Neugebauer)アルゴリズムが適用されます。 Visual Basic 6 コードスニペット サンプル Dim conv As New PDF2IMGOCXLib.Pdf2Img ' 色管理エンジン設定 conv.SetCMSEngine App.Path & "\CmykToRgb.txt" デフォルトのノイゲバウアー係数では、CMYKの黒(0,0,0,1)から変換されたRGBの黒は純粋な黒ではありません。次の係数は暗い黒を作成します。変更は、5行目に適用されます(元は、~0.2です、SetCMSEngineを参照してください)。濃い黒を受け取るには、kの値をそれよりも低くする必要があります。 0.996078, 0.996078, 0.996078 ; White 0.000000, 0.686275, 0.937255 ; C 0.925490, 0.149020, 0.560784 ; M 1.000000, 0.949020, 0.066667 ; Y 0.100000, 0.100000, 0.100000 ; K 0.243137, 0.247059, 0.584314 ; CM 0.000000, 0.658824, 0.349020 ; CY 0.066667, 0.176471, 0.215686 ; CK 0.929412, 0.196078, 0.215686 ; MY 0.215686, 0.101961, 0.141176 ; MK 0.200000, 0.196078, 0.125490 ; YK 0.266667, 0.266667, 0.274510 ; CMY 0.133333, 0.098039, 0.160784 ; CMK 0.074510, 0.180392, 0.133333 ; CYK 0.215686, 0.121569, 0.113725 ; MYK 0.125490, 0.121569, 0.121569 ; CMYK 6.8 Isomorphicストレッチを適用するにはPDFのページサイズがピクセルで与えられていて、そのページを正確な寸法の画像に変換したいのに縦横比がPDFと違っている場合は、Isomorphicストレッチを使うことができます。この変換では、x軸とy軸で異なる解像度を使用します。Y方向の解像度を仮定すると、X方向の解像度は以下のサンプルコードのように計算できます。 Dim conv As New PDF2IMGOCXLib.Pdf2Img conv.Open ... conv.CreateImage ... For Page = 1 To conv.PageCount conv.XDPI = conv.YDPI
* conv.PageHeight / conv.PageWidth conv.RenderPage Page Next Page conv.Close conv.CloseImage ディザリングは、実際の色として利用できない色をシミュレートするための画像で使用される、一般的な手段です。それは、色深度が低色深度であり、必要な色を(利用可能は)色またはグレーの網掛けを使って(例えば、白と黒のピクセルだけを使って)、それ以外の色をシミュレートするときに最良の結果を得られます。 参考1. これらの画像によってディザリングの効果が明確になるように、以下に非常に低解像度の画像を用意してあります。高い解像度と色数の多い画像は、高品質の画像です。 2. レンダリングのフィルターやPDFの表示用アプリケーションのズームレベルは、画像のディザリング効果に影響を与える可能性があります。 カラー画像
モノクロ画像
ガイドライン上記のサンプルで示したように、ディザリングはコンテンツによって違った結果となります。以下では、コンテンツのタイプによってどのディザリングを選択するのがよいかを提案します。
ディザリングは白と黒(1ビット)の画像のような低色深度の画像に対してのみ適用されるべきであることに留意してください。 8ビット以上(256色または階調)の色深度の画像にディザリングを適用すると、少なからず視覚的な影響が現れます。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Copyright© Trust Software System, All Rights Reserved. |