求助,使用GM模块生成图片当字体是中文时出现问号,是字母或数字时则正常
服务器安装的是imageMagick, 然后使用gm生成图片,引入个别字库之后生成的字体是中文时,会出现问号,但数字或字母则正常,有些字体库则不会有这样的情况 应该不是字体库本身的问题,下面代码中的字体库在PHP中是能正确生成字体的
var fs = require('fs');
var gm = require('gm').subClass({"imageMagick": true});
var express = require('express');
function sign(req, res, next){
var imgPath = process.cwd() + '/public/images/module/internal.png';
var lanting = process.cwd() + '/public/font/lanting.ttf';
var Lantinghei_SC = process.cwd() + '/public/font/Lantinghei_SC.ttf';
var Lantinghei_TC = process.cwd() + '/public/font/Lantinghei_TC.ttf';
var msyh = process.cwd() + '/public/font/msyh.ttf';
var MyriadProRegular = process.cwd() + '/public/font/MyriadPro-Regular.otf';
gm(imgPath).font(Lantinghei_SC, 30).drawText(10, 45, "这只是个测试").write(process.cwd() + "/public/images/internal/"+ id +".png",function(err) {
if (err) console.log(err);
});
gm(imgPath).font(Lantinghei_SC, 30).drawText(10, 45, "this is test").write(process.cwd() + "/public/images/external/"+ id +".png",function(err) {
if (err) console.log(err);
});
}
下面是用Lantinghei_SC字库生成的图片:
下面是用msyh字库生成的图片:
1 回复
这个问题你后来解决了没