Three.js 杂记(八)—— 文本几何体

FontLoader
在 three.js 中,如果想要显示出文本文字的效果,可以使用 FontLoader,这是使用 JSON 格式中加载字体的一个类。返回 Font, 返回值是表示字体的 Shape 类型的数组。 其内部使用 FileLoader 来加载文件。
var loader = new THREE.FontLoader();
TextGeometry
使用 FontLoader 后,生成几何体时,可以使用 TextGeometry。一个用于将文本生成为单一的几何体的类。 它是由一串给定的文本,以及由加载的 Font(字体)和该几何体 ExtrudeGeometry 父类中的设置所组成的参数来构造的。
核心:
使用示例:
具体效果:

中文乱码问题
如果将文字内容修改为中文,就会出现乱码现象
Hello three.js! --- > 你好 three.js!
显示样式:

这是由于使用的 helvetiker_regular.typeface.json 不支持中文的缘故
之后我使用了 Microsoft YaHei_Regular.json,可以使得中文正常显示
显示样式:

字体包
使用的字体包 Microsoft YaHeiRegular.json 和 helvetikerregular.typeface.json 可以从下面两个地方进行下载:
百度网盘:https://pan.baidu.com/s/1T8SLJs7HLkum2cSE3kqCTQ
提取码:730t
CSDN 下载:https://download.csdn.net/download/qq_36171287/15365234
也可以使用 Facetype.js 进行转换 Facetype.js
版权声明: 本文为 InfoQ 作者【空城机】的原创文章。
原文链接:【http://xie.infoq.cn/article/5dab2629be5f20c13fe56a222】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论