我正在尝试使用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
答案 0 :(得分:2)
我认为这是一个简单的编码问题。该网页是UTF-8,但您已粘贴用其他字符集编码的文本(可能是来自Windows机器的cp1252)。你可以通过查看网页的来源来看到这一点 - É字符也在那里搞砸了。
为了进行比较,这里有一个simplified version of your page文本正确编码。
并非所有JS字体都能处理UTF-8字符。例如,来自Three.js的默认helvetiker将把É渲染为问号。