使用flipX = true
编辑Fabricjs IText时,为什么整个字符串都不会被翻转,但每个字符都会被翻转?编辑并不真正可用。我应该使用其他属性或其他东西来帮助它更好地工作吗?
这会创建一个Fabricjs IText并反转字符串:
var txt = "Reverse string";
var canvas = new fabric.Canvas('canvas');
var text = new fabric.IText(txt, {
left: 20,
top: 30,
fontFamily: 'sans-serif',
fontSize: 40,
flipX: true
});
canvas.add(text);
canvas.setActiveObject(text);
canvas.renderAll();
......正如所料:
但是当您单击IText进行编辑时,它会按顺序更改为整个字符串,但单个字符仍会翻转:
...左键将光标向右移动,反之亦然。如果整个字符串被翻转,这将更有意义,但现在不是。这只是代码的当前状态吗?有没有解决方法?
这是一个jsfiddle:http://jsfiddle.net/spencerw/f282oo2w/
答案 0 :(得分:1)
因为你翻转字符串对象而不是字符。
如果您想翻转字符,则需要绘制fabricjs.Group
for(var i = 0; i < txt.length; i++) {
left += 25;
character = new fabric.IText(txt[i], {
fontFamily: 'sans-serif',
fontSize: 40,
flipX: true,
left: left
});
string.push(character);
}