我正在尝试创建一个简单的动态徽章(png)嵌入到静态页面中,以告知我的应用程序的状态。

我想使用现有的PNG图像,并使用Node.js在其上写一些文本。
我发现了很多库,但是它们都使用Imagemagick或Cairo作为 native 依赖项,​​因此我想避免在服务器上安装其他任何库。

然后,我找到了lwip,但是我真的不明白如何用它在图像上写文本。我能怎么做?

最佳答案

您可以使用Jimp。它具有一种打印方法:

var Jimp = require("jimp");

var fileName = 'test.png';
var imageCaption = 'Image caption';
var loadedImage;

Jimp.read(fileName)
    .then(function (image) {
        loadedImage = image;
        return Jimp.loadFont(Jimp.FONT_SANS_16_BLACK);
    })
    .then(function (font) {
        loadedImage.print(font, 10, 10, imageCaption)
                   .write(fileName);
    })
    .catch(function (err) {
        console.error(err);
    });

关于node.js - 使用Node.js在现有的PNG上编写文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26294016/

10-12 06:27