在上图中,光标应该位于末尾,但由于某种原因,它被放置在最后一个字符之前。
这只发生在某些字体上。
我认为这与自定义字体的加载方式无关,该图像取自http://fabricjs.com/loadfonts http://fabricjs.com/loadfonts。此外,正在使用该库的最新版本。
要重现该问题,您必须执行以下操作:
- 将字体系列更改为“Pacifico”。
- 单击文本框即可进入编辑模式。
- 开始打字。
有时,甚至最后一个字符也会超出边界框。
我认为这与 _measureChar() 函数的执行方式有关,但我不确定需要更改什么。
提前致谢!
Edit:
I did more tests and it seems that this problem is not present in IE.
This problem appears in Chrome and Firefox.
It is also strange how the characters are being rendered in each browser:
在 canvas.requestRenderAll(); 之前添加以下代码
fabric.charWidthsCache[this.value] = {};
canvas.getActiveObject()._initDimensions();
canvas.getActiveObject().setCoords();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)