有没有一种样式的谷歌浏览器默认pdf视图样式? 我正在尝试将灰色背景颜色更改为白色,如果可能的话,还可以使滚动条更大一些以适合移动设备。
我试图没有运气瞄准它的CSS
看起来它正在html上创建影子文档,但我找不到任何针对它的方法
无法直接设置Chrome默认的PDF查看器(PDFium)的样式。由于该插件显示和控制当前页面DOM范围之外的内容,因此只能由该插件修改。如此处所示,除非插件还添加了允许页面将消息传递给插件的内容脚本,否则无法对此类插件控制的内容进行修改。该插件还必须进行编程以响应消息并适当地更新内容。换句话说,PDF查看器对页面使用单独的DOM,无法直接访问该页面。相反,您需要访问已实现的API。
在这次讨论中,Mike West(Google / Chromium开发人员)指出,在回答有关Chrome的PDF查看器中的DOM可访问性的问题时:
The functionality available in the PDF viewer is (intentionally) fairly limited ... The APIs you're having trouble finding simply don't exist.
API的基本功能是Adobe在其"打开PDF文件的参数"中指定的功能,并且可以通过URL(例如
该API故意未作记录;它随时可能随添加或删除而发生变化。因此,尽管将来可能会有一个API可以让您对查看器的某些方面进行样式设置,但几乎没有任何东西会改变背景颜色或修改CSS阴影。而且,如上所述,如果没有API,那么当您无法访问其DOM时,您将无法修改由插件控制的内容。
您可能希望尝试使用PDF.js。这是一个开放源代码的JavaScript库,可使用HTML5 Canvas呈现PDF文件。它也是Firefox的默认PDF查看器,功能强大。
将其作为Web应用程序实现不在此问题的范围内,但是有许多有用的教程可用。随着开发人员可以访问所有组成文件,您当然可以随意设置PDF.js查看器的样式。
只需将其粘贴到浏览器控制台中即可。
更新:Chrome的最新版本似乎已将PDF查看器资源从
实际上,有一种方法,但是我们必须动手,每次更新Chrome时都必须重复该过程。不过,对我来说,付出的努力是值得的。我喜欢将PDF查看器的背景更改为白色,这样当我在晚上激活颜色反转的Deluminate扩展名时,我会得到一个漂亮的纯黑色背景。与默认背景相比,它在我眼中要容易得多,默认背景在反转时会令人眼花bright乱。
Chrome的源代码树包含数千个HTML,JS和CSS文件,这些文件控制浏览器许多部分(包括PDF查看器)的行为和外观。在构建Chrome时,这些"资源"被捆绑到一个单独的文件
我们需要的第一件事是可以解压缩
现在我们有了二进制文件
此时,我们需要的文件将位于
PDF查看器的背景色由文件控制,该文件在Chrome的源代码树中名为chrome / browser / resources / pdf / pdf_viewer.js。要查找文件,请在
更进一步,我们还可以重新设置PDF查看器工具栏的样式。默认情况下,工具栏是深色的,因此在Deluminate下它会令人讨厌地变亮。要解决此问题,我们需要找到chrome / browser / resources / pdf / elements / viewer-pdf-toolbar.html。我通过grepping
最后,如果我们真的想一路走,我们可以摆脱加载PDF时原始背景颜色的短暂"闪光"。该颜色由chrome / browser / resources / pdf / index.css控制,我在
困难的部分已经结束。最后一步是重新打包资源并覆盖系统
现在重新启动浏览器,尽情享受吧!