FabricJs:更改文本后字体不更新

FabricJs: Font does not update after changing Text

这是 issue/bug 吗? 在官方演示站点上试用:

http://fabricjs.com/kitchensink 要么 http://fabricjs.com/loadfonts

  1. select 带有文本的文本框
  2. 确保光标在文本框内
  3. ctrl+a 标记所有文本
  4. 用一些新词覆盖旧文本(同时标记旧文本)

新输入后,您将无法再更改字体系列或字体大小等其他字体设置。阴影仍然有效。

??这是为什么?

非常好。

在上面的示例中,如果您 select 文本框并查看控制台

canvas.getActiveObject().styles

这将 return 多个样式的对象,因为这些样式被分配给 string/textbox 的每个字符。

如果您想在更改文本后更改 fontFamily 或任何样式。只需指定 styles = null 如下。

您可以在 http://fabricjs.com/kitchensink 中也可以在开发人员工具中进行测试。

canvas.getActiveObject().styles = null