当前位置: 首页 > 知识库问答 >
问题:

谷歌Chrome在打印pdf时被切断

冯阳云
2023-03-14

如标题所示,我们的网络服务器经常向用户返回pdf报告。当他们查看pdf报表时,他们通常使用Chrome中的Ctrl P来打印它。

问题是当用chrome打印pdf时,它总是切断pdf页面的页眉和页脚(~0.45厘米或0.1771654英寸)。

你们可以在这篇文章的底部看到这张图片,当我们按下“打印”按钮时,两个红色矩形中的所有内容都将丢失(尽管它在打印预览中显示良好)。

我搜索了关键字"Chrome打印pdf时切断",在谷歌product论坛(2011, 2016,...),都没有解决方案,经常成为锁定的话题,所以不能回复。

因此,如果有人知道如何解决这个问题,请回答这个问题。

非常感谢。

共有2个答案

梁烨烨
2023-03-14

Chrome似乎裁剪了一个过大的PDF(与纸张大小不匹配,和/或无法打印的区域中有文本),而大多数外部应用程序默认情况下会缩小它。因此,从Chrome打印失败,而首先保存,然后在其他地方打印是可行的。一些可能的解决办法:

>

  • 在服务器上,生成正确纸张大小的PDF文件,并在边框上留下足够的边距。在实践中,人们可能需要知道目标纸张尺寸。

    在服务器上,通过添加标题contentdisposition:attachment,强制使用外部查看器;filename=foo。pdf(未经测试;当用户打开文件时,在某些情况下可能仍会在Chrome中打开)

    指示用户在外部应用程序中打印文件。

    在我看来,这些解决方案都不完美。

  • 咸晨
    2023-03-14

    并不是所有的打印机都可以在整个纸张区域上打印,许多打印机有一个小的边框区域不能打印。

    事实证明,HP LaserJet打印机不支持无边界打印(参见op找到的HP支持论坛条目),op及其客户使用此类打印机。

    因此,唯一确定的解决方法是设计带有白色边框的PDF。

     类似资料:
    • 我正在尝试使用Chrome的Headless功能将html转换为PDF。然而,我根本得不到输出。控制台也不显示任何错误。我正在我的windows M/C中运行以下命令。 chrome--无头--禁用GPU--打印到PDF 我试过了所有的选择。没有生成任何内容。我用的是chrome版本60

    • 谷歌浏览器调用打印预览,如果去除另存为pdf选项? 希望目标打印机列表 只能选择打印机

    • 我有一个只在Chrome中呈现的页面,带有一系列自定义字体: 浏览器完美地呈现了一切。然而,当我试图将此打印到PDF时,有两个问题: > 无论我做什么,我都无法生成嵌入字体的PDF。我尝试过Chrome的“保存到PDF”,它会生成Adobe Acrobat无法打开的PDF。各种PDF打印机(如Adobe的)不会产生嵌入这些字体的PDF,即使用标准的网络字体替换@font-faces确实会产生嵌入字

    • 我再需要一次帮助。我正在尝试用Chrome的无头功能打印一页到pdf。但是,页眉和页脚在PDF中是存在的。我发现这个选项已经在devtools中实现了。 https://chromedevtools.github.io/devtools-protocol/tot/page/#method-printtopdf 但是,我找不到如何在CLI中使用这些选项。是否可以从Selenium调用Devtools

    • 我使用cmd并键入“chrome--headless--disable-gpu--print-to-pdf=d:\project\test.pdf http://localhost:8085/t1/index.html?data=http://localhost:8085/1/mock.json” 生成的pdf为空。我想原因是我使用了fetch来获取mock.json和 dom没有足够的时间完全呈

    • 我使用logback在java的Google Cloud函数中打印日志。我想打印日文日志,但日志都是奇怪的字符。如何在Java代码中打印日志 我的登录设置如下 我打印日志的代码 日志是