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-0G13-43RG03WW9161")){
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-0G13-43RG03WW9161");
//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-0G13-43RG03WW9161") < 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ファイルを画像に変換します。
![]()