Three.js 加载中文字体

qq_15715655 2018-09-25 03:48:19
three.js在场景中可以加载obj文件(OBJLoader),加载stl文件(STLLoader)

加载文件太大时可以将obj和stl等转化的json文件等。

本文讲解如何加载字体以及中文字体

之前用three.js写个加载3D立体文字效果,发现输入中文会返回“?”,后来发现three.js字体(examples\fonts)文件夹下的json文件中只有英文和一些符号的,没有中文。
所用工具:facetype.js-gh-pages(上传字体,可以找本地电脑控制面板中的字体库的字体(TTF)进行测试,不过找小一点的,太大了编辑器打开会崩溃)

我用的是 方正兰亭超细黑简体 1.6M挺小,可以打开下面工具地址,上传这个ttf后缀的字体文件,它将会下载一个.json的文件。

https://github.com/gero3/facetype.js.git 下载地址

http://gero3.github.io/facetype.js 远程地址
加载慢的优化方案有:

  1.弄个默认的json文件,把glyphs对象数组清空( "glyphs":{} ),在加载之前请求接口,接口返回该输入字体的glyphs下的字体数据对象,让把对象追加到glyphs里

面,就不用加载全部的了。

按照这方法100%能加载出中文字体,经本人亲测。
...全文
385 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

39,084

社区成员

发帖
与我相关
我的任务
社区描述
HTML5是构建Web内容的一种语言描述方式。HTML5是互联网的下一代标准,是构建以及呈现互联网内容的一种语言方式.被认为是互联网的核心技术之一。
社区管理员
  • HTML5社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧