【问题标题】:FabricJS bold, italic style is not working in ITextsFabricJS 粗体、斜体样式在 ITexts 中不起作用
【发布时间】:2019-10-22 13:55:04
【问题描述】:

我使用的是 fabricJS 3.0.0 和 2.7.0,但两个版本都不支持 ITexts 上的粗体和斜体样式。

我尝试过的在这里:

1. this.canvas[0].getActiveObject().setSelectionStyles({fontWeight:'bold'});
   this.canvas[0].renderAll();

2. this.canvas[0].getActiveObject().set('fontWeight', 'bold');
   this.canvas[0].renderAll();

但他们都没有使用粗体或斜体, 谁能给画布建议或补丁吗?

【问题讨论】:

    标签: angular canvas styles fabricjs textstyle


    【解决方案1】:

    如果你想使用setSelectionStyles,那么你需要先选择一些文本或者作为参数传递,直接给文本对象设置样式会导致应用整个文本。

    演示

    var canvas = new fabric.Canvas('c');
    var text = new fabric.Text('Hello Fabricjs');
    canvas.add(text);
    setTimeout(function(){
      var selectionStart = 2,
      selectionEnd = 8;
      text.setSelectionStyles({fontWeight:'bold',fontStyle:'italic' }, selectionStart, selectionEnd);
      //text.set('fontWeight', 'bold');
      canvas.renderAll();
    },1000)
    canvas{
      border:1px solid;
    }
    <script src="http://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.0.0/fabric.js"></script>
    <canvas id='c'></canvas>

    【讨论】:

    • 感谢 durga 的回复,但不起作用,它正在对文本应用下划线,但粗体和斜体也不起作用,
    • @PiyushDholariya 检查也添加了斜体
    • 非常感谢,但不知道粗体和斜体不工作,我已经放了你给的代码,我使用的是 3.0.0 版本,下划线工作正常。
    • @PiyushDholariya 我也在这个 sn-p 中使用 3.0.0。您在说明问题的问题中创建了一个 fiddle/sn-p 添加。
    猜你喜欢
    • 2016-05-19
    • 2014-09-19
    • 1970-01-01
    • 1970-01-01
    • 2020-10-24
    • 1970-01-01
    • 1970-01-01
    • 2012-07-20
    • 1970-01-01
    相关资源
    最近更新 更多