Spire.PDF for Java 10.4.4 现已正式发布。该版本支持获取关键字的字体名和字体大小,并修复了转换后的 PDFA2B 文件未通过验证的问题。详情请查阅以下内容。
新功能:
- 支持获取关键字的字体名和字体大小。
- PdfTextReplacer 类支持通过正则表达式匹配。
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile(inputFile);
PdfPageBase page = pdf.getPages().get(0);
PdfTextFinder finds = new PdfTextFinder(page);
finds.getOptions().setTextFindParameter(EnumSet.of(TextFindParameter.IgnoreCase));
List<PdfTextFragment> result = finds.findAllText(page);
StringBuilder str = new StringBuilder();
for (PdfTextFragment find : result)
{
str.append("FontName:"+find.getTextStates()[0].getFontName());
str.append("FontSize:"+find.getTextStates()[0].getFontSize());
str.append("FontFamily:"+find.getTextStates()[0].getFontFamily());
str.append("Bold:"+find.getTextStates()[0].isBold());
str.append("Italic:"+find.getTextStates()[0].isItalic());
str.append("ForegroundColor:"+find.getTextStates()[0].getForegroundColor());
}
PdfDocument doc = new PdfDocument();
doc.loadFromFile("input.pdf");
PdfTextReplaceOptions textReplaceOptions = new PdfTextReplaceOptions();
textReplaceOptions.setReplaceType(EnumSet.of(ReplaceActionType.Regex));
PdfPageBase page = doc.getPages().get(0);
PdfTextReplacer textReplacer = new PdfTextReplacer(page);
textReplacer.setOptions(textReplaceOptions);
String regularExpression = "\\bS\\w*L\\b";
textReplacer.replaceAllText(regularExpression, "NEW");
doc.saveToFile("output.pdf");
doc.dispose();
问题修复:
- 修复了转换后的 PDFA2B 文件未通过验证的问题。
获取 Spire.PDF for Java 10.4.4 请点击: