我正在使用OpenGL,我需要传递给一个字节的函数数组。
glCallLists(len('text'), GL_UNSIGNED_BYTES, 'text');
这种方式工作正常。但我需要传递unicode文本。我认为它应该像这样工作:
text = u'unicode text'
glCallLists(len(text), GL_UNSIGNED_SHORT, convert_to_array_of_words(text));
这里我使用GL_UNSIGNED_SHORT
表示我将给出数组,其中每个元素占用2个字节,并以某种方式将unicode文本转换为单词数组。
那么,如何将unicode字符串转换为字符数字的“原始”数组?
答案 0 :(得分:2)
每个字符占用2个字节的UTF编码是UTF-16:
print repr(u'あいうえお'.encode('utf-16be'))
print repr(u'あいうえお'.encode('utf-16le'))