我正在解决无法打开网站上的 PDF 的问题,因此我卸载了 Adobe Reader。出于好奇,我检查了是否仍可以从网站上打开 PDF(这里是一个随机示例)。令人惊讶的是,我仍然可以从 Chrome(我首选的浏览器)和 Internet Explorer 打开 PDF。我相信 IE 正在使用 Edge 打开 PDF,但 Chrome 中的 PDF 界面看起来不同,所以它可能是另一个应用程序。不幸的是,我无法卸载 Edge 来检查。我该如何弄清楚Chrome 使用什么应用程序打开 PDF来自网站?
答案1
Chrome 本身就是查看 PDF 的应用程序。
Windows 10 Edge 也可以直接打开 PDF。请注意,IE 是一个较旧的、独立于 Edge 的应用程序。如果您的用户从 IE 启动,他们将无法直接在 IE 中打开 PDF,除非他们安装了 Adobe 插件。
Firefox 无需插件即可查看 PDF:https://support.mozilla.org/en-US/kb/view-pdf-files-firefox。
有些网站(就我的经验而言,是银行网站)会强制下载,而不是允许在同一浏览器中打开。在 Firefox 中,我有时可以通过更改 MIME 设置来更改行为,但效果并不始终如一。 https://support.mozilla.org/en-US/kb/change-firefox-behavior-when-open-file
答案2
根据记忆,Google Chrome 使用内置的 PDF 查看器,我相信它是用 JavaScript编写的。 C++,感谢评论中的有用提醒:)
它默认与 Chrome 捆绑在一起。
对我来说,我可以在这里查看一些相关的 JavaScript:
chrome-extension://mhjfbmdgcfjbbpaeojofohoefgiehjai/pdf_viewer.js
您可以通过打开 PDF 查看器上的 Chrome DevTools 来查看一些相关代码。
Firefox 使用了另一种类似的方法,同样是用 JavaScript 编写的,尽管它们的文档更公开,并且是凭记忆,但鼓励其他人使用它们在他们的网站上显示 PDF。
在这里阅读关于 Firefox 实现的更多信息:Mozilla 的 PDF.js
答案3
由于铬来源于铬开源项目,它也使用 Chromium 浏览器附带的相同嵌入式 pdf 查看器。因此,当遇到 pdf 文件时,chrome 会尝试使用此 pdf 查看器打开它。
如果你打开
chrome://系统
你会注意到它显示了打开的选项卡和正在运行的扩展,但它没有显示有关它正在使用的 pdf 查看器的任何信息 这里。
但当我打开它
chrome://local-state
chrome 显示多个 pdf 插件组件,包括 Adobe Reader 和 Chromium PDF 阅读器。它在您的系统中可能会有所不同。
chromium 项目的 Readme 文档可用,但我找不到 pdf viewer 的文档。你可以阅读它这里