トラスト・ソフトウェア・システム
トラスト・ソフトウェア・システム

PDF Prep Tool Suite テキスト抽出C#サンプル

「PDF Prep Tool Suite」ソフトは、PDF文書を作成、編集、分割、統合するためのAPI(ライブラリ)です。

PDF文書にテキスト・コンテント、画像、ベクタ・グラフィックスを追加します。 さらに、インターラクティブな要素(ハイパー・リンク、フォーム・フィールド、ブックマークなど)を追加し処理します。

PDF文書は、新たに生成することができます。プロパティ(位置、フォント、サイズ、色など)は自由に選択できます。 作成されたPDF文書には、暗号化やWebの表示用に最適化が施されます。

機能概要はこちらです。
無償評価版(リンク先は英語)はこちらです。 ダウンロード手順
他のC#サンプルC++サンプルを公開しています。
PDF Prep Tool Suite ソフト 購入(価格)

無償評価版のダウンロードとインストール

 ライブラリ(評価版API)は無償でダウンロード(試用)できますので、PDF Prep Tool Suiteダウンロード手順を参照してダウンロードください。
 ファイルをダウンロードしてから、インストールもしくは適当なフォルダーに解凍します。以下のようなフォルダーができあがりますので、適宜ご利用ください。
binライブラリやライセンスマネージャーなど
doc使用説明書やjavadocなど
includeC/C++用のヘッダー(.h)ファイル
jarPrepTool.jar、I2PA.jar(Javaのラッパー)
libC/C++用のlibファイル
ご注意ください:サンプル(英語版)はPDF Tools AG社のページからダウンロードできますが、それを動作させるためにはコードの変更が必要な場合があります。
以下のサンプルは、正しい動作を確認しています。ソースコードはこちらからダウンロードできます。

無償評価版と共にダウンロードしたライセンスキーをbin/LicenseManager.exeを使って登録してください。 ライセンスキーの登録方法はこちらです。

COMインターフェースとして、bin/pdprep32.dll、bin/Img2PdfAPI.dllをregsvr32.exeを使って登録してください。なお、64ビット版Windowsの場合は、WOW64/regsvr32.exeを使って登録してください。
文字化けする場合は、bin/pdcjk.dllをサンプル実行イメージと同じフォルダーにコピーしてください。

参照設定

C#プロジェクトでは、以下のように.NET用DLLの参照を設定します。なお、サンプルは、基本的にコンソールアプリケーションです。
  1. C#プロジェクトを新規に作成します。
  2. PDF Prep Tool SuiteライブラリのNETラッパを参照する設定をします。
  3. Visual Studio C#のメインメニューで、「プロジェクト(P)」→「参照の追加(R)...」を選択します。
    以下のようなダイアログが表示されますので、解凍して作成されたフォルダーの「bin」に格納されている.NET用のDLLおよびpdprep32.dllを指定します。
    PDF Prep Tool参照設定

PDFからテキストを抽出するC#サンプルと解説

 PDF文書解析して、すべてのテキストをページ番号とフォントや位置情報を含めて抽出します。
using System;
using PREPTOOLLib;

namespace txt
{
    class Txt
    {
        static void Main(string[] args)
        {
            //インスタンス生成
            IDoc doc = new IDoc();

            //入力ファイルを開く
            doc.Open("input.pdf", null);

            //ページ内のテキストを順にチェック
            TToken tkn;
            int iPage = 0;
            doc.GoPage(iPage);
            doc.BreakOnBlank(1);
            Console.WriteLine("** {0} **", iPage);
            while (true)
            {
                tkn = doc.GetToken();
                if (tkn.Text == "") break;  //空の文字列が戻った場合に終了とする
                Console.WriteLine("\t{0},{1},{2}\t{3}", tkn.X, tkn.Y, tkn.Font, tkn.Text);
            }
        }
    }
}
このサンプルでは、以下の手順でPDFを解析します。
  1. PDFを操作するインスタンスを生成
  2. 入力ファイルを開く
  3. ページを指定します
  4. ページ内のテキストを順にチェック
    抽出する文字列が空になるまで繰り返します。
IDoc doc = new IDoc() インスタンス生成
doc.Open( ) 入力ファイルを開く
第一引数PDF文書のファイル(パス)名
第二引数PDFを暗号化した際のパスワード
暗号化されていない場合は、nullまたは空白文字列を指定します。
doc.GoPage( ) 解析するページを指定
引数にページ番号を指定します。
doc.BreakOnBlank( ) 空白文字を区切りに利用
Trueの場合(区切りに利用する)に“1”を指定します。
doc.GetToken() トークンを順に取得

サンプルコード

 C# PDF Prep Tool Suite サンプル (MS Visual Studio 2008 Project) PtsCspSamples.zip

ご質問、お問い合わせ

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

(記載の会社名および製品名は、各社の登録商標および商標です。)
PDF製品 C#サンプル
PDF Security
PDF Validator
PDF to PDF/A Converter
PDF to Image Converter
PDF Imager-LP
Image to PDF Converter
PDF Printer
PDF Viewer
PDF Viewer-L
PDF Prep Tool Suite
PDF Optimization
PDF Command Line Suite
PDF Extract
PDF Easy Parse
株)トラスト・ソフトウェア・システム
暗号化・電子署名・タイムスタンプ ライブラリ作成します。
お問い合わせください。