长原文的可读性工程:离线知识库里显示层该怎么设计
长原文的可读性工程:离线知识库里显示层该怎么设计
做典籍类知识库,讨论通常集中在内容怎么组织:目录怎么排、生僻字怎么注音、原文与白话怎么挂接、词条怎么互链。这些都属内容层。但内容组织得再清楚,最终仍要落到一块屏幕上被读完。本文换一个视角,以一款纯本地运行的鸿蒙国学知识库为例,记录显示层的几项设计,以及它和内容层为什么应该分开。
一、原文类文本的麻烦是密度,不是难度
白话可以扫读,原文不行:句子短、单字信息量大、段落切分细,还夹着不少不常见的字。一屏挤满短句时,读者会不自觉加速、跳行,然后把卡顿归因为「内容太难」。实际卡点常在版面上——行与行贴得太近、段落之间没有可辨识的间隔,眼睛找不到落点。
所以显示层要解决的第一个问题不是美化,而是降低密度:字号可调、行距可调、段落留白足够。把字号上调一档、行距放宽之后,同样的内容读起来不再需要手指定位。这是一次几乎零成本的改动,收益却覆盖每一次阅读。
二、暗色是场景参数,不是主题皮肤
把暗色当成皮肤选项,容易做成「换一套配色」就结束。但对长文本来说,它更像一个按场景切换的参数:晚上读和白天读不是同一个任务,亮度压下去之后连读二十分钟不至于刺眼。
这类设置的衡量标准也很朴素:能否让人愿意多读几段。它不是内容功能,不增加任何条目,却直接影响一部典籍能不能被分几次读完——这恰恰是工具书最真实的使用方式。
三、呈现参数应该和内容数据分开存
一条容易踩的坑,是把字号、行距、暗色这些随人变、随场景变的参数,和正文、注解、词条这些固定数据绑在同一份结构里。绑在一起之后,每次改版都要连带着处理用户偏好;拆开之后,内容层只管把典籍排清楚,显示层只管把版面调到合适,两边互不牵连。
本地优先的应用在这件事上还有个额外好处:偏好可以随正文一起存在设备里,断网打开不会退回默认值,也不依赖账号同步。代价是换设备时偏好不跟随,对固定一台手机阅读的人影响有限。
四、改完要能立刻回到原处
显示设置的使用场景很特殊:它不是一次性配置,而是在阅读中途被触发的——觉得字太密,顺手调大,然后要接着刚才那句读下去。因此「改完直接回到原条目」比「设置项丰富」更重要。如果需要退出重进、重新找条目,这次调整就打断了阅读,显示层反而变成负担。
五、呈现层不增加内容
原文、注解、词条一个字没多,变的只是它们被看见的方式。把这一层单独做清楚,内容层就不用为了可读性去改句子、拆段落或加插图,数据保持原样,版面按需调整。
小结:内容层决定「查得到什么」,显示层决定「能不能把它读完」。前者是数据结构问题,后者是可读性工程问题,两者分开设计,一部典籍才既能随手查,也能分几次读完。以上为个人使用与实现记录,具体选项以实际版本为准。
更多推荐


所有评论(0)