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

PDF to Image Converter 複数ページの画像に変換するC++サンプルと解説

「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 機能概要はこちらです。
サンプル( 他のC++サンプルC#VB6Javaコマンドライン(shell) )を公開しています。
無償評価版(リンク先は英語)はこちらです。 ダウンロード手順
PDF to Image Converter ソフト 購入(価格)

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

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

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

複数ページ画像に変換するC++サンプルと解説

 PDF文書を複数ページ画像に変換するC++サンプル・コードです。 PDF文書のすべてのページを変換します。
低価格なライブラリ(PDF Imager-LP)のサンプル・コードも参照してください。
#include <windows.h>
#include "pdf2imgapi_c.h"

//#pragma comment(lib,"Pdf2ImgOCX.lib")  //従来のレンディング・エンジン
#pragma comment(lib,"Pdf2ImgAPI.lib")    //新しいレンディング・エンジン

int main()
{
    // 初期化
    Pdf2ImgInitialize();

    // インスタンスを生成
    TPdf2Img* pDocument;
    pDocument = Pdf2ImgCreateObject();

    // ライセンス指定
    // ライセンスマネージャを使わない場合は、以下で指定します。
    //Pdf2ImgSetLicenseKey("ライセンスキー");  //適切なライセンスキーに替えます。

    // PDFを開く
    if(!Pdf2ImgOpen(pDocument, "input.pdf", "")){
        printf("入力ファイル\"input.pdf\"を開けません\n");
        return 1;
    }

    // 出力ファイル指定
    if(!Pdf2ImgCreateImage(pDocument, "output.tif")){
        printf("出力ファイル \"output.tif\" を開けません\n");
        return 2;
    }

    // ページの回転設定
    // 従来のレンダリングエンジンの場合に必要です。
    //Pdf2ImgSetRotateMode(pDocument, eRotateAttribute);

    // 全ページを変換
    int pages = Pdf2ImgGetPageCount(pDocument);
    for(int iPage = 1; iPage <= pages; iPage++){
        Pdf2ImgRenderPage(pDocument, iPage);
    }

    // 出力ファイルを閉じる
    Pdf2ImgCloseImage(pDocument);

    // インスタンスを開放
    Pdf2ImgClose(pDocument);
    Pdf2ImgDestroyObject(pDocument);
    Pdf2ImgUnInitialize();

    return 0;
}
Pdf2ImgInitialize 初期化
Pdf2ImgCreateObject PDF文書を扱うインスタンスを生成
戻り値がハンドルとなります。
Pdf2ImgOpen 入力のPDFを開きます。
第二引数入力の(変換される)PDFファイル (インターネット上のPDFファイルを指定する場合
第三引数PDFデータの暗号化パスワード
パスワードを指定しない場合は、空の文字列を指定します。
Pdf2ImgCreateImage 出力の画像ファイル名を指定
画像の形式は、複数ページの画像をサポートする.tif(または.tiff)を指定します。
利用できる形式は以下のとおりです。
拡張子画像形式
.bmpWindows Bitmap Format
.gifGraphics Interchange Format
.jb2JBIG2, Bi-level Images
.jpg, .jpegJoint Photographic Experts Group
.jp2JPEG2000
.jpf, .jpxJPEG2000, Part 2 – Coding Extensions
.pngPortable Network Graphics
.tif, .tiffTagged Image File Format
Pdf2ImgSetRotateMode ページの回転モードをを指定
第二引数にページの回転モードを指定します。
新しいレンダリング・エンジンを使う場合は、eRotateAttribute が既定値です。
回転モード
eRotateNonePDF文書の回転指定を無視します。
(従来レンダリング・エンジンの既定値)
eRotateAttributePDF文書での指定に従います。
(新しい レンダリング・エンジンの既定値)
eRotatePortrait縦置きにします。
eRotateLandscape横置きにします。
Pdf2ImgGetPageCount PDF文書の総ページ数を取得
Pdf2ImgRenderPage 画像に変換するPDFのページを指定
第二引数にPDFのページ番号を順に指定します。

サンプルコード

 C++ PDF to Image サンプル (MS Visual Studio 2008 Project) P2I_Samples_v2.zip

ご質問、お問い合わせ

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

(記載の会社名および製品名は、各社の登録商標および商標です。)
PDF製品 C++サンプル
PDF Security
PDF Validator
PDF to PDF/A Converter
PDF to Image Converter
PDF Imager-LP
Image to PDF Converter
PDF Printer
PDF Viewer
PDF Viewer-L
PDF Prep Tool Suite
PDF Optimization
PDF Command Line Suite
PDF Extract
PDF Easy Parse
PDF Viewr サンプル
C++ サンプル
画像に変換
単一画像に変換
複数ページ画像に変換
画像のPDFに変換
一般的なアプリケーション
C# サンプル
VB6.0 サンプル
Java サンプル
コマンドライン サンプル
株)トラスト・ソフトウェア・システム
暗号化・電子署名・タイムスタンプ ライブラリ作成します。
お問い合わせください。