yanhui 发表于 2024-1-8 16:55:56

使用gbk字库如何实现换行

用znfat,模拟电子书,OLED显示文本内容,用的是GBK字库,请问文本中的换行如何在OLED上实现,我这里显示的换行是一个乱码

Snapdragon 发表于 2024-1-11 09:38:43

这个只能你的程序去处理,检测到换行符手动在OLED上换行。OLED的驱动一般都不支持换行。,

yanhui 发表于 2024-1-11 17:29:18

目前还没有处理好

冷月烟 发表于 2024-1-12 09:28:12

字库没有换行的概念,你可以自己检测,把换行跳掉,手动切到下一行

大明狐 发表于 2024-1-12 09:53:32

换行和分段是在现实字符的函数里实现。
换行是当显示的字符的x坐标到屏幕右边界的距离不够一个字符宽度时,就执行一段让x坐标归零,同时让y坐标增加一个字符高度。

段落换行也一样,当读取到换行符的时候,让xy坐标归零和下移。



至于断尾的乱码,看下文本是什么编码,文档里换行符的内码是多少,读取到的时候,替换成单片机能识别的数值。

yanhui 发表于 2024-1-12 10:03:25

大明狐 发表于 2024-1-12 09:53
换行和分段是在现实字符的函数里实现。
换行是当显示的字符的x坐标到屏幕右边界的距离不够一个字符宽度时, ...

用的是GBK字库编码,ZNFAT读取到的TXT文件的内容显示到OLED,GBK编码表查询不到换行符对对应的内码

sdf15937 发表于 2024-5-11 15:12:28

哇偶,原来早就有人做出来了小说阅读器……不知道能不能分享下代码?

xiangzichen 发表于 2024-5-12 01:53:28

yanhui 发表于 2024-1-12 10:03
用的是GBK字库编码,ZNFAT读取到的TXT文件的内容显示到OLED,GBK编码表查询不到换行符对对应的内码 ...

用二进制方式打开txt文件,看看换行的地方是什么,然后显示代码里面对这个特殊字符换行处理就好了吧.??
页: [1]
查看完整版本: 使用gbk字库如何实现换行