使用 MVC 框架在 C# 中使用 iTextSharp 生成并查看动态创建的 pdf

发布于 2024-09-06 22:03:46 字数 54 浏览 5 评论 0原文

是否可以使用 iTextSharp 动态生成 pdf 并通过 Json 调用在新窗口中查看它?

Is it possible to generate the pdf dynamically using iTextSharp and view it in a new window through a Json call?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你怎么这么可爱啊 2024-09-13 22:03:46

除非 JSON 请求要进行一些检查或测试,否则使用 Json 执行此操作没有任何优势。我建议创建一个特殊的 HttpHandler,它在收到请求后生成 PDF 并将其返回给浏览器。这样你就可以有一个超链接,它将打开一个新窗口并在其中显示 pdf:

<a href="link to the handler" target="_blank">Open PDF</a>

There is no advantage in doing this with Json unless the JSON request is going to do some checking or testing. I suggest to create a special HttpHandler which upon receiving a request, generates the PDF and returns it back to the browser. This way you can have a hyperlink which will open a new window and shows the pdf in it:

<a href="link to the handler" target="_blank">Open PDF</a>
旧情别恋 2024-09-13 22:03:46

为什么要使用Json?我认为有一个最简单的方法。例如:

<%= Html.ActionLink("View pdf","GeneratePdf","YourController" new{}, new{target="_blank"}) %>

在你的控制器中

public ActionResult GeneratePdf()
{
     Document pdfDocument = new Document();
     MemoryStream stream = new MemoryStream();
     PdfWriter.GetInstance(pdfDocument,stream); 
     //add some code to generate your pdf content
     pdfDocument.Close();
     return new FileResult(stream,"application/pdf");
}

Why do you want to use Json? I think there is an easiest way. Ex:

<%= Html.ActionLink("View pdf","GeneratePdf","YourController" new{}, new{target="_blank"}) %>

In your controller

public ActionResult GeneratePdf()
{
     Document pdfDocument = new Document();
     MemoryStream stream = new MemoryStream();
     PdfWriter.GetInstance(pdfDocument,stream); 
     //add some code to generate your pdf content
     pdfDocument.Close();
     return new FileResult(stream,"application/pdf");
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文