我一直在尝试解决打印我正在开发的 Web 应用程序的某些区域的问题。问题在于highcharts js,它将条形图呈现为<rect ... />.
在加载时调用 window.print() 时,打印调用的行为就像背景图像/颜色总是消失的背景图像问题。但是,当我从浏览器菜单打印页面时,它的显示应该是这样的。知道为什么它不会打印<rect />
吗?
我一直在尝试解决打印我正在开发的 Web 应用程序的某些区域的问题。问题在于highcharts js,它将条形图呈现为<rect ... />.
在加载时调用 window.print() 时,打印调用的行为就像背景图像/颜色总是消失的背景图像问题。但是,当我从浏览器菜单打印页面时,它的显示应该是这样的。知道为什么它不会打印<rect />
吗?
可能是时间问题。尝试类似的东西
window.onload = function() {
window.focus();
window.print();
}
您不能从所有浏览器和您可以打印的浏览器打印 SVG,在您尝试打印之前,需要渲染 svg。
我在这里读到了另一种选择
从 2.0 版开始,Highcharts 提供了一个导出模块,允许用户下载图表的图像或 PDF。该模块由一个额外的 JavaScript 文件、exporting.js 和一个用 PHP 编写的 Web 服务或服务器模块组成。Highslide Software 免费提供导出网络服务。如果您在图表中包含导出模块,右上角将出现两个按钮。一键打印图表,仅在客户端完成。另一个按钮处理导出。默认情况下,图表的 SVG 表示通过 POST 发送到http://export.highcharts.com,在那里使用 Apache 的 Batik 转换器将其转换为 PDF、PNG 或 JPEG。