Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
使用 pdfbox,如何只复制页面资源而不是为单个页面复制文档的所有资源?这是我用来提取页面并将其添加到新文档的代码,但这会创建一个大文件,我认为即使我添加一个页面,它也会复制文档的所有资源。有什么方法可以压缩内容吗?
pageToAdd = (PDPage) billDoc.getDocumentCatalog().getAllPages().get(j-1); outputDoc.addPage(pageToAdd);
添加或拆分页面时,您只能复制所需的资源。这完全取决于您的需求或您想要完全添加/删除的内容。您还可以检查 mergeInto() 以合并 COS 字典。例如仅复制字体:
PDResources res = pageToAdd.getResources(); PDResources newres = new PDResources(); newres.setFonts(res.getFonts()); pageToAdd.setResources(newres); outputDoc.addPage(pageToAdd);