PDF Imager-LP 単一画像に複数ページを切り取って作成 C++サンプル

PDF Imager-LP 単一画像に複数ページを切り取って作成 C++サンプルと解説

PDF Imager-LPは、PDF文書を画像(TIFF、JPEG、PNG)に変換するライブラリで、機能を限定した廉価版です。 (PDF Imager-LP概要はこちらです。)
今すぐ購入 (価格)

他の開発言語サンプル: C#のサンプル VB.NETのサンプル

ここでは、PDFの指定したページを画像に変換するサンプルを示します。他のサンプルは以下を参照してください。

Windows アプリケーション サンプル画面 Windows アプリケーション サンプル
パッケージには、PDF Imager-LPライブラリを使ったアプリケーション サンプルが同梱されています。
全ソースコードが付属していますのでコンパイルしてすぐに試用できます。
Windowsサンプルの機能説明はこちらです。

ダウンロード:
PDF Imager-LPの無償体験版は、以下からダウンロードできます。無償体験版は、製品版と同じ機能が使えます。
利用許諾契約書をご確認のうえダウンロードしてください。ダウンロードしますと、利用許諾に同意したものとみなします。
評価利用では、ライセンスキーが必要ですので必ずダウンロードしてください。


高機能な、画像変換ライブラリ「PDF to Image Converter」は、こちらです。

インストール

ライブラリは無償でダウンロードおよび試用できます。ダウンロードしてから、適当なフォルダーに解凍してください。以下のようなフォルダーができますので適宜ご利用ください。
docライブラリ説明書、利用許諾契約書
includeC/C++用ヘッダー(.h)ファイル
libDLLライブラリ、Libファイル
sampleC/C++言語、C#/VB.NET言語 および、VB6.0サンプル、
Windowsアプリケーション(C++およびC#)
サンプル実行前に、lib/PdfImagerLP.dllをサンプルの実行ファイルがあるフォルダーにコピーしてください。

PDFの複数ページを切り取って単一画像に変換する C++サンプルコード

PDFの複数ページを切り取ってから単一の画像に貼り付けるC++のサンプルコードです。(C#はこちら)

単一のページを単一の画像に変換する C++サンプルC#サンプル はこちらです。
複数のページを単一のTIFF画像に変換する C++サンプルC#サンプル はこちらです。

#include "ImagerLp.h"
#pragma comment(lib, "PdfImagerLP.lib")

int main(int argc, char* argv[])
{
    //初期化
    if(MlpInitialize("ライセンスキー")){
        printf("ライセンスキーが不正です。正しいライセンスキーを使用してください。");
        return 1;
    }

    //PDF文書オープン
    if(MlpOpenDoc("ファイル.pdf", NULL, NULL)){
        printf("PDFファイルをオープンできません。");
        return 2;
    }

    //ページ画像の解像度
    MlpSetPictureResolution(72 * 1);    /* 100%サイズ指定(省略可) */

    //フレーム設定 (この項目は省略可)
    MlpSetPictureAddFrame(1);
    MlpSetPictureFrameWidth(2);
    MlpSetPictureFrameRGB(0, 0, 0);
    MlpSetPictureFrameGray(0.5f);
    MlpSetPictureFrameAlpha(0.3f);

    //パネル
    if(!MlpCreatePanel(600, 400, MLP_PICTURE_RGB)){
        int     panelX=50;
        int     panelY=50;

        MlpCreatePictMem(1);                         //第1ページを画像化
        MlpMemPictToPanel(panelX, panelY, 0.3f);     //パネルに貼り付け

        {
             //第1ページを切り抜いてパネルに貼り付け
             int     bboxX=100, bboxY=80;
             int     bboxW=210, bboxH=145;
             char    color={150, 190, 220};

             MlpMemPictToPanelBBox(panelX + bboxX, panelY + bboxY, 1.0f,
                                   bboxX, bboxY, bboxW, bboxH);
             MlpPaintRectToPanel(panelX + bboxX, panelY + bboxY,
                                 bboxW, bboxH, 3, color);
        }


        //パネルデータを画像ファイルに変換
        MlpPanelToFile("Panelrc.png");
    }

    //文書クローズ
    MlpCloseDoc();

    //後始末
    MlpUninitialize();

    return 0;
}
MlpInitialize 初期化
引数にライセンスキーを指定します。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
MlpOpenDoc PDFファイルを開く
指定したファイルが画像への変換対象になります。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数に以下を指定します。
第一引数:PDFファイル名
第二引数:オーナーパスワード(パスワードで暗号化されている場合)、またはNULL
第三引数:ユーザーパスワード(パスワードで暗号化されている場合)、またはNULL
第一引数PDFファイル名
第二引数オーナーパスワード(パスワードで暗号化されている場合)、またはNULL
第三引数ユーザーパスワード(パスワードで暗号化されている場合)、またはNULL
MlpCreatePanel ページ画像を貼り付ける画像を生成します。
この画像を「パネル」と称します。このパネルに複数のページ画像を貼り付けます。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数に以下を指定します。
第一引数:パネル画像の横幅画素数
第二引数:パネル画像のライン数(縦の画素数)
第三引数:PICTURE_RGB(カラー)またはPICTURE_GRAY(グレースケール)
第一引数パネル画像の横幅画素数
第二引数パネル画像のライン数(縦の画素数)
第三引数PICTURE_RGB(カラー)またはPICTURE_GRAY(グレースケール)
MlpCreatePictureMem  ページ画像をメモリーに作成します。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数にはページ番号を指定します。
MlpMemPictToPanel メモリーに作成したページ画像をパネルに貼り付けます。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数に以下を指定します。
第一引数:ページ画像を貼り付けるパネルの横位置(X座標)
第二引数:ページ画像を貼り付けるパネルの縦位置(Y座標)
第三引数:ページ画像の不透明度(0~1.0)を指定します。0は透明、1.0は不透明です。
第一引数ページ画像を貼り付けるパネルの横位置(X座標)
第二引数ページ画像を貼り付けるパネルの縦位置(Y座標)
第三引数ページ画像の不透明度(0~1.0)を指定します。0は透明、1.0は不透明です。
MlpPanelToFile パネルを画像ファイルとして作成します。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数には作成するファイル名を指定します。ファイル名の拡張子によって画像形式が以下のように選択されます。
.png:PNG形式、.jpegまたは.jpg:JPEG形式、.tiffまたは.tif:TIFF形式
拡張子画像形式
.pngPNG(Porable Network Graphics)形式
.jpegまたは.jpgJPEG(Joint Photographic Experts Group)形式
.tiffまたは.tifTIFF(Tagged Image File Format)形式
MlpCloseDoc開いたPDFファイルを閉じます。
MlpUninitialize 終了します。

無償評価版およびサンプル

PDF Imager-LPの無償体験版は、以下からダウンロードできます。無償体験版は、製品版と同じ機能が使えます。
利用許諾をご確認のうえダウンロードしてください。ダウンロードしますと、利用許諾に同意したものとみなします。
評価利用では、ライセンスキーが必要ですので必ずダウンロードしてください。
サンプル ソースコード:サンプルのソースコードは以下をダウンロードしてください。(Visual Studio2008プロジェクト)
PDFImagerLP_samples_1_8_2.zip

ご質問、お問い合わせ

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

PDF Toolsライト

PDF Imager-LPサンプル

PDF 構文解説

(ISO32000-1より)

PDF Tools C++サンプル