node-canvas

Posted 夜未央丿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node-canvas相关的知识,希望对你有一定的参考价值。

1、使用之前需要预先安装  Cairo

  本人安装遇到各种各样的坑,可以参考这里来填坑:https://github.com/Automattic/node-canvas/wiki/Installation---OSX

2、npm install canvas

  安装过程遇到问题,参照第一条填坑的方式继续。。。

3、安装中文字体包,我用的是微软雅黑的字体

  linux 与 mac 字体包的安装方式不同,具体可搜索一下使用方式

4、终于可以愉快编码了

var Canvas = require(\'canvas\')
    , Image = Canvas.Image
    , canvas = new Canvas(500, 200)
    ,fs = require("fs")
    , ctx = canvas.getContext(\'2d\');

ctx.font = \'30px "Microsoft YaHei"\';
ctx.rotate(.1);
ctx.fillText("我写程序生成100万个!", 50, 100);
ctx.fillText("怕不怕", 50, 150);

var te = ctx.measureText(\'Awesome!\');
ctx.strokeStyle = \'rgba(0,0,0,0.5)\';
ctx.beginPath();
ctx.lineTo(50, 102);
ctx.lineTo(50 + te.width, 102);
ctx.stroke();


fs.writeFile(\'out.png\', canvas.toBuffer());

生成的图片:

 

以上是关于node-canvas的主要内容,如果未能解决你的问题,请参考以下文章

node-canvas 中的 registerFont() 未解析 Firebase Cloud Functions 上的字体

记录在Windows下安装node-canvas遇到的各种问题(无法安装canvas,安装canvas包报错error...)

更新node.js和Electron后,node-canvas失败

节点画布:使用自定义字体

微信小程序代码片段

VSCode自定义代码片段——CSS选择器