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数据格式,不仅便于后续编辑,而且可以适配正文的字体和大小,整体排版效果更统一

文档内容结构化技术探索相关推荐

  1. html文档半结构化数据,什么是半结构化数据(semi-structured data)?

    半结构化数据的定义 我们在设计一个信息系统时必然涉及到数据的存储,而数据存储用得最多的就是关系数据库.通常我们会将数据按业务分类,并设计相应的表,然后将对应的信息保存到相应的表中.比如一个企业信息管理 ...

  2. 如何思考总结,并如何写文档展示. 结构化思考, 金字塔思维

    先看三张图: 术语:  交叉表, 是人分类能力提升的一个标志. (对问题思考可以分类到多个维度,并了解维度之间的层级关系,哪个更主要,哪个是次要) 该图的是最简单的整理表格. 进一步复杂的在数据分析上 ...

  3. html文档半结构化数据,什么是半结构化数据?

    要考虑半结构化数据是什么,让我们从类比开始 – 采访. 假设您正在进行半结构化访谈.顾名思义,这在介于结构化和非结构化的访谈之间. 对于上下文,结构化访谈是指您的人力资源团队预先确定所询问的问题以及询 ...

  4. 智能文档处理IDP关键技术与实践-高翔

    什么是智能文档处理?针对文本数据处理尤其是纯文本,大家通常会想到使用自然语言处理(Natural language processing,NLP)技术来解决语义理解及分析处理工作.关于自然语言处理技术 ...

  5. 智能文档处理IDP关键技术与实践

    什么是智能文档处理?针对文本数据处理尤其是纯文本,大家通常会想到使用自然语言处理(Natural language processing,NLP)技术来解决语义理解及分析处理工作.关于自然语言处理技术 ...

  6. C++--深入分析MFC文档视图结构(项目实践)

    1 必备基础知识概述 1.1 MFC 文档视图结构程序结构总揽 当我们使用 MFC AppWizard 生成一个 MFC 程序,选用所有默认的设置(当然也是 Multiple Documents ,本 ...

  7. 深入分析MFC文档视图结构(项目实践)

    文档视图结构(Document/View Architecture)是MFC的精髓,也是Observer模式的具体实现框架之一,Document/View Architecture通过将数据和其表示分 ...

  8. 代码 纪录 软件_「软件资料」-「资讯动态」-软件开发类项目关键文档内容要求...

    1 软件开发计划 2 需求规格说明书 3 软件概要设计说明 4 数据库设计说明 5 软件详细设计说明 6 可执行程序生成说明 7 软件测试计划 8 软件测试说明 9 软件测试报告 10 安装部署手册 ...

  9. Tika:一个强大的Java文档内容解析工具

    Tika介绍 Apache Tika是基于java的内容检测和分析的工具包,可检测并提取来自上千种不同文件类型(如PPT,XLS和PDF)中的元数据和结构化文本. 它提供了命令行界面.GUI界面和一个 ...

最新文章

  1. form表单的两种提交方式,submit和button的用法
  2. 裸板烧写 bootloader
  3. Linux命令-关机,重启
  4. React Native 宣布重构计划!
  5. php 数据类型 map,ResultMap和ResultType的区别
  6. 数据结构与算法-二叉树遍历
  7. 关于openstack部分计算节点无法实现热迁移问题描述
  8. C++求复数的角度_单词复数规则:tomato的复数究竟是加s还是es?
  9. 关于数据库查询中的几种连接
  10. MPC(模型预测控制)控制小车沿轨迹移动——C++实现
  11. java碰碰球历险记下载_【Java写的碰碰球游戏(2) 】
  12. mysql是个单用户数据库_MySQL是一个支持单用户的数据库管理系统 答案:×
  13. 今天正式入伏了,最全的三伏开运养生习俗都在这里了!!
  14. pink老师京东关闭广告作业
  15. element导航菜单添加搜索功能
  16. java js方法_java如何调用js方法
  17. 上网本安装linux_微软杀死了Linux上网本吗?
  18. python项目实战—飞机大战
  19. badboy录制时弹框提示“当前页面的脚本发生错误”
  20. 尔雅科幻中的物理学答案

热门文章

  1. zw版【转发·台湾nvp系列Delphi例程】HALCON DivImage2
  2. 【开源】开发者新闻APP+新闻Restful服务+博客园新闻采集程序+infoq新闻采集程序+36kr新闻采集程序+oschina新闻采集程序+51cto新闻采集程序+csdn新闻采集程序...
  3. atitit.集合的filt操作细分 filter总结
  4. 授权windows客户端用户连接Linux mysql命令
  5. 问题二十六:C++全局变量的使用实例
  6. BI工具选型需考虑哪些问题
  7. 如何代理物联卡?需要什么流程认证?
  8. 正向代理 smtp imap_Nginx代理模式及区别
  9. 数据库相关概念与编程使用方式
  10. 日期的包装 java,Java基础之Java常用类--Object类,字符串相关类,包装类,日期相关类,数字相关类...