【发布时间】:2016-04-05 11:53:43
【问题描述】:
我正在使用 iTextSharp 将我的数据写入模板文件。然后使用 C# 中的 MemoryStream 呈现 PDF 文档。
在谷歌浏览器和部分火狐浏览器上一切正常。
var document = new Document();
//document open and content settings are done here
document.AddTitle("My Document Title"); //Statement-1
document.AddHeader("content-disposition", "inline;filename=MyFileName.pdf");
谷歌浏览器将标题显示为“我的文档标题”,下载时将文件名设置为“我的文件名”。 IE 和 Firefox 的情况并非如此。
IE 将站点名称显示为标题,并将查询参数分配为文件名。 Firefox 也有随机行为。甚至 javascript(window.open 设置)也不起作用。我希望浏览器显示与 Google chrome 相同的标题和文件名。
如果我错过了跨浏览器标准化标题和文件名的任何重要步骤,请指导。
【问题讨论】:
-
仅供参考:这不是真正的 iTextSharp 问题,而是浏览器或浏览器插件问题。我不确定你对这个问题有什么期望。 PDF 还可以,您几乎无法对跨浏览器进行“规范化”。
-
在加载外部插件内容时,没有规范浏览器在标题栏中显示的方式和内容,所以任何东西都可以去那里。 (加载后显示 PDF 标题是不同的问题) IHMO 假设它应在此处显示内容分发内容是错误的(因为文档仍在加载)。布鲁诺,将浏览器不应该做的事情归咎于浏览器,或者通过推广您的 iText 产品来回答这些事情并不酷。
标签: c# internet-explorer firefox pdf-generation itextsharp