トラスト・ソフトウェア・システム
トラスト・ソフトウェア・システム

PDF to Image Converter ラスタライズ画像のPDFに変換するJavaサンプルと解説

「PDF to Image Converter」は、PDF文書を単一(TIFF、JPEG他)または、複数ページの画像(TIFF)または、画像化されたPDFに変換する機能を アプリケーションに追加するライブラリ(API) です。

機能特徴
  • 単一または複数の画像を生成
  • 画像フォーマット:TIFF、JPEG、JBIG2、JPEG2000、PNG、GIF、BMP など
  • ラスタライズされたPDF文書を作成可能
  • PDF文書の復号と暗号化可能
  • 画像フィルター(スーパーサンプリング、バイキュービック、バイリニア)の設定でエイリアスやモアレを低減
  • 色空間(グレースケール、RGB、CMYK、インデックス)選択可
  • 解像度、色数 設定
  • 非可逆圧縮やロスレスJPEG2000またはJBG2圧縮を選択可
  • 画質やサイズ(非可逆圧縮)の最適化
  • ハーフトーン方式(Floyd Steinberg、half-tone matrixなど)を選択可
  • 微細なテキスト文字の線幅を太くする
日本語マニュアル( HTML形式PDF形式 )をご参照ください。

PDF to Image Converter 機能概要はこちらです。
サンプル( 他のJavaサンプルC++C#VB6.0コマンドライン(shell) )を公開しています。
無償評価版(リンク先は英語)はこちらです。 ダウンロード手順
価格見積り

廉価(低価格)版
PDFを画像に変換するライブラリの機能を限定した廉価(低価格)版も参照してください。

無償評価版のダウンロードとインストール

 ライブラリ(評価版API)は無償でダウンロード(試用)できますので、PDF to Image Converterダウンロード手順を参照してダウンロードください。
 ファイルをダウンロードしてから、インストールもしくは適当なフォルダーに解凍します。以下のようなフォルダーができあがりますので、適宜ご利用ください。
binライブラリやライセンスマネージャーなど
doc使用説明書やjavadocなど
includeC/C++用のヘッダー(.h)ファイル
jarP2IA.jar,PCIA.jar(Javaのラッパー)
libC/C++用のlibファイル
samples各種開発言語のサンプル
サンプルのコンパイルおよび実行前に、jar/PCIA.jarをCLASSPATHにコピーし、bin/Pdf2PdfImgOCX.dllをPATHまたはjava.library.pathにコピーしてください。
また、無償評価版と共にダウンロードしたライセンスキーをbin/LicenseManager.exeを使って登録してください。 ライセンスキーの登録方法はこちらです。なお、ライセンスキーはプログラミングで指定できます。ソースコードを参照してください。
日本語マニュアルZIP形式PDF形式HTML形式)は、インストーラには含まれていませんのでこちらからダウンロードしてください。

ラスタライズPDFに変換するJavaサンプルと解説

 ラスタライズ画像のPDF文書に変換するJavaのサンプル・コードです。 PDFのすべてのページがそれぞれ画像に変換されたPDF文書を生成します。 ここで変換されたPDFは、変換前のPDFが持っている、リンク(内部やWebなど)やしおりその他の情報がコピーされます。不要であれば、それら情報コピーの抑制もできます。
import com.pdftools.pcia.Pdf2PdfImg;
import java.io.IOException;

public class pdfSgl {

    public static void main(String[] args) {
        //インスタンス生成
        Pdf2PdfImg doc = new Pdf2PdfImg();

        // ライセンスキー
        // ライセンスマネージャを使わない場合は、以下を有効にします。
        //Pdf2PdfImg.setLicenseKey("ライセンスキー文字列");   //適切なライセンスキーに替えてください。

        // ページ回転モード
        doc.setRotateMode(1);

        try{
            // 変換
            if(!doc.convertFile("input.pdf", "output.pdf", null)){
                int err = doc.getErrorCode();
                if(err >= 0x8A120000 && err <= 0x8A12FFFF)
                    throw new Exception(String.format("ライセンスが無効です。(0x%08X)", err));
                else
                    throw new IOException(String.format("エラー(0x%08X)", err));
            }
        }catch(Throwable e){
            e.printStackTrace();
        }finally{
            // 後始末
            doc.close();
            doc.destroyObject();
        }
    }
}
New Pdf2PdfImg() インスタンス作成
setLicenseKey() ライセンスキー指定
ライセンスマネージャを使わない場合に指定します。
setRotateMode() ページの回転モード指定
ページを必要に応じて回転します。
回転モード意味
eRotateNone0PDF文書の指定を無視します。
eRotateAttribute1PDF文書の指定に従って回転します。
eRotatePortrait2すべてのページを縦置きにします。
eRotateLandscape3すべてのページを横置きにします。
convertFile() 入力のPDFを開き、すべてのページを画像のPDFにしたPDFを生成します。
第一引数入力(変換前)のPDFファイル名 (インターネット上のPDFファイルを指定する場合
第二引数出力(変換後)のPDFファイル名
第三引数入力PDFデータの暗号化パスワード(省略可)
暗号化していない場合は、nullを指定します。

ページを指定して、ラスタライズPDFに変換するサンプル(Java)と解説

 ページを指定して、ラスタライズ画像のPDF文書に変換するJavaのサンプル・コードです。 PDFの指定したページが画像に変換されたPDF文書を生成します。 ここで変換されたPDFは、変換前のPDFが持っている、リンク(内部やWebなど)やしおりその他の情報がコピーされます。また、それら情報コピーの抑制もできます。
import com.pdftools.pcia.Pdf2PdfImg;
import java.io.IOException;

public class pdfMlt {

    public static void main(String[] args) {
        //インスタンス生成
        Pdf2PdfImg doc = new Pdf2PdfImg();

        // ライセンスキー
        // ライセンスマネージャを使わない場合は、以下を有効にします。
        //Pdf2PdfImg.setLicenseKey("ライセンスキー文字列");   //適切なライセンスキーに替えてください。

        // ページ回転モード
        doc.setRotateMode(1);

        try{
            // 入力ファイル
            if(!doc.open("input.pdf", "")){
                int err = doc.getErrorCode();

                if(err >= 0x8A120000 && err <= 0x8A12FFFF)
                    throw new Exception(String.format("ライセンスが無効です。(0x%08X)", err));
                else
                    throw new IOException(String.format("入力ファイルエラー(0x%08X)", err));
            }

            // 出力ファイル
            if(!doc.createImage("sgl.pdf", "", "", -1, 128)){
                int err = doc.getErrorCode();

                throw new IOException(String.format("出力ファイルエラー(0x%08X)", err));
            }

            // 変換
            int pc = doc.getPageCount();
            for(int p = 1; p <= pc; p++){
                doc.renderPage(p);
            }
        }catch(Throwable e){
            e.printStackTrace();
        }finally{
            // 後始末
            doc.close();
            doc.destroyObject();
        }
    }
}
New Pdf2PdfImg() インスタンス作成
setLicenseKey() ライセンスキー指定
ライセンスマネージャを使わない場合に指定します。
setRotateMode() ページの回転モード指定
ページを必要に応じて回転します。
回転モード意味
eRotateNone0PDF文書の指定を無視します。
eRotateAttribute1PDF文書の指定に従って回転します。
eRotatePortrait2すべてのページを縦置きにします。
eRotateLandscape3すべてのページを横置きにします。
open() 入力のPDFを開きます。
第一引数入力(変換前)のPDFファイル名 (インターネット上のPDFファイルを指定する場合
第二引数入力PDFデータの暗号化パスワード
暗号化していない場合は、nullを指定します。
createImage() 出力のPDFを生成します。
第一引数出力(変換後)のPDFファイル名
第二引数出力PDFデータの(暗号化)ユーザーパスワード
暗号化しない場合は、""(null文字列)を指定します。
第三引数出力PDFデータの(暗号化)オーナーパスワード
暗号化しない場合は、""(null文字列)を指定します。
第四引数出力PDFデータのパーミッション(許可)フラグ
すべて許可する場合は-1を指定します。以下の値を指定できます。
設定値内容
ePermPrint低解像度印刷
ePermModify文書の変更
ePermCopy内容のコピーまたは取り出し
ePermAnnotate注釈
ePermFillFormsフォームへの入力
ePermAssemble文書アセンブリ
ePermDigitalPrintディジタル印刷
第五引数暗号化の鍵長
8の倍数で40から128まで指定できます。
ただし、Adobe Acrobatがサポートしているのは40または128(Acrobat 5以上)です。
getPageCount()入力PDFのページ数を取得
renderPage()入力PDFの指定ページを画像にして出力にコピー
closeImage()出力ファイルを閉じる
close()入力ファイルを閉じる

サンプルコード


ご質問、お問い合わせ

 メールで support@TrustSS.co.jp 宛てにお送りください。
または、質問のページからお送りいただくようお願いします。ご要望も承っております。(匿名で送れます。)

(記載の会社名および製品名は、各社の登録商標および商標です。)
PDF製品 Javaサンプル
PDF Security
PDF Validator
PDF to PDF/A Converter
PDF to Image Converter
Image to PDF Converter
PDF Printer
PDF Prep Tool Suite
PDF Optimizer
PDF Command Line Suite
PDF Extract
PDF Viewr サンプル
C++ サンプル
C# サンプル
VB6.0 サンプル
Java サンプル
画像に変換
単一画像に変換
複数ページ画像に変換
画像のPDFに変換
一般的なアプリケーション
コマンドライン サンプル