問題タブ [pdf-extraction]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
object - pdfboxを使用してpdfの最大フォントサイズを取得するにはどうすればよいですか
PDF からの一部の情報に pdfbox 抽出を使用していますが、すべてのオブジェクト情報を抽出するにはどうすればよいですか? それらのいずれかにストリームが含まれている場合、ストリームをデコードして表示するにはどうすればよいですか?
PDFボックスから最大フォントサイズを取得できますか? すべてのオブジェクトのフォントサイズを取得して並べ替えることができれば、最大のフォントサイズを持つオブジェクトを取得できると思いますか?
java - PDFファイルのテーブルの内容を抽出するには?
次のようにpdfでテーブルの内容を抽出したい:
PDFファイルの内容を1行ずつ読み取ることができるiText Java PDFライブラリを使用してこのJavaプログラムを作成しましたが、テーブルの内容を取得する方法がわかりません
これは私が得るものです:
しかし、それは私が望むものではありません。たとえば、各行をJava配列に保存するなど、テーブルの内容を行ごと、列ごとに抽出したい
最初の配列には、「N°」、「DATE OBSERVATIONS」、「TEXTE」が含まれます。
2 番目の配列には、「029/14」、「Le 1er sept 2014 remplace AVURNAV...」、「SETE A compter du lundi 7 juillet 2014 debuteront les trav...」が含まれます。
3 番目の配列には、「037/14」、「Le 15 octobre 2014 remplace AVURNAV ...」、「SETE Du 15 septembre 2014 au 15 juillet 2015、travaux ....」が含まれます。
等々
ありがとう
pdf - CID フォントを使用した PDF からのテキストの抽出
PDF の各ページの上部にある行を抽出する Web アプリを作成しています。PDF は、製品のさまざまなバージョンから取得され、さまざまなバージョンとさまざまな設定で、多数の PDF プリンターを通過する可能性があります。
これまでのところ、PDFSharp と iTextSharp を使用して、すべてのバージョンの PDF で動作させることができました。私のハングアップは、CID フォント (Identity-H) を含むドキュメントにあります。
フォント テーブル参照とテキスト ブロックを見つける部分的なパーサーを作成しましたが、これらを読み取り可能なテキストに変換するのが面倒です。
誰もが次のいずれかを持っていますか? - CID フォントに対応するパーサー (このhttps://stackoverflow.com/a/1732265/5169050など)。または - ページ リソース ディクショナリを解析してページ フォントを見つけ、その ToUnicode ストリームを取得してこの例を完成させる方法のサンプル コード ( https://stackoverflow.com/a/4048328/5169050 )
無料で使用できるライセンスを保持するには、iTextSharp 4.1 を使用する必要があります。
これが私の部分パーサーです。
itextsharp - iTextSharp は、ラップされたセルの内容を新しい行に抽出します - 特定のラップされたデータが現在どの列に属しているかをどのように識別しますか?
PDFからデータを抽出するためにiTextSharpを使用しています。以下のシナリオで示されている次の問題に出くわしました。
説明のためにサンプルの Excel ファイルを作成しました。これは次のようになります。
そこにある多くの無料のオンラインコンバーターの1つを使用して、それをpdfに変換します。これにより、次のようなpdfが生成されます(pdfを生成したときに、スタイルをExcelに適用しませんでした)。
ここでiTextSharp
、pdf からデータを抽出するために使用すると、抽出されたデータとして次の文字列が返されます。
ご覧のとおり、ラップされたセル データは新しい行を生成し、ラップされたデータの各部分は 1 つの空白で区切られます。
問題:ラップされたデータの特定の部分がどの列に属しているかをどのように識別するのですか? iTextSharp
列と同じ数の空白のみを保持する場合...
私の例では、 111がどの列に属しているかをどのように特定できますか?
更新 1:
フィールドに複数の単語が含まれる (つまり、空白が含まれる) 場合は常に、同様の問題が発生します。たとえば、上記のサンプルの 1 行目を考えてみます。
似ていたと言う
iText はこの場合も、次のように抽出を生成します。
ここでも同じ問題があり、各列の境界を決定する必要があります。
vb.net - 長方形からテキストを抽出するときのItextSharpアナグラム出力
ItextSharp を使用して四角形からテキストを抽出しようとしていますが、一部の特定の領域を除いて、ドキュメント内のほぼすべてのセクションで正常に機能します。これらの領域は、シンプルな太字のタイトルと、ドキュメントの残りの部分よりもわずかに小さいフォント (両方とも大文字) のシンプルなコンテンツです。これらの領域では、正しい単語ではなく、選択したテキストのアナグラムを取得します。
たとえば、「RELEASE」という単語は「ERLEASE」、「VOYAGE」は「EGAYVO」、「FURTHER CHARGES」という文は「FHTRU ER CHAGRES」となります。
奇妙なことに、 でページ全体を表示しようとするとSimpleTextExtractionStrategy
、正しいテキストが得られます。
PDFのフォントは古典的なArialであり、抽出に使用した戦略はStackOverflowから取得されます(引数によって渡されます):
他のドキュメントで試してみましたが、非常にうまく機能します。別のドキュメントでこの問題を再現することはできません。
私は自分のコードが心配で、この戦略も試しました: http://www.schiffhauer.com/read-text-in-a-pdf-in-c-with-itextsharp/ しかし、結果は同じです。
読み取りプロセスで何かが欠けていますか、それとも私の pdf に関連する問題ですか?
更新: 誤った単語の 1 文字を選択すると、出力は空の文字列になります。これは、複数の文字を一緒に選択した場合にも発生し、単語全体を選択した場合にのみ (アナグラム) 出力を取得します。たとえば、「CARGO RELEASE」という単語があり、四角形で「GO」のみを選択するか、他の部分文字列を選択すると何も表示されませんが、「CARGO」を選択すると「GRACO ERLESAE」が取得され、 2 番目の単語は選択していません。最初の単語のみを選択しています。