生成临时pdf并将其显示在对象标签中

Generate temporary pdf and display it in object tag

我想使用 iTextSharp 生成一个 pdf 文件,然后我想在对象标签中显示这个文件。 这是我生成 pdf 的代码:

Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);

    PdfWriter.GetInstance(pdfDoc, Response.OutputStream);    

    pdfDoc.Open();

    Paragraph Title = new Paragraph("New Paragraph");
    pdfDoc.Add(Title);

    pdfDoc.Close(); 

    Response.ContentType = "application/pdf";

    Response.AddHeader("content-disposition", "attachment;" +

                                   "filename=sample.pdf");

    Response.Cache.SetCacheability(HttpCacheability.NoCache);

    Response.Write(pdfDoc);

    Response.End();

但是此代码正在生成一个 pdf 文件并显示 save/open 我不想要的对话。我希望生成它然后显示在对象标签中,无需对话,也无需将其保存在我的文件夹中。

相关行如下:

Response.AddHeader("content-disposition", "attachment;filename=sample.pdf");

通过将 content-disposition 设置为 附件 ,您指定浏览器应该需要一些用户交互(有关详细信息和其他可能的值,请参阅此 link) .

如果将值更改为 inline,浏览器应按您的需要显示元素:

Response.AddHeader("content-disposition", "inline;filename=sample.pdf");

它适用于 "inline",谢谢大家