我有带有文本“这是测试文本框”的文本框,我想将下划线设置为仅单词“ test”而不是整个文本框文本。如何设置下划线到子字符串?
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
每个都有对或错。问题
谢谢。任何帮助将不胜感激。
答案 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的文本字符上设置下划线。