因此,我有一個解析xml的實現,其中包括維基百科主頁的位置和字符串。解析使用rapidxml完成,之後字符串由http://utfcpp.sourceforge.net/從UTF-8轉換爲UTF-32。然後在freetype中使用UTF-32代碼:FreeType中的Unicode麻煩
unsigned long c = FT_Get_Char_Index(face,*p);
FT_Load_Glyph(face,c,FT_LOAD_RENDER);
其中* p是UTF-32字符代碼。這個字形然後在OpenGL中渲染。
現在,我似乎無法獲得流行字符的工作,也沒有任何中文或日語或viet,我相信* p對應於正確的代碼,我會感謝任何我可以得到的指針。
對於這些字體使用微軟arial.ttf,從Arch linux package和我在字體查看程序中看到的,它應該包含我想要的字符。
謝謝您的建議!使用FT_Select_Charmap沒有產生任何不同的結果,我猜測unicode是freetype的默認值? 是否有任何免費的字體包含我期待的角色,你可以推薦? – 2012-07-16 10:08:54
Re。字體,我會從這裏開始:http://en.wikipedia.org/wiki/Unicode_typeface - 還有一件事要檢查是在調用'FT_Get_Char_Index'之前斷點並檢查您傳遞的代碼點。使用rapidxml或utfcpp可能會有一個錯誤... – Roddy 2012-07-16 10:27:39
Freetype的默認編碼取決於您使用的字體以及其他一些內容。我建議明確指定編碼。 – Roddy 2012-07-16 10:48:08