为了账号安全,请及时绑定邮箱和手机立即绑定

使用 iText 在 Java 中合并 PDF 时出现意外的不同页面大小

使用 iText 在 Java 中合并 PDF 时出现意外的不同页面大小

狐的传说 2021-12-01 17:05:59
我有以下代码片段来合并两个单页 PDF 文件(第一个和第二个):byte[] codes = IOUtils.toByteArray(resource.getURI());PdfReader first = new PdfReader(firstBytes);PdfReader second = new PdfReader(secondBytes);Document document = new Document(PageSize.A4);ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();PdfCopy copy = new PdfCopy(document, byteArrayOutputStream);document.open();copy.addDocument(first);copy.addDocument(second);document.close();return byteArrayOutputStream.toByteArray();接下来我有以下测试:byte[] generated = new Merger(...).generate(...); // Location of the snippet aboveFile file = new File("dir", "generated.pdf");FileUtils.writeByteArrayToFile(file , generated);PdfReader pdfReader = new PdfReader(new FileInputStream(file));assertThat(pdfReader.getNumberOfPages()).isEqualTo(2);此测试在本地运行良好,但在我们的构建服务器上失败。在本地生成的 PDF 看起来只包含两个 A4 页面在构建服务器上有三个页面:第一个文件一页空白第二个文件前两页好像是letter格式,而最后一页好像是A4纸。我该如何解决?编辑:一些额外的信息。本地操作系统是 Windows。构建系统运行Linux。
查看完整描述

1 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

第一个生成的文档是使用飞碟库生成的。它是通过在 css 中设置页面大小来修复的。

我对问题所在位置的假设是完全错误的。对不起。


查看完整回答
反对 回复 2021-12-01
  • 1 回答
  • 0 关注
  • 467 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信