Javascript 三.js文本呈现问题

Javascript 三.js文本呈现问题,javascript,three.js,Javascript,Three.js,我目前正在从事一个three.js项目,我们在将字体加载到文本时遇到了问题 我们使用object来呈现字体,使用js字体来添加字体 有些字体效果很好,但有些字体的效果不如预期,有些字母不能正确呈现,如d和o 这可以在下面的提琴中看到,字体加载的是一些字母的内部,而不是外部 有人能确定为什么会发生这种情况,以及是否有更好的方法来显示文本(可能是加载html元素) 提前谢谢 var textGeom = new THREE.TextGeometry("Video Dp", {

我目前正在从事一个three.js项目,我们在将字体加载到文本时遇到了问题

我们使用object来呈现字体,使用js字体来添加字体

有些字体效果很好,但有些字体的效果不如预期,有些字母不能正确呈现,如d和o

这可以在下面的提琴中看到,字体加载的是一些字母的内部,而不是外部

有人能确定为什么会发生这种情况,以及是否有更好的方法来显示文本(可能是加载html元素)

提前谢谢

var textGeom = new THREE.TextGeometry("Video Dp", 
     {
      font: 'acknowledgement',
      weight: 'normal'
     });
var material2 = new THREE.MeshNormalMaterial();
var textMesh = new THREE.Mesh( textGeom, material2 );

scene.add( textMesh );

请检查小提琴。实际上问题在于你的字体风格。我刚刚改变了字体,它的工作很好


它与type1字体的“路径方向”有关


访问。您可以使用解决方案和用于使用任何字体文件生成网格的工具详细了解该错误

使用此小提琴()作为起点来显示您的问题。@gaitat已更新,谢谢您的小提琴!我同意字体是问题所在,但这是转换器的问题还是不建议输入的字体类型?这完全取决于您使用的字体,最好切换到其他字体以获得良好的输出,转换器工作正常,但在three.js 3D文本中使用不同的字体时会显示不同的属性
var textGeom = new THREE.TextGeometry("Video Dp", {
    font: 'optimer',
    weight: 'normal'
});
var material2 = new THREE.MeshNormalMaterial();
var textMesh = new THREE.Mesh(textGeom, material2);
scene.add(textMesh);