【问题标题】:How to identify whether the client machine supports PDF File format如何识别客户端机器是否支持PDF文件格式
【发布时间】:2010-07-07 15:01:00
【问题描述】:

嗨,

我的要求是直接在我的网页上显示一个动态创建的 pdf 文件。它适用于具有 pdf 阅读器软件的系统。但是对于没有pdf软件的系统,它会显示如下错误

无法显示 XML 页面
无法使用样式表查看 XML 输入。请更正错误,然后单击“刷新”按钮,或稍后重试。


在文本内容中发现无效字符。错误处理资源'http://localhost:4252/OmanePost/Customer/EBox/PD... 我需要以不同的方式处理这种情况。即在这种情况下,文件应该保存到系统的物理位置,因为我需要确定客户端机器是否有 pdf 软件,然后我才能正确管理

我使用的是 ASP.NET 2.0 版本

【问题讨论】:

    标签: c# asp.net javascript


    【解决方案1】:

    在我看来,您正在使用 XML mime/content-type 提供 PDF。确保将您的内容类型设置为application/pdf,您可能会得到更合适的浏览器响应。

    【讨论】:

      【解决方案2】:

      在这种情况下,浏览器应该要求用户在外部应用程序中打开文件。

      请验证您发送的 Content-Type: application/pdf 标头是否正确。某些版本的微软浏览器会忽略 content-type 标头,因此您需要在 content disposition 标头中指定以 .pdf 结尾的文件名: Content-Disposition: inline;文件名=文件名.pdf;

      注意:我尚未验证它是否适用于“内联”而不是“附件”,但我认为值得一试。

      【讨论】:

        【解决方案3】:

        我的要求是在我的网页上直接显示一个动态创建的 pdf 文件。

        在线尝试ZohoViewer,它可以获取 PDF 文件链接并显示在浏览器中,而无需客户端计算机上的 PDF 阅读器。因此无法检查客户端机器是否有 pdf 阅读器。

        【讨论】:

          【解决方案4】:

          您无法识别客户端系统有使用javascript、asp.net、c#的pdf软件。

          【讨论】:

            【解决方案5】:

            如果 PDF 阅读器软件不存在并且 PDF 是有效的 PDF,那么它不应抛出异常。相反,它要求客户端计算机中的软件可以读取该文件。

            【讨论】:

            • 如何在客户端机器上请求一个可以读取文件的软件
            • 假设我的本地机器上没有 PDF 阅读器。假设我的机器是客户端机器。我正在从网站下载 PDF 文件。您可以将其称为服务器。我可以成功下载文件并将其保存在本地计算机中。打开它时会打开一个弹出窗口,其中显示了我机器中安装的软件列表,并要求用户选择一个可以打开 PDF 的软件。
            猜你喜欢
            • 2011-05-18
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-12-15
            • 2021-02-08
            • 2012-07-23
            相关资源
            最近更新 更多