文档内容结构化技术探索

word,ppt,excel和pdf等十几种常见办公文档,核心基础服务是文档转码和展现。

为了统一十几种文档的转码和展现方案,不依赖于原文件格式的开档软件,技术调研后,最终方案为任意文档转码为pdf格式,解析开源的pdf数据格式,加工后形成文库自有文档格式,在pc端、无线端排版和渲染

PC端渲染采用源于PDF的xreader版式数据,版式数据指的是每个元素(文字、图片)都有一个坐标信息和元素的宽高信息,以及其他的描述信息。

图片

Retype流式数据(基于xreader版式数据)

文档内容“版式转流式”的方案,遍历xreader版式数据中的每个元素,提取坐标信息x,y和元素的宽高w,h信息。比较接近的y认为是同一行数据,y接近的情况下,根据x和w拼接相邻的文本元素、连接相邻的文本和图片

BDJson流式数据(基于ooxml数据)

OOXML是开源项目,基于zip+xml的格式,普通文本及其字符属性、段落属性的读取和解析较为方便,其自带章节、段落和表格等结构化信息,便于流式排版。基于本次排版需求,以及考虑到将来有word在线编辑的场景,方案设计为语义级别的精确解析文档,抽取内容和属性,组建office数据结构

章节、段落等数据结构,遵循ooxml标准

word中支持的多套公式数据“域公式、mathtype公式,omath公式”统一转码成LaTex数据格式,不仅便于后续编辑,而且可以适配正文的字体和大小,整体排版效果更统一

猜你喜欢

转载自blog.csdn.net/ejinxian/article/details/119221379
今日推荐