[英]How fill form of an existing PDF and then add it to a new PDF using itext
我正在使用以下代碼
PdfReader reader = new PdfReader(src);
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
AcroFields form = stamper.getAcroFields();
form.setField("name", "John");
stamper.setFormFlattening(true);
stamper.close();
reader.close();
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(dest2));
document.open();
PdfContentByte cb = writer.getDirectContent();
//Loading the filled form again as a file
PdfReader reader2 = new PdfReader(dest);
PdfImportedPage page = writer.getImportedPage(reader2, 1);
document.newPage();
cb.addTemplate(page, 0, 0);
document.newPage();
document.add(new Paragraph("my timestamp"));
document.close();
在這里,我再次加載已填充的文件以添加到新的pdf文件中,如何將已填充的pdf從內存添加到新的pdf而不再次加載為文件。
如何從內存中將填充的pdf添加到新的pdf中,而無需再次加載為文件。
在
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
用ByteArrayOutputStream
實例替換FileOutputStream
。
然后在
PdfReader reader2 = new PdfReader(dest);
使用接受字節數組的PdfReader
構造函數,並從ByteArrayOutputStream
實例向其提供字節數組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.