xuhao20040309 发表于 2023-3-5 16:08:41

CG50 C语言编程怎么显示中文?

我正在试着用PrismSDK+libfxcg给cg50写插件,但是发现自带的PrintXY、Print_OS、PrintCXY等显示文本的函数都不能显示中文(显示为空白)。SDK文档说,中文显示可能使用了别的函数。
想知道需要用什么方法才能显示中文呢?谢谢。

cctvgm 发表于 2023-3-9 10:57:51

需要一个点阵字库,并且自己编写调用字库函数。

xuhao20040309 发表于 2023-3-9 20:39:29

cctvgm 发表于 2023-3-9 10:57
需要一个点阵字库,并且自己编写调用字库函数。

这样确实可以,不过看系统自带的TEST MODE里的GB Code页面,CG50应该是自带全GB字库的,应该有什么特殊API可以用来显示中文才对。
想知道现在有没有什么用于CG50的调试工具呢?这样也许可以靠调试自带程序来把对应的API逆向出来。

mrlgs 发表于 2023-3-23 20:51:38

xuhao20040309 发表于 2023-3-9 20:39
这样确实可以,不过看系统自带的TEST MODE里的GB Code页面,CG50应该是自带全GB字库的,应该有什么特殊AP ...

要是cg50能显示中文 9750三代应该也能显示中文

353640385 发表于 2023-4-3 20:39:00

显示中文FXFD10可以呀

xuhao20040309 发表于 2023-4-4 10:22:37

353640385 发表于 2023-4-3 20:39
显示中文FXFD10可以呀

前几天在cemetech上问到了,需要在输出中文前调用1300h号系统函数(外国网友把它起名叫ProcessPrintChars)。所以输出中文的时候需要这样:
ProcessPrintChars(936);
PrintCXY(……); //PrintMini等同理;PrintXY则不需要ProcessPrintChars,而是将前两个字符换成\x3\xa8
ProcessPrintChars(0);
这样就可以用系统内置字库输出中文了。

bioafanda 发表于 2023-4-4 14:43:41

举个例子学习学习噻。

xuhao20040309 发表于 2023-4-5 21:47:18

本帖最后由 xuhao20040309 于 2023-4-5 21:51 编辑

bioafanda 发表于 2023-4-4 14:43
举个例子学习学习噻。
下面这个例子可以显示一个蓝色的“你好世界”

#include <fxcg/display.h>
#include <fxcg/keyboard.h>
int main() {
int key;
ProcessPrintChars(936);
PrintCXY(1,1,"你好,世界!",0,-1,COLOR_BLUE,COLOR_WHITE,1,0);
ProcessPrintChars(0);
while (1) GetKey(&key);
return 0;
}
另外我前几天写了个简单的txt阅读器,感兴趣的话可以看一下(

mrlgs 发表于 2023-4-19 23:00:14

xuhao20040309 发表于 2023-4-5 21:47
下面这个例子可以显示一个蓝色的“你好世界”




不错呦,这段代码要怎么运行

mrlgs 发表于 2023-4-20 19:26:10

xuhao20040309 发表于 2023-4-5 21:47
下面这个例子可以显示一个蓝色的“你好世界”




感兴趣,发一下吧,[email protected]

xuhao20040309 发表于 2023-4-20 21:58:21

mrlgs 发表于 2023-4-20 19:26
感兴趣,发一下吧,

网上搜libfxcg,配置好sdk,把示例项目的代码改成这个之后make就行了
阅读器的话看我之前的主题帖( ̄∇ ̄)点正文里那个GitHub就是那个电子书阅读器的源代码了

bioafanda 发表于 2023-4-25 13:48:05

太厉害了,技术高超。
页: [1]
查看完整版本: CG50 C语言编程怎么显示中文?