如何连接节点js中的字体

时间:2015-11-27 12:53:34

标签: javascript css node.js fonts

我有一个字体air.ttf 内部css文件包含以下代码:

@font-face {
font-family: 'air';
src: url("fonts/air.ttf");
}

在这里加工链接(表达框架):

function rf(link,folder,type)
{
  app.get("/"+link,function(req,res)
  {
    fs.readFile(__dirname+"/"+folder+"/"+link,function(err,data)
    {
      res.set('Content-Type',type;
      res.end(data);
    });
  });
};

rf("fonts/airborne.ttf","css","application/ttf");

Chrome会显示错误: 无法解码下载的字体:... air.ttf

如何修复???

1 个答案:

答案 0 :(得分:0)

正如评论中所指出的,使用express.static,因为它实际上是它的用途。

至于解码错误:您使用的字体很可能在技术上已损坏。根据错误,确切地说,某些应用程序可能并不关心,但浏览器对于坏字体非常恐慌:它们使用OTS清洁剂来检查甚至是最小的损坏或坏数据,如果它发现任何,该字体将无法加载。

获取TTX的副本,这是字体世界的首选实用程序,可将二进制字体转换为人类可读的XML格式(反之亦然),然后执行ttx air.ttf ,并查看是否将字体报告为已损坏。如果是这样:发现问题。如果不是:将你的发现放在你的问题中,因为证明字体很好