fabricjs - Fabric.js:如何删除填充和格式选择框?(缩放后填充仍然存在)
问题描述
我正在尝试格式化选择边框样式,使其看起来像inkscape(图像左侧)。我试图用这个将对象填充设置为零:
fabric.Object.prototype.set({
padding: 0,
});
如果我放大这会更明显,并且填充会增加。
示例:左侧inkscape选择框样式,右侧实际fabric.js选择框
我怎样才能删除填充?
这是jsFiddle。
解决方案
那是因为笔画宽度,设置strokeWidth:0
为对象。
演示
var canvas = window.__canvas = new fabric.Canvas('canvas');
var rect = new fabric.Rect({left: 10, top: 10,strokeWidth:0, width: 60, height: 60, fill: 'blue'});
rect.editable = true;
rect.customType = 'shape';
rect.describtion = 'fabric.js rect object';
rect.cornerColor = 'red';
rect.borderColor = 'red';
rect.cornerSize = 8;
rect.padding = 0;
canvas.add(rect);
canvas.setActiveObject(rect);
canvas.setZoom(20);
canvas{
border:2px solid #000;
}
<script src="https://rawgit.com/kangax/fabric.js/master/dist/fabric.js"></script>
<canvas id="canvas" width="400" height="400"></canvas>
推荐阅读
- typescript - TypeScript 循环类型别名不会产生错误,而是扩大了单位类型
- git - 如何通过 git bash 在 github 远程仓库上删除没有扩展名的文件(二进制可执行文件)?
- tensorflow - tf.reduce_sum(tf.square(output_vector), axis, keep_dims=True) 在做什么?
- mysql - 通过python在mysql选择器中产生无效结果
- authentication - 加载 ntuser.dat 之前的 Winlogon 通知服务
- python - 如何在 Python 中使用 SQLAlchemy 映射子对象?
- python - django url 不匹配
- java - HashMap Java 中的 HashMap
- java - 如何存储不合理的 BigDecimal
- java - 将摩尔斯电码转换为英语词典单词