使用fabric.js在画布上绘制文本

Dip*_*ips 4 text canvas draw fabricjs

我想在画布上绘制文字.,如何做任何示例示例?画布已经包含了一些绘制的形状,我想在画布上的那个形状的顶部显示文字我该怎么办?

小智 6

另请注意,您需要实际加载cufon字体.使用Fabric.js时没有默认字体.

<script src="fabric.js"></script>
<script src="cufon.calibri.js"></script>
Run Code Online (Sandbox Code Playgroud)

http://www.cufonfonts.com/提供了很多字体

在这种情况下,作者正计划取消对cufon的需求.在这里讨论:Fabric.js + Google字体

如果您想要渲染块,那么该块内部会有一些文本.我会做这样的事情.

//Render the block
var block = canvas.add(new fabric.Rect({ 
    left: 100, 
    top: 100, 
    fill: 'blue'
}));

//Render the text after the block (so that it is in front of the block)
var text = canvas.add(new fabric.Text('I love fabricjs', { 
    left: block.left, //Take the block's position
    top: block.top, 
    fill: 'white'
}));

//Render the text and block on the canvas
//This is to get the width and height of the text element
canvas.renderAll(); 

//Set the block to be the same width and height as the text with a bit of padding
block.set({ width: text.width + 15, height: text.height + 10 });

//Update the canvas to see the text and block positioned together, 
//with the text neatly fitting inside the block
canvas.renderAll();
Run Code Online (Sandbox Code Playgroud)


kan*_*gax 5

看看如何渲染文本教程。

很简单:

canvas.add(new fabric.Text('foo', { 
  fontFamily: 'Delicious_500', 
  left: 100, 
  top: 100 
}));
Run Code Online (Sandbox Code Playgroud)