【问题标题】:"word-break: break-word" does not get reflected in the image created by html2canvas"word-break: break-word" 不会反映在 html2canvas 创建的图像中
【发布时间】:2019-09-18 16:37:40
【问题描述】:

我正在使用 html2canvas 将 html 视图下载为图像。

但是,如果有一个没有空格的长文本,html 会使用 css (word-break: break-word) 在下一行正确呈现它,但这不会反映在生成的图像中。文本保持在一行并被剪裁。

尝试了其他 CSS 属性,例如:

word-wrap: break-word;
overflow-wrap: break-word;

还是不行

查看下图以了解预期结果与实际结果

https://i.stack.imgur.com/QfuVT.png

【问题讨论】:

    标签: javascript html2canvas


    【解决方案1】:

    尝试在 html2canvas 方法中添加 letterRendering:true 属性。

    html2canvas(document.getElementById(divId), {
        onrendered: function (canvas) {
            },
        letterRendering:true
    });
    

    【讨论】:

    • 我添加了 letterRendering: true 不适合我 :-(
    • 这在 v0.4.1 版本之后不再起作用(letterRenderingreference 上不存在)... 任何更新的解决方案?
    • 更新:@ShashikantKanaujiya 的语法错误:改用word-break: break-all
    【解决方案2】:

    对于像我这样需要 word-break: break-word; 而不是 word-break: break-all; 的人来说,添加 overflow-wrap: break-word; 除了 Dhananjay Chaudhari 所说的似乎有效。

    【讨论】:

    • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 2016-05-17
    • 2023-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    相关资源
    最近更新 更多