• ベストアンサー

pdfファイルについて

こんばんは。 pdfファイルについて教えてください。 A4サイズのpdfファイルの中にある決まった位置に記載されている 文字を判別する方法はありますでしょうか。 何をしたいかといいますと 認識した文字でファイル名を登録したいです 何かヒントでもいただけると助かります。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ballville
  • ベストアンサー率47% (233/487)
回答No.3

技術者カテゴリーでの質問ですので、技術者向けの回答を。 pdfは書式文字列とデータからなるテキストファイル(データ部分にバイナリを含むこともある)ですので、書式さえ理解していれば、そこから情報を抜き出すことは可能です。 http://www.pdf-tools.trustss.co.jp/Syntax/fileStructOvv.html https://techracho.bpsinc.jp/west/2018_12_07/65062 とはいえ、実際に書式定義に従ってPDFを人力で解析するのはとても大変です。そこで、多くは解析・操作を手助けしてくれるライブラリを使います。 有名どころでitextを挙げておきます。 https://itextpdf.com/en javaプログラマなら、そのまま使えます。 もしwindowsプログラマなら、dotnetに対応したitextsharp https://www.nuget.org/packages/itext7/ をC#などから利用すればいいと思います。

shin-cyan
質問者

お礼

ご回答ありがとうございます。

その他の回答 (3)

  • ballville
  • ベストアンサー率47% (233/487)
回答No.4

3で回答しましたが、その後ドンピシャのQ&Aをstackoverfowで見つけたので、自分自身の備忘も兼ねて、参考URLに記しておきます。 Qを和訳すれば「座標指定によるPDFのテキスト抽出」あたりでしょうか。 先の回答ではライブラリとしてitextを紹介しましたが、このQ&AではapacheのPDFBox を使っています。 apacheのサイト https://svn.apache.org/repos/asf/pdfbox/site/publish/userguide/dot_net.html?p=1197837 ビルドして配布しているサイト http://www.squarepdf.net/pdfbox-in-net

参考URL:
https://stackoverflow.com/questions/7405267/extract-pdf-text-by-coordinates
shin-cyan
質問者

お礼

ご回答ありがとうございます。

  • chachaboxx
  • ベストアンサー率23% (412/1777)
回答No.2

絶対に出来ない内容でもないですが、非常に高いプログラミングスキルを必要とします。 まず大前提として、ある決まった位置 の情報がテキストデータとして読めることが必要です。 たとえば、pdfページ内の写真に写ってる文字を読み取るとなると画像認識からの取り組みになりますが、テキストデータを読み取るのなら、ファイルの先頭から何バイト目とかの指定が可能になります。 うまく文字を読み取れたなら、バッチ処理等でそのファイル名を抽出した文字を使ってリネームします。リネームが失敗するなら、新しい文字列のファイル名にコピー処理します。 pdfはバイナリーデータなので、その辺の気遣いも必要です。

shin-cyan
質問者

お礼

ご回答ありがとうございます。

  • TIGANS
  • ベストアンサー率35% (245/681)
回答No.1

Acrobatもってないので推測ですが Acrobat DC SDK で領域をトリミングして切り出して領域PDFを作り それをpdf2ascなどでテキスト化して流せば切り出せるのでは。 (領域をうまく設定しないとフォントが図形化されたりゴミが入るかも) https://help.adobe.com/en_US/acrobat/acrobat_dc_sdk/2015/HTMLHelp/index.html#t=Acro12_MasterBook%2FJS_Dev_PDFCreation%2FCropping_and_rotating_pages.htm&rhsearch=trim&rhhlterm=trim&rhsyns=%20

shin-cyan
質問者

お礼

ご回答ありがとうございます。

関連するQ&A