Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何减少fabric js中文本对象的选择区域填充_Jquery_Html_Canvas_Fabricjs_Spacing - Fatal编程技术网

Jquery 如何减少fabric js中文本对象的选择区域填充

Jquery 如何减少fabric js中文本对象的选择区域填充,jquery,html,canvas,fabricjs,spacing,Jquery,Html,Canvas,Fabricjs,Spacing,在这里,我们使用创建设计工具在fabric.js中工作。我们需要减少fabric js中文本对象中选择区域的填充。画布对象文本会高亮显示/选中,尽管它与原始大小一样大,但选中的框会延伸到整个工作区域。处理此问题时,这不是用户友好的方式。如何减少画布对象中的选择区域填充大小。我们尝试在“Canvas.set()”函数中添加填充,但它不是工作区中的响应/更改 objss.set({ borderColor: 'green', cornerColor: 'purple', CornerSize:

在这里,我们使用创建设计工具在fabric.js中工作。我们需要减少fabric js中文本对象中选择区域的填充。画布对象文本会高亮显示/选中,尽管它与原始大小一样大,但选中的框会延伸到整个工作区域。处理此问题时,这不是用户友好的方式。如何减少画布对象中的选择区域填充大小。我们尝试在
“Canvas.set()”
函数中添加填充,但它不是工作区中的响应/更改

objss.set({
 borderColor: 'green',
 cornerColor: 'purple',
 CornerSize: 33,
 transparentCorners: false,
 strokeWidth: 10,
padding:4
});


任何帮助都将不胜感激。

我制作了一个小JSFIDLE,其中在两个简单的文本对象中,填充(以及所选框)设置为两种不同的大小: 这是你想知道的吗?如果没有,您能在JSFIDLE上创建一个小示例吗

canvas.add(new fabric.Text('hello world1', { left: 100, top: 100, padding: 43 }));
canvas.add(new fabric.Text('hello world2', { left: 100, top: 250, padding: 0 }));

如果您选择的框未正确设置文本,则表示您的文本在字体之前加载。请参见fabrics js示例以使用字体

如果您仍然面临任何问题,请像这样清除字体缓存

fabric.util.clearFabricFontCache(obj.fontFamily)//obj.fontFamily-是您的字体名称

从json加载时的完整示例

this.canvas.getObjects().forEach((obj)=> {
  if(typeof obj.type !== 'undefined' && obj.type=="i-text"){
    this.canvas.setActiveObject(obj);
    fabric.util.clearFabricFontCache(obj.fontFamily);
    this.canvas.getActiveObject().set("fontFamily", obj.fontFamily);
    this.canvas.renderAll();
  }
});

你的想法几乎与我的问题有关。我的问题是“文本”对象无法更改fabric js中的填充参数。请回顾一下,让我对此给出一些想法。