我正在使用iTextSharp生成pdf。我想在网页上显示它,让用户从在线pdf查看器中保存它。 dynamicpdf 有一个drawtoweb()方法,但它不能免费使用,我无法使用iTextSharp找到相同的功能。如何显示pdf?
string newFile = "Pdf Document.pdf";
Document doc = new Document();
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(newFile, FileMode.Create));
doc.AddCreator("Myself");
doc.AddTitle("Sample PDF Document");
doc.Open();
doc.Add(new Paragraph("Hello, World!"));
doc.Close();
答案 0 :(得分:2)
您是否有理由不像其他任何网站那样只显示PDF?只需将生成的文件作为具有正确元数据的响应流发送给用户。它将在其默认的PDF查看器中自动打开,最有可能在浏览器中打开 据我所知,DrawToWeb method of dynamicpdf正是它正在做的事情。
<强>更新强>
一些研究提出了这样的解决方案:
将iframe添加到您的网页:
<IFrame runat="server" id="iframepdf">
</IFrame>
并用PDF文件填充它:
iframepdf.Attributes.Add("src", "showpdf.ashx?pdf=" + xyz);
有关详细信息,请参阅How <iframe src can read local temp file?。
答案 1 :(得分:0)
我最后只是购买 dynamicpdf 的许可证。与itextsharp相比,它更容易使用。