cocos2dx在寫中文字型的時候出現亂碼

2021-07-02 20:37:36 字數 1016 閱讀 6194

有時候,根據程式的需要,可能會新增中文字型,但是程式在編碼的時候可以能會出現亂碼,那麼這麼處理呢,看如下**:

#include #include #include #ifdef win32

#define utext(str) gbktoutf8(str)

#else

#define utext(str) str

#endif

#ifdef win32

#include "platform/third_party/win32/iconv/iconv.h"

static char g_gbkconvutf8buf[5000] = ;

const char* gbktoutf8(const char *strchar)

size_t strlength = strlen(strchar);

size_t outlength = strlength<<2;

size_t copylength = outlength;

memset(g_gbkconvutf8buf, 0, 5000);

char* outbuf = (char*) malloc(outlength);

char* pbuff = outbuf;

memset( outbuf, 0, outlength);

if (-1 == iconv(iconvh, &strchar, &strlength, &outbuf, &outlength))

memcpy(g_gbkconvutf8buf,pbuff,copylength);

free(pbuff);

iconv_close(iconvh);

return g_gbkconvutf8buf;

}#endif

上面是漢字轉換,有可能出先連線出問題的情況,那是程式所用到的iconv的lib沒用新增進去,你只需要在你的工程--屬性--連線--輸入--新增依賴項--libiconv.lib(新增這個lib檔案就可以了)

cocos2dx顯示中文

從外部檔案讀取utf 8 推薦大家使用資源檔案進行配置儲存,如xml將其採用的utf 8的編碼方式儲存,自然會讓我想到,日文 韓文等待各種國家的語言都可以正常顯示了,為了你的軟體國際化.盡量採用這種方式吧!到時候根據手機系統的語言,然後動態的來讀取你檔案中的資源.先看下我們的xml檔案 html v...

Cocos2d x 文字渲染

文字渲染 cclabelatlas cclabelbmfont cclabelttf類都是繼承 cclabelprotocol類,即能夠使用系統字,也能夠自己定義渲染字型。cclabelatlas類使用作為文字的一種方式,通過直接定義 cclabelatlas label0 cclabelatlas...

cocos2dX 文字的渲染

1 建立一段文字 create函式的三個引數分別為 文字內容 字型和字型大小 cclabelttf font cclabelttf create hello world 微軟雅黑 48 2 獲取文字的尺寸 font getcontentsize 返回的是乙個ccsize型別的值 該值有兩個屬性wid...