@晕哥,jmhh247:按晕哥在9楼的方法,直接在程序中用utf-8编码。
GuiStart.rar
猜测有几种可能:
1. 16bit unicode字节顺序颠倒一下
2. mdk 的 armcc 编译器不支持 unicode(\u)
3. arm emwin 的 lib 不支持 unicode(\u)
4. 其他
]]>估计7楼是c文件另存为 无bom utf8 文件, 可能这种操作对用16进制编码字符串的文件无效吧.
最后改成啥样了,麻烦楼主发一个文件上来看看, 谢谢。
@晕哥,jmhh247:按晕哥在9楼的方法,直接在程序中用utf-8编码。
GuiStart.rar
楼主在7楼的回复是两种格式都不行,
最新回复里,为什么utf8又可以了,我有点蒙。。。
估计7楼是c文件另存为 无bom utf8 文件, 可能这种操作对用16进制编码字符串的文件无效吧.
最后改成啥样了,麻烦楼主发一个文件上来看看, 谢谢。
]]>最新回复里,为什么utf8又可以了,我有点蒙。。。
]]>GUI_UC_SetEncodeUTF8() //GUI_DispStringAt("\ue631",200,200); //改为下行: GUI_DispStringAt("\xEE\x98\xB1",200,200);
按上面修改先试一试。
参考: https://www.cnblogs.com/fancyop/p/emWin_Chinese_Show_Tutorial.html
多谢,晕哥和notepad--的指点,直接用UTF-8编码就OK!如图。但这样人工转也麻烦,确定C文件转为了UTF-8,因为文字能正常显示,不知问题何在,会不会是MDK哪里需要设置?
GUI_UC_SetEncodeUTF8()
//GUI_DispStringAt("\ue631",200,200); //改为下行:
GUI_DispStringAt("\xEE\x98\xB1",200,200);
按上面修改先试一试。
参考: https://www.cnblogs.com/fancyop/p/emWin_Chinese_Show_Tutorial.html
]]>\ue631 改成 \xu6\x31
]]>我只用过MDK编译,不知道和编译器是否有关
可以试试不带bom的utf8格式
]]>按你的描述,可能是编码问题
试试:把相关C文件转为UTF-8-BOM,用notepad++就行
谢谢Jmhh247:
转了MainTask()所在的C文件GuiStart.c,还是不行。不知道是否还有别的文件也要格式转换。
试试:把相关C文件转为UTF-8-BOM,用notepad++就行
]]>