无法使用Unicode字体与three.js TextGeometry一起使用

时间:2013-08-19 14:15:43

标签: javascript 3d three.js webgl

我正在尝试使用three.js TextGeometry来设置unicode文本的动画。

文字是:“Saint-Étienne-du-Mont” 它在Canvas中出现为“Saint - ?? tienne-du-Mont”

请参阅此image

代码:

var text3d = new THREE.TextGeometry( theText, {
    size: 80,
    height: 20,
    curveSegments: 0,
    font: "ubuntu"
});

以下是指向我的网页的链接:test_canvas

1 个答案:

答案 0 :(得分:2)

我认为这是一个简单的编码问题。该网页是UTF-8,但您已粘贴用其他字符集编码的文本(可能是来自Windows机器的cp1252)。你可以通过查看网页的来源来看到这一点 - É字符也在那里搞砸了。

为了进行比较,这里有一个simplified version of your page文本正确编码。

并非所有JS字体都能处理UTF-8字符。例如,来自Three.js的默认helvetiker将把É渲染为问号。