【发布时间】:2019-08-15 19:40:25
【问题描述】:
经过大量研究,我仍然找不到从 PdfDocument 对象中提取byte[] 的方法。我怎样才能做到这一点?
我尝试过使用 FileInputStream,但实际上我没有 PdfDocument 的“物理路径”,因为我正在以编程方式创建一个。此外,我对byte[] 不是很熟悉。
有人可以帮我解决这个问题吗?
PdfDocument pdfDocumentWithoutSplit = getPdfUtils().generatePdfDocumentByMedia(shippingLabel);
for (int i = 1; i < pdfDocumentWithoutSplit.getNumberOfPages() + 1; i++) {
final ByteArrayOutputStream pdfByteArray = new ByteArrayOutputStream();
final PdfDocument pdfDocument = new PdfDocument(new PdfWriter(pdfByteArray));
pdfDocument.movePage(pdfDocumentWithoutSplit.getPage(i), i);
pdfByteArray.close();
//now here I need to get the bytes of each pdfDocument somehow
}
干杯
【问题讨论】:
-
可以加代码吗?更明确地说“我正在以编程方式创建一个”,你的目标是什么?如果您正在创建 PDF,则意味着您将文本保存在某个变量中,很可能是 String,因此您可以从 String 中提取字节数组。如果你想从 PdfDocument 格式中提取字节数组,你可以创建一个 pdf temp
-
我实际上实现了将心理 pdf 的页面拆分为 PdfDocuments(1 页,1 个 PdfDocument),现在我需要获取这个 PdfDocuments 的字节,它们都没有心理路径。我在我的代码问题中添加了一个 sn-p
标签: java arrays pdf inputstream itext7