У меня есть координаты выделенного текста в формате PDF. И я использую PDFTextStripperByArea, чтобы добавить и извлечь регион, чтобы получить текстовую информацию.
Но я хочу получить информацию о шрифте выбранного текста. Когда я использую метод getResources () класса PDFTextStripperByArea, он возвращает null. Вот пример кода -
PDFTextStripperByArea stripper = new PDFTextStripperByArea();
stripper.setSortByPosition(true);
Rectangle2D rect = new Rectangle(96, 150, 101, 11);
stripper.addRegion("selectedText", rect);
PDPage firstPage = document.getPage(0);
stripper.extractRegions(firstPage);
System.out.println(stripper.getTextForRegion("selectedText"));
PDResources resources = stripper.getResources();
// gives a null pointer exception for resources object in the below line
for (COSName fontName : resources.getFontNames())
{
PDFont font = resources.getFont(fontName);
System.out.println(font.getFontDescriptor().getFontName());
System.out.println(font.getFontDescriptor().getFontFamily());
System.out.println(font.getFontDescriptor().getFontWeight());
System.out.println(font.getName());
System.out.println(font.getSubType());
}
Я что-то не так делаю или есть другой способ добиться этого?