如何使用PDFBox更改嵌入式资源的字体

时间:2018-12-07 13:20:36

标签: java pdfbox

我正在尝试摆脱使用多年的自定义字体。根据规定,我需要用一种常见的字体替换这种字体。 无论如何,我试图编写一个JUnit Test来使用PDFBox更改pdf的字体。

这就是我所做的:

@Test
public void changeFontOfAllPdfsToArial() throws Exception {
    PDDocument document = PDDocument.load(new File("src/test/broken_pdf.pdf"));     
    for(PDPage page : document.getPages()) {
        PDResources resources = page.getResources();
        for(COSName key : resources.getFontNames()) {
            PDFont font = resources.getFont(key);
            System.out.println(font.getFontDescriptor().getFontName());
            if(resources.getFont(key).toString().contains("CUSTOM")) {
            }
        }
    }

    document.save(new File(PDFs.get(0).getAbsolutePath() + "_test"));

}

遍历列表将为我提供文档的所有字体。 我正在获取资源的COSName键,但是如何更改它的字体?谢谢你的帮助!

€:提一下:字体是嵌入的。

0 个答案:

没有答案