在我的应用程序中,我需要阅读现有的pdf并将条形码添加到现有PDF并将其传递给输出流。这里现有的pdf就像模板一样。我正在使用iText jar添加条形码。
我想知道将PdfStamper
对象转换为字节数组或PdfContentByte
转换为字节数组的可能性。任何人都可以帮忙吗?
答案 0 :(得分:1)
你的问题不清楚。我假设您要写入ByteArrayOutputStream
而不是FileOutputStream
。有关如何在iText网站上进行此操作的不同示例。
例如,请参阅FormServlet示例:
// We create an OutputStream for the new PDF
ByteArrayOutputStream baos = new ByteArrayOutputStream();
// Now we create the PDF
PdfStamper stamper = new PdfStamper(reader, baos);
然后在示例中,我们这样做:
// We write the PDF bytes to the OutputStream
OutputStream os = response.getOutputStream();
baos.writeTo(os);
如果你想要一个byte[]
,你可以这样做:
byte[] pdfBytes = baos.toByteArray();
我希望您的问题不是将PdfContentByte
流写入byte[]
,因为这没有意义:内容流不包含任何资源,如字体,图片,表单XObjects等......