【问题标题】:How to control the width of a Google Chart when printing?打印时如何控制谷歌图表的宽度?
【发布时间】:2021-01-28 16:57:01
【问题描述】:

我有一个 Google 条形图。在智能手机等窄屏上查看图表时,如果您打印页面,图表会以设备宽度而不是纸张宽度打印。

无论在什么设备上查看图表,如何让图表以纸张的整个宽度打印?

【问题讨论】:

    标签: charts google-visualization bar-chart


    【解决方案1】:

    调整谷歌图表大小的唯一方法是重新绘制它。

    因此,这需要监听窗口的'beforeprint' 事件...

    window.addEventListener('beforeprint', (event) => {
      chart.clearChart();
      chart.draw();
    });
    

    您可以使用'afterprint' 重置...

    window.addEventListener('afterprint', (event) => {
      chart.clearChart();
      chart.draw();
    });
    

    【讨论】:

    • 这似乎没有解决它,因为重绘的图表仍然以视口的大小绘制。我想我需要告诉它在打印时以不同的大小绘制图表。
    • 尝试上面的编辑,清除图表将允许容器在再次绘制之前调整大小。我以前做过,但无法立即找到代码...
    • 没有骰子。但我这样解决了:我创建了第二组 Google 图表选项,我将其命名为 printable_options。这些选项对图表容器有一个硬编码的宽度(大约是纸张大小)。然后我在打印之前使用您的代码重新绘制图表,但将其提供给 printable_options 而不是普通的:chart.draw(data, printable_options); 感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2020-02-11
    • 2016-11-25
    • 2020-04-26
    • 2016-08-21
    • 1970-01-01
    • 1970-01-01
    • 2011-04-13
    • 2011-06-12
    相关资源
    最近更新 更多