PDF Imager-LP PDF文書の複数ページを単一画像に変換 サンプル
PDF Imager-LP PDFの複数ページを1つの画像に変換 サンプルと解説
PDF Imager-LPは、PDF文書を画像(TIFF、JPEG、PNG、BMP)に変換するライブラリです。( PDF Imager-LP概要 )
価格見積り
オンライン画像変換で確認してください。
ここでは、PDFの指定したページを画像に変換するサンプルを示します。
ダウンロード:
PDF Imager-LPの無償体験版は、以下からダウンロードできます。無償体験版は、製品版と同じ機能が使えます。
利用許諾契約書をご確認のうえダウンロードしてください。ダウンロードしますと、利用許諾に同意したものとみなします。
評価利用では、ライセンスキーが必要です。
高機能な、画像変換ライブラリ「PDF to Image Converter」は、こちらです。
インストール
C# 開発環境 | C/C++ 開発環境 | Python 開発環境 |
ライブラリは無償でダウンロードでき、全機能を試用できます。
Imager-LPパッケージをダウンロードしてから、適当なフォルダーに解凍してください。
以下のようなフォルダーができますので適宜ご利用ください。
Imager-LPパッケージをダウンロードしてから、適当なフォルダーに解凍してください。
以下のようなフォルダーができますので適宜ご利用ください。
doc | ライブラリ説明書、利用許諾契約書 |
include | C/C++用ヘッダー(.h)ファイル |
lib | DLLライブラリ、Libファイル |
sample | C/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-032E-E03H5EW76R15")){ 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 | 初期化 引数にライセンスキー を指定します。 |
MlpOpenDoc | PDF文書をオープン 第一引数:ファイルパス名 第二引数:オーナーパスワード 第三引数:ユーザーパスワード |
MlpCreatePnel | パネルをメモリに作成 第一引数:パネルの横サイズ[ピクセル] 第二引数:パネルの縦サイズ[ピクセル] 第三引数:パネルの色空間 |
MlpCreatePictMem | PDFの指定ページをメモリ上に画像化 引数にPDFのページ番号を指定 |
MlpMemPictToPanel | メモリ上のページ画像をパネルに描画 第一引数:描画位置のX座標[ピクセル] 第二引数:描画位置のY座標[ピクセル] 第三引数:メモリ上の画像番号 |
MlpGetPicturePixelY | ページの縦ピクセルサイズを取得 引数にPDFのページ番号を指定 |
MlpPanelToFile | パネルデータをファイルに出力 引数にファイル名を指定 画像の形式は拡張子で判断 |
MlpCloseDoc | PDF文書をクローズ |
MlpUninitialize | ライブラリの終了 |
C# | C/C++ | Pyhon | 他のサンプル | ダウンロード |
using System; using PDFTools.PdfImagerLP; namespace Pln { class Pln { static void Main() { //初期化 PdfImager mlp = new PdfImager("0-032E-E03H5EW76R15"); //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 | 初期化 引数にライセンスキー を指定します。 |
OpenDoc | PDF文書をオープン 第一引数:ファイルパス名 第二引数:オーナーパスワード 第三引数:ユーザーパスワード |
CreatePnel | パネルをメモリに作成 第一引数:パネルの横サイズ[ピクセル] 第二引数:パネルの縦サイズ[ピクセル] 第三引数:パネルの色空間 |
CreatePictMem | PDFの指定ページをメモリ上に画像化 引数にPDFのページ番号を指定 |
MemPictToPanel | メモリ上のページ画像をパネルに描画 第一引数:描画位置のX座標[ピクセル] 第二引数:描画位置のY座標[ピクセル] 第三引数:メモリ上の画像番号 |
GetPicturePixelY | ページの縦ピクセルサイズを取得 引数にPDFのページ番号を指定 |
PanelToFile | パネルデータをファイルに出力 引数にファイル名を指定 画像の形式は拡張子で判断 |
CloseDoc | PDF文書をクローズ |
Uninitialize | ライブラリの終了 |
C# | C/C++ | Python | 他のサンプル | ダウンロード |
from PdfImagerLP import Mlp,MlpConstant as kMlp #インスタンス生成 mlp = Mlp(); #初期化 if mlp.Initialize("0-032E-E03H5EW76R15") < 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 | 初期化 引数にライセンスキー を指定します。 |
OpenDoc | PDF文書をオープン 第一引数:ファイルパス名 第二引数:オーナーパスワード(省略可) 第三引数:ユーザーパスワード(省略可) |
CreatePnel | パネルをメモリに作成 第一引数:パネルの横サイズ[ピクセル] 第二引数:パネルの縦サイズ[ピクセル] 第三引数:パネルの色空間 |
CreatePictMem | PDFの指定ページをメモリ上に画像化 引数にPDFのページ番号を指定 |
MemPictToPanel | メモリ上のページ画像をパネルに描画 第一引数:描画位置のX座標[ピクセル] 第二引数:描画位置のY座標[ピクセル] 第三引数:メモリ上の画像番号 |
GetPicturePixelY | ページの縦ピクセルサイズを取得 引数にPDFのページ番号を指定 |
PanelToFile | パネルデータをファイルに出力 引数にファイル名を指定 画像の形式は拡張子で判断 |
CloseDoc | PDF文書をクローズ |
Uninitialize | ライブラリの終了 |
オンラインでPDF文書を画像に変換
オンラインでPDFファイルを画像に変換します。