gpt4 book ai didi

java - iText - 无需 PDF 文件即可即时生成文件

转载 作者:行者123 更新时间:2023-12-02 14:03:22 25 4
gpt4 key购买 nike

我正在尝试使用 iText 生成 pdf 文件,但我有一个关于生成的问题。我想将 PDF 提供给浏览器,以便浏览器显示它,而不实际创建文件。

实现这一目标的最佳方法是什么?

一个限制是我需要从 JSP 页面使用它 - 我正在寻找能够避免“getOutputStream 已被调用一次”错误的东西。

最佳答案

I would like to serve the PDF to the browser so that the browser displays it, without actually creating a file.

只需通过responsegetOutputStream()而不是new FileOutputStreamPdfWriter .

PdfWriter pdfWriter = PdfWriter.getInstance(document, response.getOutputStream());
// ...
<小时/>

One limitation is that I would need to use it from a JSP page - something that would circumvent the "getOutputStream has already been called once" error is what I am looking for.

只需删除 <% %> 之外的任何空格即可在 JSP 中,包括换行符。它们由响应编写器隐式发送到响应。

即不要

<% page import="foo" %>
<% page import="bar" %>

<%
for (int i = 0; i < 1000; i++) {
out.println("I should not use scriptlets.");
}
%>

(newline here)

但更是如此

<% page import="foo" %><% page import="bar" %><%
for (int i = 0; i < 1000; i++) {
out.println("I should use servlets.");
}
%>

或者更好的是,不要将 Java 代码放入 JSP 文件中。 JSP 文件被设计为像 HTML 一样呈现模板文本,而不是做完全不同的事情。在普通的 Java 类(如 servlet)中执行此操作。

关于java - iText - 无需 PDF 文件即可即时生成文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9268165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com