PDF Imager-LP 単一画像に複数ページを縮小して作成 C#サンプル

PDF Imager-LP 単一画像に複数ページを縮小して作成 C#サンプルと解説

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

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

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

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


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

インストール

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

PDFの複数ページを縮小して単一画像に変換する C#サンプルコード

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

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

using System;
using PDFTools.PdfImagerLP;

namespace onePanel
{
    class onePanel
    {
        static void Main(string[] args)
        {
            //初期化
            PdfImager mlp = new PdfImager();
            if (mlp.Initialize("") != 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);
            }

            //解像度
            mlp.SetPictureResolution(72 / 2);  //50%サイズ指定(省略可)

            //フレーム (この項目は省略可)
            mlp.SetPictureAddFrame(true);
            mlp.SetPictureFrameWidth(5);
            mlp.SetPictureFrameRGB(1.0, 0.0, 0.0);
            mlp.SetPictureFrameGray(1.5f);
            mlp.SetPictureFrameAlpha(0.3f);

            //パネル
            if (mlp.CreatePanel(1200, 1300, PictureOpt.PICTURE_RGB) == 0)
            {
                int xSpan = 50, ySpan = 50;
                int panelX = xSpan;
                int panelY = ySpan;

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

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

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

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

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

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

            //後始末
            mlp.Uninitialize();
        }
    }
}
Initialize 初期化
引数にライセンスキーを指定します。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
OpenDoc PDFファイルを開く
指定したファイルが画像への変換対象になります。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数に以下を指定します。
第一引数:PDFファイル名
第二引数:オーナーパスワード(パスワードで暗号化されている場合)、またはNULL
第三引数:ユーザーパスワード(パスワードで暗号化されている場合)、またはNULL
第一引数PDFファイル名
第二引数オーナーパスワード(パスワードで暗号化されている場合)、またはNULL
第三引数ユーザーパスワード(パスワードで暗号化されている場合)、またはNULL
CreatePanel ページ画像を貼り付ける画像を生成します。
この画像を「パネル」と称します。このパネルに複数のページ画像を貼り付けます。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数に以下を指定します。
第一引数:パネル画像の横幅画素数
第二引数:パネル画像のライン数(縦の画素数)
第三引数:PICTURE_RGB(カラー)またはPICTURE_GRAY(グレースケール)
第一引数パネル画像の横幅画素数
第二引数パネル画像のライン数(縦の画素数)
第三引数PICTURE_RGB(カラー)またはPICTURE_GRAY(グレースケール)
CreatePictureMem  ページ画像をメモリーに作成します。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数にはページ番号を指定します。
MemPictToPanel メモリーに作成したページ画像をパネルに貼り付けます。
成功すると、0(ゼロ)が戻ります。それ以外はエラーです。
引数に以下を指定します。
第一引数:ページ画像を貼り付けるパネルの横位置(X座標)
第二引数:ページ画像を貼り付けるパネルの縦位置(Y座標)
第三引数:ページ画像の不透明度(0~1.0)を指定します。0は透明、1.0は不透明です。
第一引数ページ画像を貼り付けるパネルの横位置(X座標)
第二引数ページ画像を貼り付けるパネルの縦位置(Y座標)
第三引数ページ画像の不透明度(0~1.0)を指定します。0は透明、1.0は不透明です。
GetPicturePixelX 指定ページの幅(横方向)画素数を取得します。
引数にはページ番号を指定します。
GetPicturePixelY 指定ページの高さ(縦方向)画素数を取得します。
引数にはページ番号を指定します。
PanelToFile パネルを画像ファイルとして作成します。
成功すると、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)形式
CloseDoc開いたPDFファイルを閉じます。
Uninitialize 終了します。

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

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++サンプル