使用iText在浏览器中打开生成的PDF

我正在使用PDFStamper生成PDF文件,然后我想传递它在浏览器中打开 . 我的代码在JSP文件中 . 我实际生成PDF到桌面的代码可以工作但不能路由到浏览器 . 以下是我的代码 .

PdfReader reader = new PdfReader("/path/pdfs/raw.pdf");
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        PdfStamper stamper = new PdfStamper(reader, baos);
        PdfContentByte canvas = stamper.getOverContent(1);
        BaseFont font = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.EMBEDDED);
        canvas.setFontAndSize(font, 12);
        canvas.beginText();
        canvas.showTextAligned(Element.ALIGN_LEFT, "TEST! TEST! TEST! TEST! ", 80, 713, 0);
        canvas.endText();
        stamper.close();
        reader.close();
        String filename="test.pdf";
        response.setContentType("application/pdf");
        response.setHeader( "Content-Disposition", "filename=" + filename );
        response.setContentType("application/pdf");
        OutputStream os = response.getOutputStream();
        baos.writeTo(os);
        os.flush();

这当前打开一个空白页面 - 我不确定我到底做错了什么 .

我可以使用iText Document来完成这项工作但是因为我打开现有文档并添加内容我必须使用PDFStamper,这就是问题所在 . 我已经确认阅读器中存在PDF文件,可以通过浏览器直接访问该位置 .

任何帮助,将不胜感激!使用,Struts2,Tile2,Weblogic,Java,iText

回答(0)