PDF Imager-LP PDF文書の複数ページを単一画像に変換 サンプル

PDF Imager-LP PDFの複数ページを1つの画像に変換 サンプルと解説

PDF Imager-LPは、PDF文書を画像(TIFF、JPEG、PNG、BMP)に変換するライブラリです。( PDF Imager-LP概要

 価格見積り

オンライン画像変換で確認してください。

ここでは、PDFの指定したページを画像に変換するサンプルを示します。

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

PDFImagerLP-1_9_1.zip(体験版パッケージ)
体験版(評価)用 ライセンスキー"0-0GR2-HE110345R153" [評価用ライセンスキー] (無償)

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

インストール


C# 開発環境 C/C++ 開発環境 Python 開発環境
ライブラリは無償でダウンロードでき、全機能を試用できます。
Imager-LPパッケージをダウンロードしてから、適当なフォルダーに解凍してください。
以下のようなフォルダーができますので適宜ご利用ください。
docライブラリ説明書、利用許諾契約書
includeC/C++用ヘッダー(.h)ファイル
libDLLライブラリ、Libファイル
sampleC/C++言語、C#/VB.NET言語 および、
Windowsアプリケーション(C++およびC#)
サンプルはlib/PdfImagerLPNET.dllおよびlib/x64/PdfImagerLP.dll(またはlib/Win32/PdfImagerLP.dll)を参照しますので、適切なフォルダーにコピーしてください。
サンプルはlib/x64/PdfImagerLP.dll(またはlib/Win32/PdfImagerLP.dll)を参照しますので、適切なフォルダーにコピーしてください。
サンプルはPdfImagerLP.pyを使用し、lib/[x64またはWin32]/_PdfImagerLP.pydおよびlib/[x64またはWin32]/PdfImagerLP.dllを参照しますので、適切なフォルダーにコピーするか、以下のような手順でPython DLLの検索パスを設定してください。
import sys
if sys.maxsize > 2**32:
    sys.path.insert(1,'[Imager-LPインストールフォルダー名]/lib/x64')
else:
    sys.path.insert(1,'[Imager-LPインストールフォルダー名]/lib/Win32')

PDFの複数ページを単一画像に変換する サンプルコード

PDFの複数ページを単一の画像に変換するサンプルコードです。
画像は、あらかじめサイズが指定された”パネル”画像に描画されます。

C# C/C++ Pyhon 他のサンプル ダウンロード
#include "ImagerLP.h"
#pragma comment(lib, "PdfImagerLP.lib")

int main()
{
    //初期化
    if(MlpInitialize("0-0GR2-HE110345R153")){
        printf("ライセンスキーが不正です。正しいライセンスキーを使用してください。");
        return 1;
    }

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

    //パネル(ここに画像が描画されます)
    if(!MlpCreatePanel(1200, 1300, MLP_PICTURE_RGB)){
        int     ySpan=50;
        int     panelX=100, panelY=ySpan;
        MlpCreatePictMem(1);                         //第1ページを画像化
        MlpMemPictToPanel(panelX, panelY, 1);        //パネルに貼り付け
        panelY += MlpGetPicturePixelY(1) + ySpan;

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

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

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

    //後始末
    MlpUninitialize();

    return 0;
}
MlpInitialize初期化
 引数にライセンスキー"0-0GR2-HE110345R153" (評価用ライセンスキー) を指定します。
MlpOpenDocPDF文書をオープン
 第一引数:ファイルパス名
 第二引数:オーナーパスワード
 第三引数:ユーザーパスワード
MlpCreatePnelパネルをメモリに作成
 第一引数:パネルの横サイズ[ピクセル]
 第二引数:パネルの縦サイズ[ピクセル]
 第三引数:パネルの色空間
MlpCreatePictMemPDFの指定ページをメモリ上に画像化
 引数にPDFのページ番号を指定
MlpMemPictToPanelメモリ上のページ画像をパネルに描画
 第一引数:描画位置のX座標[ピクセル]
 第二引数:描画位置のY座標[ピクセル]
 第三引数:メモリ上の画像番号
MlpGetPicturePixelYページの縦ピクセルサイズを取得
 引数にPDFのページ番号を指定
MlpPanelToFileパネルデータをファイルに出力
 引数にファイル名を指定
   画像の形式は拡張子で判断
MlpCloseDocPDF文書をクローズ
MlpUninitializeライブラリの終了
C# C/C++ Pyhon 他のサンプル ダウンロード
using System;
using PDFTools.PdfImagerLP;

namespace Pln
{
    class Pln
    {
        static void Main()
        {
            //初期化
            PdfImager mlp = new PdfImager();
            if (mlp.Initialize("0-0GR2-HE110345R153") != 0)
            {
                Console.WriteLine("初期化に失敗しました。");
                Environment.Exit(2);
            }

            //PDF文書オープン
            if (mlp.OpenDoc("hello.pdf", "", "") != err.MLP_NO_ERROR)
            {
                Console.WriteLine("PDFファイル'{0}'を開けませんでした。","hello.pdf");
                Environment.Exit(3);
            }

            //パネル(ここに画像が描画されます)
            if (mlp.CreatePanel(1200, 1300, PictureOpt.PICTURE_RGB) == 0)
            {
                int ySpan = 50;
                int panelX = 100;
                int panelY = ySpan;

                mlp.CreatePictMem(1);                       //第1ページを画像化
                mlp.MemPictToPanel(panelX, panelY, 1.0f);   //パネルに貼り付け
                panelY += mlp.GetPicturePixelY(1) + ySpan;

                mlp.CreatePictMem(2);                       //第2ページを画像化
                mlp.MemPictToPanel(panelX, panelY, 1.0f);   //パネルに貼り付け
            }

            //パネルデータを画像ファイルに変換
            mlp.PanelToFile("paneln.png");

            //文書クローズ
            mlp.CloseDoc();

            //後始末
            mlp.Uninitialize();
        }
    }
}
Initialize初期化
 引数にライセンスキー"0-0GR2-HE110345R153" (評価用ライセンスキー) を指定します。
OpenDocPDF文書をオープン
 第一引数:ファイルパス名
 第二引数:オーナーパスワード
 第三引数:ユーザーパスワード
CreatePnelパネルをメモリに作成
 第一引数:パネルの横サイズ[ピクセル]
 第二引数:パネルの縦サイズ[ピクセル]
 第三引数:パネルの色空間
CreatePictMemPDFの指定ページをメモリ上に画像化
 引数にPDFのページ番号を指定
MemPictToPanelメモリ上のページ画像をパネルに描画
 第一引数:描画位置のX座標[ピクセル]
 第二引数:描画位置のY座標[ピクセル]
 第三引数:メモリ上の画像番号
GetPicturePixelYページの縦ピクセルサイズを取得
 引数にPDFのページ番号を指定
PanelToFileパネルデータをファイルに出力
 引数にファイル名を指定
   画像の形式は拡張子で判断
CloseDocPDF文書をクローズ
Uninitializeライブラリの終了
C# C/C++ Python 他のサンプル ダウンロード
from PdfImagerLP import Mlp,MlpConstant as kMlp

#インスタンス生成
mlp = Mlp();

#初期化
if mlp.Initialize("0-0GR2-HE110345R153") < 0:
    print("ライセンスキーが不正です。");
    exit()

#オープン
if mlp.OpenDoc("in.pdf") < 0:
    print("PDFファイルを開けません。")
else:
    #パネル
    if mlp.CreatePanel(1200, 1300, kMlp.PICTURE_RGB) >= 0:
        ySpan = 50
        panelX = 100
        panelY = ySpan
        mlp.CreatePictMem(1)    #第1ページ
        mlp.MemPictToPanel(panelX, panelY, 1.0)
        panelY += mlp.GetPicturePixelY(1) + ySpan    #第1ページの縦サイズとスパンを加える

        mlp.CreatePictMem(2)    #第2ページ
        mlp.MemPictToPanel(panelX, panelY, 1.0)

        mlp.PanelToFile("Panel.png");

    #文書クローズ
    mlp.CloseDoc()

#後始末
mlp.Uninitialize();
Initialize初期化
 引数にライセンスキー"0-0GR2-HE110345R153" (評価用ライセンスキー) を指定します。
OpenDocPDF文書をオープン
 第一引数:ファイルパス名
 第二引数:オーナーパスワード(省略可)
 第三引数:ユーザーパスワード(省略可)
CreatePnelパネルをメモリに作成
 第一引数:パネルの横サイズ[ピクセル]
 第二引数:パネルの縦サイズ[ピクセル]
 第三引数:パネルの色空間
CreatePictMemPDFの指定ページをメモリ上に画像化
 引数にPDFのページ番号を指定
MemPictToPanelメモリ上のページ画像をパネルに描画
 第一引数:描画位置のX座標[ピクセル]
 第二引数:描画位置のY座標[ピクセル]
 第三引数:メモリ上の画像番号
GetPicturePixelYページの縦ピクセルサイズを取得
 引数にPDFのページ番号を指定
PanelToFileパネルデータをファイルに出力
 引数にファイル名を指定
   画像の形式は拡張子で判断
CloseDocPDF文書をクローズ
Uninitializeライブラリの終了

オンラインでPDF文書を画像に変換

オンラインでPDFファイルを画像に変換します。

画像形式:

RGB:
CMYK:
Grayscale:


 

ご質問、お問い合わせ

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

PDF Toolsライト

PDF Imager-LPサンプル

PDF 構文解説

(ISO32000-1より)

PDF Tools C++サンプル