打印网站使大多数打印机崩溃

     2023-02-24     269

关键词:

【中文标题】打印网站使大多数打印机崩溃【英文标题】:Printing website crashes most printers 【发布时间】:2014-07-15 01:02:13 【问题描述】:

嗯,这是我有过的最奇怪的行为之一。尝试打印我们新创建的网页的站点时,许多打印机会以多种不同的方式崩溃。

错误

以下想法取决于我们尝试打印的页面:

随机字符“,,-a!!!ASdŸu”出现在打印机显示屏上。 (需要重启) 打印机说:“Err 42 关闭然后打开”/“Err 49”。 (需要重启) 打印机说:“文档正在打印”(我们等了一个小时,他在撒谎。)(需要重新启动) 打印机说:“文档已损坏”(自动重启) 打印驱动程序说:远程主机不接受数据文件 (32)。 打印驱动程序在 74%、97% 或 99% 时挂起。 打印机什么都不做。

这个问题似乎只出现在 OSX 平台上,但我们只有一台 Windows 机器,所以我们不确定。

我们不会生成任何特殊的 PDF 文件,或者我们实际上只需按 CMD+P 即可打印。

此外,我们无法记录它取决于我们遇到相同问题的浏览器:

铬 火狐 野生动物园

 我们已经尝试过的:

为了找出打印机不喜欢网站的哪个部分,我们一步一步地取出布局的每一块并尝试打印。结论:我们仍然没有该死的线索。

从内容中删除所有内容(保留布局、页眉、页脚等),只需将一个段落作为内容作品无处不在。只需将段落替换为 h1 元素就会导致上述错误之一。

我们尝试删除所有 javascript,但仍然无效。 我们尝试删除网络字体无效。

 我们测试了哪些硬件:

我们测试过的打印机在不崩溃的情况下无法打印:

HP LaserJet P2055dn HP LaserJet color 500 M551 三星 SCX 3405F HP Color Laserjet CM1415fnw

没有问题的打印机:

HP OfficeJet X476dw 施乐Docuprint N2125

有人遇到过类似的问题吗?有人知道我们可以做些什么来解决这个问题吗?

编辑:

网站: http://golfimport.ch/de/

因为图像胜过文字,我最喜欢的错误信息:

【问题讨论】:

确定一下,您是否尝试过打印网站以外的内容? @NiettheDarkAbsol 是的,当然,我们对任何这些打印机都没有问题......它必须在我们的网站上。 你能分享你网页的网址吗? @FabrizioCalderan 当然是:test.golfimport.ch/de 由于有多个品牌的多台不同的打印机,甚至,问题不太可能出在硬件或打印机驱动程序上。问题可能出在操作系统、浏览器或它们的组合中。 【参考方案1】:

错误表示发送到打印机的数据有问题。我可以想到两个来源:

    打印机驱动程序已损坏,并向打印机发送损坏的初始化序列。 该文件包含一些确实让打印机感到困惑的数据

由于您可以从其他应用程序进行打印,但网站的 PDF 会损坏打印机,我的猜测是页面中的图像包含病毒或以其他方式损坏。下一个罪魁祸首可能是您使用的字体。

这里的基本原理是,自从人们开始创建包含精心设计的字节序列的图像文件以来,操作系统在过去几年中看到了一些关于图像库的安全相关更新,这些字节序列会触发操作系统的图像库中的错误系统来访问显示它们的计算机。

字体也可以进行同样的攻击。

大多数操作系统都针对这种攻击进行了强化,但打印机是另一回事。他们很少升级固件,所以当他们容易受到攻击时,他们通常会保持这种状态。

PDF 在这里很有趣,因为它可以在二进制文件中嵌入某些类型的图像和字体。因此,即使您的操作系统没有受到影响,损坏的数据也会被发送到性能不佳的打印机并损坏它。

尝试替换所有图片(也包括通过 CSS 拉入的所有图片精灵等)。如果这没有帮助,请查看正在使用的字体。

还要检查病毒。

【讨论】:

chrome扩展content.js使动态网站崩溃[重复]

】chrome扩展content.js使动态网站崩溃[重复]【英文标题】:chromeextensioncontent.jscrashesdynamicwebsites[duplicate]【发布时间】:2021-01-2805:56:52【问题描述】:我尝试通过自定义chrome扩展插入覆盖,但是,当简单地将HTML添加到文档正文时,... 查看详情

revit二次开发-自动化批量打印崩溃问题

...个很奇怪的,有概率的会发生这种情况:打印时候,虚拟打印机(Adobe)直接打印了第一张然后紧接着打印了第二张(即使在代码中把在两次打印之间做了线程挂起了也会发生这种情况),然后系统直接抛出错误,以前我是在事... 查看详情

Django:安全中间件使网站崩溃

】Django:安全中间件使网站崩溃【英文标题】:Django:securitymiddlewareiscrashingthesite【发布时间】:2012-12-2704:30:32【问题描述】:在生产中,我一直在尝试添加djangosecure.middleware.SecurityMiddleware(来自http://pypi.python.org/pypi/django-secure)to... 查看详情

打印机忽略了啥?

】打印机忽略了啥?【英文标题】:Whatdoprintersignore?打印机忽略了什么?【发布时间】:2013-08-1517:17:30【问题描述】:打印HTML文档时thebgcolorofatablecellisignored。当尝试打印文档时,还有什么被忽略的?我正在尝试使特定网站在打... 查看详情

web端调用打印机方案总结

...元素过多的话,要操作很多dom元素,所以这种方法不适用大多数场景2、将需要打印的元素包装进一个元素下面,具体步骤:先将页面完整的dom保存至一个中间变量获取打印元素dom对象将当前页面的body.innerHTML替换为打印目标元素... 查看详情

Paypal IPN 侦听器正在使我们的网站崩溃

】PaypalIPN侦听器正在使我们的网站崩溃【英文标题】:PaypalIPNlisteneriscrashingoursite【发布时间】:2013-05-1505:38:24【问题描述】:我正在尝试设置Paypal,以便当客户购买我们网站的订阅时,他们的帐户会获得批准。不幸的是,在测... 查看详情

子 multiprocessing.Process 没有打印输出,除非程序崩溃

】子multiprocessing.Process没有打印输出,除非程序崩溃【英文标题】:Noprintoutputfromchildmultiprocessing.Processunlesstheprogramcrashes【发布时间】:2010-09-2621:26:18【问题描述】:我在使用Python多处理模块时遇到问题。我正在使用Process类来生... 查看详情

打印换行符的大多数 Pythonic 方式

】打印换行符的大多数Pythonic方式【英文标题】:MostPythonicwaytoprintanewline【发布时间】:2018-01-1610:57:33【问题描述】:如果我需要打印一个换行符,编写print()语句的最Pythonic方式是什么?我正在教别人Python,我想把它做好。我发... 查看详情

XCUIApplication().debugDescription 的打印输出正在崩溃 UIAutomated Test XCode 8

】XCUIApplication().debugDescription的打印输出正在崩溃UIAutomatedTestXCode8【英文标题】:PrintingoutputofXCUIApplication().debugDescriptioniscrashingUIAutomatedTestXCode8【发布时间】:2017-02-2119:09:37【问题描述】:我最近开始通过添加一些自动化测试来... 查看详情

使 GDB 在调用函数时打印控制流

】使GDB在调用函数时打印控制流【英文标题】:MakeGDBprintcontrolflowoffunctionsastheyarecalled【发布时间】:2010-09-2315:22:23【问题描述】:如何使gdb在调用时打印感兴趣的函数,根据它们在堆栈中的深度进行缩进?我希望能够说出类似... 查看详情

Windows 10 中打印机驱动程序 dll 的奇怪之处

】Windows10中打印机驱动程序dll的奇怪之处【英文标题】:Strangethingwithaprinterdriverdllinwindows10【发布时间】:2018-02-1917:54:32【问题描述】:我有一台XeroxDocuColor250和windows10。我正在尝试解决一个问题,该问题会在我转到打印机首选... 查看详情

debian ubuntu:大多数寻呼机不打印所需的前景色

】debianubuntu:大多数寻呼机不打印所需的前景色【英文标题】:debianubuntu:mostpagerdoesnotprinttherequiredforegroundcolors【发布时间】:2011-02-2320:03:18【问题描述】:需要在Debian/Ubuntu操作系统中,我需要打印(到STDOUT)一个由寻呼机解释... 查看详情

大多数Pythonic方式打印*最多*一些小数位[重复]

】大多数Pythonic方式打印*最多*一些小数位[重复]【英文标题】:MostPythonicwaytoprint*atmost*somenumberofdecimalplaces[duplicate]【发布时间】:2013-02-0612:19:43【问题描述】:我想格式化最多包含2个小数位的浮点数列表。但是,我不想要尾随... 查看详情

使 GHCi 以十进制形式打印。

】使GHCi以十进制形式打印。【英文标题】:MakeGHCitoprintindecimalform.【发布时间】:2018-05-1305:21:43【问题描述】:有时科学记数法会让我认为我的结果不正确,直到我看到“e”(例如2.1474027456e-2)。如何让GHCi以十进制形式打印?... 查看详情

如何使 cProfile 仅打印重要功能?

】如何使cProfile仅打印重要功能?【英文标题】:HowtomakecProfileprintonlysignificantfunctions?【发布时间】:2017-11-3002:05:55【问题描述】:我从我的cProfile输出中获得了大约300个条目,并且每次使用它时都必须向上滚动很长时间。有没有... 查看详情

c_cpp我认为只要lcd被注释掉并且它没有连接到打印机,这不会崩溃......?!?(代码片段)

查看详情

如何使 xcodebuild 向 stderr 打印编译错误和警告?

】如何使xcodebuild向stderr打印编译错误和警告?【英文标题】:Howtomakexcodebuildprintcompileerrorsandwarningstostderr?【发布时间】:2020-09-0113:39:23【问题描述】:似乎xcodebuild将所有内容打印到标准输出。$/Applications/Xcode.app/Contents/Developer/us... 查看详情

无论如何创建一个OPOS打印队列c#

...OPOS打印来自5台PC的所有收据票,并带有c#中的POS。问题:大多数时候打印机无法打印门票,因为它们被某些POS锁定。其他时候,打印机打印时间过长。打印代码:p.printerO 查看详情