javascript - 在 Fabricjs 的背景文本中添加填充和边框半径

标签 javascript coffeescript fabricjs

是否有机会在 Fabric JS 背景文本上添加填充和边框半径我想让它看起来像号召性用语按钮

enter image description here

JS

canvas = new fabric.Canvas('mainCanvas',
    backgroundColor: 'green'
)


text = new fabric.IText('hello world', 
    left: 200
    top: 100
    backgroundColor: "pink",
)
canvas.add(text)

HTML

<canvas id="mainCanvas" style="border:1px solid #aaa" width="600" height="300"></canvas> 

JSFIDDLE

最佳答案

我通过简单地将元素分组并在 fabric.Rect 中解决了这个问题,我为边界半径添加了 rx: 5ry: 5 .

有所有代码 JSFIDDLE

var canvas = window._canvas = new fabric.Canvas('c1');




var bg = new fabric.Rect({
  fill: '#32b775',
  scaleY: 0.5,
  originX: 'center',
  originY: 'center',
  rx: 5, 
  ry: 5,
  width: 90,
  height:80
});

var text = new fabric.Text('Done', {
  fontSize: 18,
  originX: 'center',
  originY: 'center',
  fill: '#FFF'
});

var group = new fabric.Group([ bg, text ], {
  left: 50,
  top: 100
});

canvas.add(group);
canvas {
    border: 1px solid #999;
}
<script src="https://rawgit.com/kangax/fabric.js/master/dist/fabric.js"></script>

<canvas id="c1" width="300" height="300"></canvas>

关于javascript - 在 Fabricjs 的背景文本中添加填充和边框半径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35888660/

相关文章:

javascript - 如何通过将每个值作为单独的字符串返回来连接值数组?

javascript - 根据对象的属性删除数组的对象

javascript - 将 AngularJS 文件中的颜色代码应用到 sass

javascript - Protractor:我应该如何从 browser.executeAsync 中传播错误?

javascript - 如何减小 JSPDF 创建的文件大小?

javascript - FabricJS 中使用 jQuery UI 可排序的 Z-Index 控制对象

java - 从java代码调用网站的javascript函数?

javascript - jQuery/CoffeeScript/Rails 不会在我的输入上调用change()

javascript - 如何在coffescript中调用新变量类名而不使用eval

javascript - 在 Fabric js 中的两个对象之间添加动画