我是日本人,我想在Fabric.js中垂直写日文单词。
日语有小写字母,它们的位置是垂直书写的左上角。 所以,我想改变iText中一个小写字母的位置。
我认为我可以通过使用iText的“styles”参数来改变角色的位置,所以我写了如下。
var iTextSample = new fabric.IText('h\ne\nl\nl\no', {
left: 50,
top: 50,
fontFamily: 'Helvetica',
fill: '#333',
lineHeight: 1.1,
styles: {
1: {
0: { textDecoration: 'underline', ←★ WORK
fontSize: 80, ←★ WORK
top:-10, ←★ NOT WORK
transformMatrix: [ 1, 0, 0, 1, 18, -50 ] ←★ NOT WORK
},
},
}
});
https://jsfiddle.net/uemon/tLy9eqj6/77/
'textDecoration'和'fontSize'有效,但'top'或'transformMatrix'不起作用。
我不能在“styles”参数中使用'top'或'transformMatrix'吗?
如何更改一个角色的位置?
提前谢谢。
答案 0 :(得分:0)
所以从使用textDecoration属性我猜你是在1.7或类似的版本。
您应该真正转向集成了对多字节语言和组合的支持的2.0版本。
说,根本不支持fabricjs中的垂直文本。 这可能在将来发生变化。 你应该真的去这里:
https://github.com/kangax/fabric.js/issues/511
刷新请求并可能添加一些关于它的细节,因为实际的mantainer可能不知道垂直文本在输入,装饰,多列等方面应该如何工作。