古籍排版

古籍排版

流传至今的古籍,往往是手写本或刻本。古籍的数字化除了简单的扫描影印之外,往往通过提取其中的文本信息,再重新进行排版。这个过程中存在大量的1)信息损失,包括版式结构、批注、图像、位置、繁简转化信息等,2)人为错误,包括错误的异体字的处理、增删、句读等。

少数专业的出版机构和专家学者会通过大量的人工校对,来保证数字化的准确性,但这个过程耗时耗力,且难以保证100%的准确性。我们希望找到(或开发)一套开源、现代化的工具,使所有爱好者能够参与古籍的数字化,实现古籍的完美还原。

目标:用开源、现代化文本格式表示古籍中包括文字、图像、格式、位置在内的所有信息,并实现从源文件到排版输出的100%完美还原。

核心功能需求

  1. 直排方向: 文本必须垂直排列,且阅读顺序自右向左。
  2. 各种批注: 支持夹注(割注):在正文行内以两行小字进行注释、眉批、侧批等等
  3. 字符系统: 支持大异体字、生僻字,准确的繁简转换。支持不同字体。
  4. 版式结构:
    • 版框: 包含内、外向的界栏,支持天头地脚的比例控制。
    • 版心: 书页中心的部分,包含鱼尾(标识折页位置)、象鼻(版心上下两端)、黑口/白口。
  5. 句读圈点: 支持不同格式的句读(占位或不占位),圈点等。

进一步地,尝试支持插图,避讳字,书法字体等等。

二、 现状:现有排版工具比较

目前在古籍数字化领域,主要存在以下几类方案:

工具类型代表工具优势劣势
开源通用格式LaTeX逻辑与内容分离,排版精度极高,开源生态丰富。Tex设计时默认横排,宏包配置和开发较为复杂。有一定的学习曲线。
专业闭源软件Adobe InDesign视觉化操作极其直观,对复杂边框和艺术化元素的支持度最高。自动化程度低,难以处理超大规模数据,且无法开源。
专业闭源软件方正书版有较长的历史积淀,经过大规模商用验证,功能丰富。闭源商业模式,生态封闭。软件和接口设计陈旧,使用并不直观。
开源软件vRain由文本直接生成带版框竖排PDF自由度较低,难以支持复杂版式。

综上所述,LaTeX 是实现古籍完美还原的最具潜力的工具,但目前缺乏一个“开箱即用”且支持所有需求的宏包或解决方案。

三、 现状:LaTeX 解决方案比较

方案1.upTeX2.LuaTeX-ja3.LaTeX 扩展包
竖排原理修改最底层的排版引擎以支持竖排通过 Lua 回调函数在节点生成阶段修改 glyph 的方向和位置。需要字体支持旋转90度,在把整个页面旋转90度。
古籍还原度低:upTeX只支持日文竖排。古籍的各种版式需要重新开发极高:可利用 Lua 代码实现像素级定位和任意的底层操作。一般:由于竖排原理的限制,难以处理复杂的影印本版框复刻。
开发难度极高:需要懂 C 语言或极生僻的 pTeX 语法,中日字体度量差异大。中/高:需要掌握 Lua 和 TeX 节点图(Node graph),但文档丰富。。低:只要会写 LaTeX 宏包即可,但可扩展性差。
生态兼容性差 (日文圈自成一派)好 (兼容大部分 LaTeX 宏包)最好 (原生 LaTeX 环境)

其他的一些方案如用ConTeXt(受众过小),或LaTeX下把每个字符设计成一个盒子(扩展性太差)均不在考虑范围内。

综上,采用类似LuaTeX-ja的方案(为日文设计),为中文古籍实现所需要的功能,是最可行的方案。

四、当前进展

正在进行小范围实验。


← 返回首页 | 下一板块:信息提取 →