PDF Imager-LP PDF文書のインターラクティブ フォームのデータを表示 サンプル

PDF Imager-LP PDFのフォームに入力されたデータを表示する サンプル


Imager-LP

 価格見積り

PDF Imager-LPは、
  ・PDF文書を画像(TIFF、JPEG、PNG、BMP)に変換
  ・PDFメタデータをXMP解析・変更
  ・文書のFormに入力されたデータを抽出
  ・PDFのオブジェクト(PDFの構成要素)を抽出
を実施するライブラリです。( PDF Imager-LP概要


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

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

インストール


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文書のフォームとその内容を表示します。(PDF文書の内容はこちらです。)

C# C/C++ Python 他のサンプル ダウンロード
#include "ImagerLP.h"
#pragma comment(lib, "PdfImagerLP.lib")
static void showData(MlpFormData*);

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

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

    // 最初のフォームデータ
    MlpFormData res = MlpInteractiveFormFirstData();
    if (res.type > 0) {
        printf("*** FORM DATA ***\n");
        showData(&res);

        // 2番目以降のフォームデータ
        while(1) {
            res = MlpInteractiveFormNextData();
            if (res.type < 1) break;
            showData(&res);
        }
        printf("\n\n");
    }
    else
        printf("The document has not AcroForm\n\n");

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

    // 後始末
    MlpUninitialize();
}

static void showData(MlpFormData *data)
{
    static const char *FieldTypeName[] = {
        "","PushButton","CheckButton","RadioButton",
        "Text(Singleline)","Text(Multiline)","Text(File Path)","Text(Rich Text)","Password",
        "ListBox(Single)","ListBox(Multi)","ComboBox", };

    printf("%s [%s] ", FieldTypeName[data->type], data->name);
    if (data->valueLength)
        for (int i = 0; i < data->valueLength; i++)
            if (!data->GetValue(data, i)[i]) printf("\n\t%s", data->GetValue(data, i)[1]);
            else if (!data->GetValue(data, i)[1]) printf("\n\t%s", data->GetValue(data, i)[0]);
            else if (!strcmp(data->GetValue(data, i)[0], data->GetValue(data, i)[1])) printf("\n\t%s", data->GetValue(data, i)[0]);
            else printf("\n\t(%s)-%s", data->GetValue(data, i)[0], data->GetValue(data, i)[1]);
    else
        printf("\n\t(NoValue)");
    if (data->richText)
        printf("\n\t%s", data->richText);
    printf("\n");
}
MlpInitialize初期化
 引数にライセンスキー"0-0376-E7ERR03WK22G" (評価用ライセンスキー) を指定します。
MlpOpenDocPDF文書をオープン
 第一引数:ファイルパス名
 第二引数:オーナーパスワード
 第三引数:ユーザーパスワード
MlpInteractiveFormFirstData最初に記載されたフォームのデータを取得
MlpInteractiveFormNextData次に記載されたフォームのデータを取得
MlpCloseDocPDF文書をクローズ
MlpUninitializeライブラリの終了
変換結果:以下のようにフォントがリスト表示されます。
*** FORM DATA ***
Text(Singleline) [Name]
        坂本龍馬
RadioButton [Develop Lang]
        C Sharp
CheckButton [確認]
        確認済み
PushButton [Send]
        (NoValue)
入力のPDF文書はこちらです。

ご質問、お問い合わせ

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

PDF Toolsライト

PDF Imager-LPサンプル

PDF 構文解説

(ISO32000-1より)

PDF Tools C++サンプル