FabricJS IText - 如何添加具有多种样式的文本框?

Posted

技术标签:

【中文标题】FabricJS IText - 如何添加具有多种样式的文本框?【英文标题】:FabricJS IText - How to Add Textbox with Multiple Styles? 【发布时间】:2016-03-04 11:25:39 【问题描述】:

我已经看到了如何使用这种语法在每行、每个字符的基础上将多种样式应用于给定 IText 对象的示例...

var iTextSample = new fabric.IText('hello\nworld', 
styles: 
    0: 
      0:  textDecoration: 'underline', fontSize: 80 ,
      1:  textBackgroundColor: 'red' 
    ,
    1: 
      0:  textBackgroundColor: 'rgba(0,255,0,0.5)' ,
      4:  fontSize: 20 
    
  
);

在这里拉小提琴- https://jsfiddle.net/tLy9eqj6/

是否有类似的语法可以仅使用一组参数在一行中设置多个字符?例如,这将在第 1 行的前 5 个字符下划线...

var iTextSample = new fabric.IText('hello\nworld', 
styles: 
    0: 
      [0,1,2,3,4]:  textDecoration: 'underline' 
    
  
);

【问题讨论】:

【参考方案1】:

不,(还没有)。

到目前为止,fabricjs 具有每个样式字符或默认样式属性的后备。

您可以做的是优化您的样式,找出最常用的文本样式,将其分配给 IText 对象,然后仅对几个字符进行不同的样式设置。

【讨论】:

以上是关于FabricJS IText - 如何添加具有多种样式的文本框?的主要内容,如果未能解决你的问题,请参考以下文章

在 FabricJS 上选择 IText 的文本

如何为 IText Fabricjs 中的每个项目设置绝对位置

编辑文本 Fabricjs - IText 格式字母和同时选择 textDecoration

How to get the edited text from itext in fabricjs

How to get the edited text from itext in fabricjs

在fabric js中擦除iText时显示光标线代替擦除的字符