我有.otf字体列表,大约有200种字体。
我正在使用opentype.js加载这些字体,如下所示:
opentype.load('HelveticaNeueLTStd-BdCn.otf', (err, font) => {
if (err) {
console.error('Error loading font ', err);
return
}
canvas.getActiveObject().set('fontFamily', 'HelveticaNeueLTStd-BdCn');
canvas.requestRenderAll();
});
但是它不应用我从.otf加载的任何字体系列,如果我对.ttf做同样的事情,那么它工作正常。
答案 0 :(得分:1)
使用此代码是可能的:首先从服务器加载字体,然后将这些字体作为字体插入html的head标签:
const a = '<style> @font-face {\n' +
' font-family: ' + fontFileName + ';\n' +
' src: url(' + url + ') format("opentype");\n' +
'}</style>';
$('head').append(a);
URL是:字体文件的Blob。