【问题标题】:How would I make a web page print exactly the same across all browsers/printers?如何在所有浏览器/打印机上打印完全相同的网页?
【发布时间】:2012-04-30 23:00:30
【问题描述】:

好的,所以我很确定这甚至是不可能的,但我有一个朋友的客户基本上是在求他回答这个问题,所以我告诉他我会从这里的友好人士那里得到一些意见所以。

他的客户对跨所有浏览器(IE7+、FF、Chrome 和 Safari)的像素精确用户界面设计非常挑剔。他们在其他国家有一群人,他们什么都不做,只是坐在那里测量以确保一切都符合他们的 UX 风格指南,直到所有浏览器/版本中的像素(字体、所有内容之间的间距、边距等)。

话虽如此,他们的下一个要求是他们想要打印行车路线,但他们的 UX 要求对于打印同样严格。他们希望所有页面上的边距完全相同,元素之间的间距相同,等等。换句话说,打印输出应该完全相同,直到像素,无论您使用哪个浏览器或打印机打印on(你不高兴这不是你的客户吗)? :)

不,他们不想与 PDF 有任何关系,哈哈。

我的问题是:这甚至可能吗?如果可能的话,您能否指出一些我们可以查看的在线参考资料?每台打印机不会根据默认设置呈现不同的东西吗?在打印方面,这里没有开发人员无法控制的事情吗?我和我的同事都没有被要求在不同的浏览器/打印机上创建如此精确的东西,所以我想在这里得到一些输入。

【问题讨论】:

  • 你朋友的客户应该买一台时光机,10年后再试一次。哎呀,没关系。这是不现实的。
  • 可能比客户的实际要求更真实。 :)
  • PDF 有什么问题?有一些工具可以直接转换为 PDF(比如 wkhtmltopdf,它使用服务器上的 webkit,因此无论客户端的浏览器如何,它总是会生成相同的 PDF),可以很容易地从……打印出来……我知道他们什么都不想使用 PDF(他们这么说),但是 为什么 他们会这么说?我们对代码生成的发票使用 PDF 打印,效果很好。他们是否有不想从 PDF 打印的实际原因? Chrome 可以直接在浏览器中打开 PDF 并从那里完美打印。 Firefox 有一个插件可以做同样的事情。
  • Imo,与客户合作的一部分是客户教育。什么是可能的,什么不是,有什么变通方法可用。如果客户真的这么不讲理,那就找新的吧!这可能是天方夜谭,而不是一种选择……但是,客户仍然需要保持正确的期望。
  • 是的,你说的是——但为什么不直接打印网页本身。

标签: html css printing cross-browser


【解决方案1】:

将所有内容渲染为图像(因为您说没有 PDF)?

实际上,这是一个不合理的要求。您可以为不同的媒体创建样式,并使用 CSS 重置和 javascript 处理浏览器差异,但您将始终拥有不同的屏幕分辨率或屏幕类型(想到 eInk kindle)以及使用不同墨水或不同类型打印机的打印机。

【讨论】:

  • 即使是图像/PDF 也不会在所有打印机上打印相同的内容。由于打印机/驱动程序的限制,我看到相同程序设置的差异超过 5 毫米。
猜你喜欢
  • 2011-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-11
  • 2022-10-17
  • 2023-03-12
  • 1970-01-01
相关资源
最近更新 更多