Fabricjs 2.0如何将下划线设置为文本框的子字符串

时间:2018-08-29 09:56:48

标签: fabricjs fabricjs2

我有带有文本“这是测试文本框”的文本框,我想将下划线设置为仅单词“ test”而不是整个文本框文本。如何设置下划线到子字符串?

fabricjs issue

var canvas = new fabric.Canvas('c');

var underlineText = new fabric.Textbox("This is test textbox", {
  underline: true,
});

canvas.add(underlineText);
canvas {
    border: 1px solid #999;
}
<script src="https://rawgit.com/kangax/fabric.js/master/dist/fabric.js"></script>
<canvas id="c" width="1000" height="500"></canvas>

由于2.0还没有准备好用于文档和示例,因此更改的一件事是已删除textDecoration。 我们有:.underline, .overline, .linetrought每个都有对或错。问题

谢谢。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

我不同意2.0版尚未准备好用于文档和示例。 1.0版的文档和示例已进行转换,并添加了更多内容。

因此,我对此问题一无所知,fabricJS中的所有Text类都具有一个setSelectionStyle方法,该方法将样式对象以及开始和结束索引作为实数nt。

http://fabricjs.com/docs/fabric.Text.html#setSelectionStyles

所以打电话:

myText.setSelectionStyles({ underline: true }, 2, 4);

应在位置2、3和4的文本字符上设置下划线。