2

cups pdf で生成された Java の pdf ボックスで pdf ファイルを解析しようとすると、ジャンク文字が表示されます。しかし、それは一般的なpdfで完全に機能します。私がチェックしたフォントカップのpdfはFreeMono_00.ttfを示しています(しかし、私はそのようなフォントをどこにも見ませんでした)、動作するpdfはArialMTを示しています。

cups-pdf を使用して生成された pdf を解析するために別の方法でやりたいこと。

以下は、解析に使用しているコードです。

parser = new PDFParser(new FileInputStream(File file));
parser.parse();
           COSDocument  cosDoc = parser.getDocument();
           PDFTextStripperpdfStripper = new PDFTextStripper();
          PDDocument  pdDoc = new PDDocument(cosDoc);
 String parsedText = pdfStripper.getText(pdDoc); 

出力はこのようになります

コピーペーストするだけでもこのようになります

4

1 に答える 1

1

私は読んだことを繰り返しているだけです...私はここで経験が浅いです。PDF / PDFBoxの質問に答えるメイヴンがもっといたら、答えるのを待ちます。

フォントにUnicodeテーブルがまったく含まれていないか、Unicodeテーブルなしでドキュメントに埋め込まれていると思います。テキストが単一の特定のドキュメントの単純な換字式暗号であると思われる場合、これを確認する傾向があります。

フォントが埋め込まれている場合、実際に使用しているグリフの抜粋だけが埋め込まれていることがあると思います。フォントがシステムにインストールされておらず(あなたが言ったように)、元のFreeMonoフォントが大きく(4000グリフを超える)、これはおそらくここにあります。この場合、文字とグリフの対応がドキュメントに依存するのではないかと心配していますが、推測しています。

于 2012-09-14T01:17:00.943 に答える