2

pdfboxを使用してpdfからフォントタイプのスタイル属性を取得する方法

4

1 に答える 1

1

PDF ドキュメント内の 1 文字のフォントを取得したい場合は、 を呼び出すことができますtextPosition.getFont().getFontDescriptor().getFontName()。ここで、textPosition はクラス TextPosition のインスタンスです。

PDF ドキュメントのすべての文字は、TextPosition オブジェクトに関連付けられています。

processTextPosition(TextPosition t)PDFTextStripper のメソッドをオーバーライドするか、PDFTextStripperのメソッドを使用して、PDF ドキュメントの TextPosition オブジェクトを取得できますgetCharactersByArticle()

つまり、後者の場合 - PDFStripper クラスを次のように拡張します。

public class MyPDFTextStripper extends PDFTextStripper {

    public MyPDFTextStripper() throws IOException {
        super();
    }

    public Vector<List<TextPosition>> myGetCharactersByArticle() {
        return getCharactersByArticle();
    }
}

... 単一ページの TextPositions のリストを取得するには:

MyPDFTextStripper stripper = new MyPDFTextStripper();
PDDocument doc = PDDocument.load(new File(filename));
stripper.setStartPage(pageNr+1);
stripper.setEndPage(pageNr+1);
stripper.getText(doc);
Vector<List<TextPosition>> list = stripper.myGetCharactersByArticle();

...そして最後に、単一の文字のフォントを取得するには、次のように入力します。

textPosition.getFont().getFontDescriptor().getFontName()
于 2014-10-03T15:15:30.423 に答える