CN113723063B - 一种rtf转html并在pdf文件实现效果的方法 - Google Patents

一种rtf转html并在pdf文件实现效果的方法 Download PDF

Info

Publication number
CN113723063B
CN113723063B CN202111026639.3A CN202111026639A CN113723063B CN 113723063 B CN113723063 B CN 113723063B CN 202111026639 A CN202111026639 A CN 202111026639A CN 113723063 B CN113723063 B CN 113723063B
Authority
CN
China
Prior art keywords
label
pdf
html
rich text
format
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111026639.3A
Other languages
English (en)
Other versions
CN113723063A (zh
Inventor
刘剑飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Cric Technology Co ltd
Original Assignee
Sichuan Cric Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan Cric Technology Co ltd filed Critical Sichuan Cric Technology Co ltd
Priority to CN202111026639.3A priority Critical patent/CN113723063B/zh
Publication of CN113723063A publication Critical patent/CN113723063A/zh
Application granted granted Critical
Publication of CN113723063B publication Critical patent/CN113723063B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • G06F40/154Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Document Processing Apparatus (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种RTF转HTML并在PDF文件实现效果的方法,pdf转换框架采用itext技术路线,rtf富文格式采用转换html格式,并进行规范化,即标签成对,对交叉使用的标签重新按树形结构嵌套排序;然后转换html格式富文本的标签替换为pdf转换框架itext可识别的标签或方法;最终实现生成可显示富文本样式的pdf文件。

Description

一种RTF转HTML并在PDF文件实现效果的方法
技术领域
本发明涉及pdf显示富文本效果技术领域,尤其涉及一种RTF转HTML并在PDF文件实现效果的方法。
背景技术
rtf格式(富文本格式,Rich Text Format,即RTF格式,又称多文本格式,是由微软公司开发的跨平台文档格式。大多数的微软文字处理软件都能读取和保存RTF文档)和html格式的兼容性,同时满足转化pdf时,html标签可识别,以及后台开发人员无需掌握前端技术,模板维护等工作,降低部署复杂度。
目前很多系统的打印,都是pdf文件的打印,而文件内容的编辑很多是通过云平台的富文本编辑器,如何在pdf文件中显示富文本设计的效果,主流的做法是采用freemarker模板引擎,这种方式生成ftl模板(FreeMarker Template Language是Freemarker模板的文件后缀名),就需要后端开发人员掌握样式布局等前端开发技术,如html,css等采用ftl模板会增加维护,迁移的复杂度;见表1,部分生成pdf技术优缺点对比表。
该技术领域通常的技术方法和流程是采用主流采用html富文本格式,兼容rtf富文本格式的很少。具体缺陷是人工拷贝rtf富文本内容,这样只获取内容没有样式;或者用开源插件将rtf富文本转为html格式,但是转换的html不符合规范,如标签未成对封闭,标签交叉使用等在html转换pdf显示时,pdf转换框架itext无法识别部分html标签目前采用freemarker方式,又需后台开发人员掌握前端开发技术,造成开发效率的下降,模板部署迁移的复杂度提高。
同时,很多平台无法同时解析以前rtf格式和html格式富文本生成pdf文件,使得平台无法直接使用以前的历史rtf富文本,造成平台兼容性差。
发明内容
本发明的目的就在于为了解决上述问题而提供一种RTF转HTML并在PDF文件实现效果的方法,本发明pdf转换框架采用itext技术路线,rtf富文格式采用转换html格式,解决问题的方法技术本质是兼容rtf富文格式采用转换为html格式,并进行规范化及标签成对,去除交叉使用;对交叉使用的标签重新按树形结构嵌套排序;然后转换html格式富文本的标签替换为pdf转换框架itext可识别的标签或方法;最终实现生成可显示富文本样式的pdf文件。
本发明通过以下技术方案来实现上述目的:
一种RTF转HTML并在PDF文件实现效果的方法,包括以下步骤:
步骤1,系统读取rtf格式的富文本,用开源代码如RTF2HTML将rtf格式富文本转换为html格式富文本;
步骤2,规范化步骤1生成的html格式富文本:按dom树形结构进行规整,递归逐级进入dom树结构层级,判断最底一级的前标签是否有后标签存在并且一致,如果不存在或者不一致就补充或替换为一致的后标签;
步骤3,将步骤2生成规范的html格式富文本的所有标签进行筛选将pdf转换框架itext无法识别的tag、attribute进行替换;使用<img>标签解析出图片src的值,再采用框架api函数来设置图片样式,最终替换pdf框架无法识别的tag、attribute生成pdf框架可转换并实现效果的html富文本;
步骤4,将步骤3获取的html格式富文本,用pdf框架itext,生成pdf文件,其富文本效果显示在pdf文件中,pdf文件用于打印或持久化保存。
进一步方案为,所述步骤3中,不同层级前途的tag、attribute采用递归方式,先遍历最底层级的tag、attribute判断pdf框架是否识别,如无法识别则替换为可识别的tag、attribute;验证完后,递归回上一层继续判断该层级的tag、attribute是否识别及执行替换操作,如此往复直到最高一层级的标签鉴别完成。
进一步方案为,所述步骤3中,pdf框架可识别的html标签和无法识别的标签之间的替换联系采取建立一对一的映射关系,由数据库将无法识别的标签,以及其映射替换关系持久化保存;pdf框架无法识别的标签由于现有文档不够完善,采用提前验证出无法识别的html标签和建立替换联系规则的方式,将其保存在数据库中。
进一步方案为,所述步骤3中,建立itext框架无法识别html的tag、attribute数据表以及对应替换tag或方法索引字段;方法索引字段对应替换的方法,包括框架api函数。
进一步方案为,所述步骤2中,完成校验后,递归回上一层级继续判断是否后标签存在并且一致,如果不存在或者不一致就补充或替换为一致的后标签;如此往复递归直到校验完成最高一层级的前后标签。
本发明的有益效果在于:
本发明将rtf富文格式转换html格式,并进行规范化及标签成对,去除交叉使用;然后将转换html格式富文本的标签,替换为pdf转换框架itext可识别的标签或方法,同时后台开发人员无需掌握ess,html等前端开发技术。
本发明pdf转换框架采用itext技术路线,rtf富文格式采用转换html格式并进行规范化,即标签成对,对交叉使用的标签重新按树形结构嵌套排序;然后转换html格式富文本的标签替换为pdf转换框架itext可识别的标签或方法;最终实现生成可显示富文本样式的pdf文件。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要实用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
表1部分生成pdf技术优缺点对比表
Figure BDA0003243545740000041
在任一实施例中,如图1所示,本发明的一种RTF转HTML并在PDF文件实现效果的方法,包括:
步骤1,系统读取rtf格式的富文本,用开源代码如RTF2HTML将rtf格式富文本转换为html格式富文本。
步骤2,步骤1生成的html格式富文本,由于很多rtf格式的富文本不规范,尤其以前基于c#应用生成的富文本,在转化为html格式后,标签存在一定的混乱,如交叉使用标签,未成对封闭等问题。本步骤就是规范化步骤1生成的html格式富文本。首先,按dom树形结构进行规整,递归逐级进入dom树结构层级,判断最底一级的前标签,如<font>,是否有后标签存在并且一直,如</font>。如果不存在或者不一致就补充或替换为一致的后标签。完成校验后,递归回上一层级继续判断是否后标签存在并且一直,如果不存在或者不一致就补充或替换为一致的后标签。如此往复递归直到校验完成最高一层级的前后标签。
步骤3,将步骤2生成规范的html格式富文本的所有标签进行筛选,将pdf转换框架itext无法识别的tag、attribute进行替换。如:<p>标签替换为<font>和<br>标签,段落内嵌style样式缩进等。使用<img>标签解析出图片src的值,再采用框架api函数来设置图片样式,最终替换pdf框架无法识别的tag、attribute生成pdf框架可转换并实现效果的html富文本。本步骤不同层级前途的tag、attribute采用递归方式,先遍历最底层级的tag、attribute判断pdf框架是否识别,如无法识别则替换为可识别的tag、attribute;验证完后,递归回上一层继续判断该层级的tag、attribute是否识别及执行替换操作,如此往复直到最高一层级的标签鉴别完成。
本步骤中,pdf框架可识别的html标签和无法识别的标签之间的替换联系采取建立一对一的映射关系,由数据库将无法识别的标签,以及其映射替换关系持久化保存。pdf框架无法识别的标签由于现有文档不够完善,采用提前验证出无法识别的html标签和建立替换联系规则的方式,将其保存在数据库中。如建立itext框架无法识别html的tag、attribute数据表以及对应替换tag或方法索引字段。方法索引字段对应替换的方法,如框架api函数等。
步骤4,将步骤3获取的html格式富文本,用pdf框架itext,生成pdf文件,其富文本效果,如加粗,字体,颜色,下划线,段落样式等均可显示在pdf文件中,pdf文件可用于打印或持久化保存等用途。
目前多数平台的富文本是直接生成html格式,html格式的富文本直接从步骤3开始,直接生成的html格式富文本都是规范的html标签,不存在交叉,未封闭等不规范状况。因此无需步骤2进行规范化处理。
在一个具体实施例中,如图1所示,本发明的一种RTF转HTML并在PDF文件实现效果的方法,已经在四川省内5家中小型卫生院部署实施。部署的卫生院采用BS模式,对需要打印的文件,采用终端编辑富文本,以html格式传递到服务端的生成pdf文件。卫生院同时保存大量在C#应用上使用的模板文档,这些模板文档采用rtf富文本格式保存。模板文档包含pacs报告模板,诊断报告模板,检查检测模板等。采用本发明,可在新系统中直接使用这些rtf富文本格式保存的模板文档,实现了兼容两个格式富文本,并生成pdf文件,pdf文件上原版显示重点加粗,诊断下划线,字体,告警颜色等效果。
操作步骤如下:
1、在云端数据库导入卫生院rtf富文本格式模板文档,数据库建立可识别的html标签和无法识别的标签关系表并导入数据,启动云端服务系统程序。
2、卫生院操作人员登录云端服务,进行报告富文本编辑,生成pdf文件;也可以在报告模板管理页面中直接使用rtf格式的历史富文本文档或者在历史文档上进行再编辑,并生成pdf文件。
3、卫生院操作人员可以基于rtf格式的富文本报告模板进行再编辑,建立新的报告模板,同时也可以完全新建报告模板。新的报告模板以富文本以html格式保存在数据库中。
4、本发明使系统兼容了卫生院历史保存的富文本模板,同时也拓展适应新的常用html格式富文本。
本技术方案独有的技术特征是兼容rtf富文本格式,使用本技术方案的后台开发人员,无需再掌握前端开发技术。实现独特技术效果采用rtf转html富文本格式,并规范html格式,然后替换html标签为pdf转换框架itext可识别的标签或方法,最后实现pdf文件显示富文本效果。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

Claims (1)

1.一种RTF转HTML并在PDF文件实现效果的方法,其特征在于,包括以下步骤:
步骤1,系统读取rtf格式的富文本,用开源代码RTF2HTML将rtf格式富文本转换为html格式富文本;
步骤2,规范化步骤1生成的html格式富文本:按dom树形结构进行规整,递归逐级进入dom树结构层级,判断最底一级的前标签是否有后标签存在并且一致,如果不存在或者不一致就补充或替换为一致的后标签;
所述步骤2中,完成校验后,递归回上一层级继续判断是否后标签存在并且一致,如果不存在或者不一致就补充或替换为一致的后标签;如此往复递归直到校验完成最高一层级的前后标签;
步骤3,将步骤2生成规范的html格式富文本的所有标签进行筛选,将pdf转换框架itext无法识别的tag、attribute进行替换;使用<img>标签解析出图片src的值,再采用框架api函数来设置图片样式,最终替换pdf框架无法识别的tag、attribute生成pdf框架可转换并实现效果的html富文本;
所述步骤3中,不同层级前途的tag、attribute采用递归方式,先遍历最底层级的tag、attribute判断pdf框架是否识别,如无法识别则替换为可识别的tag、attribute;验证完后,递归回上一层继续判断该层级的tag、attribute是否识别及执行替换操作,如此往复直到最高一层级的标签鉴别完成;
所述步骤3中,pdf框架可识别的html标签和无法识别的标签之间的替换联系采取建立一对一的映射关系,由数据库将无法识别的标签,以及其映射替换关系持久化保存;pdf框架无法识别的标签由于现有文档不够完善,采用提前验证出无法识别的html标签和建立替换联系规则的方式,将其保存在数据库中;
所述步骤3中,建立itext框架无法识别html的tag、attribute数据表以及对应替换tag或方法索引字段;方法索引字段对应替换的方法,包括框架api函数;
步骤4,将步骤3获取的html格式富文本,用pdf框架itext,生成pdf文件,其富文本效果显示在pdf文件中,pdf文件用于打印或持久化保存。
CN202111026639.3A 2021-09-02 2021-09-02 一种rtf转html并在pdf文件实现效果的方法 Active CN113723063B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111026639.3A CN113723063B (zh) 2021-09-02 2021-09-02 一种rtf转html并在pdf文件实现效果的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111026639.3A CN113723063B (zh) 2021-09-02 2021-09-02 一种rtf转html并在pdf文件实现效果的方法

Publications (2)

Publication Number Publication Date
CN113723063A CN113723063A (zh) 2021-11-30
CN113723063B true CN113723063B (zh) 2023-06-13

Family

ID=78681003

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111026639.3A Active CN113723063B (zh) 2021-09-02 2021-09-02 一种rtf转html并在pdf文件实现效果的方法

Country Status (1)

Country Link
CN (1) CN113723063B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114048708A (zh) * 2022-01-13 2022-02-15 山东捷瑞数字科技股份有限公司 一种基于富文本编辑器的自动排版方法和系统
CN116070596B (zh) * 2023-03-29 2023-06-09 深圳市奥思网络科技有限公司 基于动态数据的pdf文件生成方法、装置及相关介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11126201A (ja) * 1997-10-23 1999-05-11 Nec Software Kobe Ltd Rtf−html相互変換方式
CN102662928A (zh) * 2012-03-28 2012-09-12 福建榕基软件股份有限公司 带文档导入的富文本编辑方法及装置
CN104598635A (zh) * 2015-02-06 2015-05-06 无锡江南计算技术研究所 一种基于xml描述的复杂文档自动生成方法
CN105760172A (zh) * 2016-03-02 2016-07-13 浪潮软件集团有限公司 一种基于itext的报表生成方法
CN106445494A (zh) * 2009-10-14 2017-02-22 韦尔迈格服务有限公司 自动化企业软件开发
CN106897251A (zh) * 2016-07-01 2017-06-27 阿里巴巴集团控股有限公司 富文本展示方法及装置
CN109815451A (zh) * 2018-12-13 2019-05-28 方正璞华软件(武汉)股份有限公司 一种pdf生成方法、装置及设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020143823A1 (en) * 2001-01-19 2002-10-03 Stevens Mark A. Conversion system for translating structured documents into multiple target formats
US7146564B2 (en) * 2001-12-21 2006-12-05 Xmlcities, Inc. Extensible stylesheet designs using meta-tag and/or associated meta-tag information
US20040044961A1 (en) * 2002-08-28 2004-03-04 Leonid Pesenson Method and system for transformation of an extensible markup language document
US20110157609A1 (en) * 2009-12-31 2011-06-30 David Brady Systems and methods for processing online and print material
US10157238B2 (en) * 2015-07-01 2018-12-18 Tnq Books And Journals Private Limited Transformation of marked-up content to a reversible file format for automated browser based pagination

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11126201A (ja) * 1997-10-23 1999-05-11 Nec Software Kobe Ltd Rtf−html相互変換方式
CN106445494A (zh) * 2009-10-14 2017-02-22 韦尔迈格服务有限公司 自动化企业软件开发
CN102662928A (zh) * 2012-03-28 2012-09-12 福建榕基软件股份有限公司 带文档导入的富文本编辑方法及装置
CN104598635A (zh) * 2015-02-06 2015-05-06 无锡江南计算技术研究所 一种基于xml描述的复杂文档自动生成方法
CN105760172A (zh) * 2016-03-02 2016-07-13 浪潮软件集团有限公司 一种基于itext的报表生成方法
CN106897251A (zh) * 2016-07-01 2017-06-27 阿里巴巴集团控股有限公司 富文本展示方法及装置
CN109815451A (zh) * 2018-12-13 2019-05-28 方正璞华软件(武汉)股份有限公司 一种pdf生成方法、装置及设备

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
W. Ecker.VHDL2HYPER-a highly flexible hypertext generator for VHDL models.《1999 Fall VIUF Workshop (Cat. No.PR00465)》.2002,1-5. *
基于JavaWeb的PDF安全编辑系统的设计与实现;胡荣磊;《北京电子科技学院学报》;第23卷(第02期);68-73 *
网页主题相关性判别的聚焦爬虫系统的设计与实现;刘娟;《计算机与现代化》(第10期);116-120 *
试析Java转化网页为PDF文档技术;王力猛;《电脑编程技巧与维护》(第06期);71-74 *
面向Web应用的报表管理系统生成器的设计与实现;王素霞;《中国优秀硕士学位论文全文数据库》(第01期);I138-292 *

Also Published As

Publication number Publication date
CN113723063A (zh) 2021-11-30

Similar Documents

Publication Publication Date Title
CN110852065B (zh) 一种文档审核方法、装置、系统、设备及存储介质
US7945438B2 (en) Automated glossary creation
US7979793B2 (en) Graphical creation of a document conversion template
US20040221233A1 (en) Systems and methods for report design and generation
CN113723063B (zh) 一种rtf转html并在pdf文件实现效果的方法
US20060048107A1 (en) Enhanced compiled representation of transformation formats
CN113609820B (zh) 基于可扩展标记语言文件生成word文件的方法、装置及设备
CN112015430A (zh) JavaScript代码翻译方法、装置、计算机设备及存储介质
CN110956026A (zh) 法律文书生成方法、生成装置和电子设备
CN113672781A (zh) 数据查询方法、装置、电子设备及存储介质
CN112230892B (zh) 一种基于可扩展标记语言的故障管理方法
CN115756437B (zh) 基于schema文件的可视化xml数据编制方法及系统
CN114238575A (zh) 文档解析方法、系统、计算机设备及计算机可读存储介质
CN114724166A (zh) 一种标题抽取模型的生成方法、装置及电子设备
CN115062117A (zh) 一种基于自然语言处理技术的文档自动生成分类的方法
CN110543641B (zh) 一种中外文信息对比方法及装置
CN112965772A (zh) web页面显示方法、装置和电子设备
CN106897287B (zh) 网页发布时间抽取方法和用于网页发布时间抽取的装置
CN113687827B (zh) 基于微件的数据列表生成方法、装置、设备及存储介质
CN113642291B (zh) 上市公司报告的逻辑结构树构建方法、系统、存储介质及终端
US20230297774A1 (en) Demand conformity analysis method and system, and electronic device and storage medium
CN113239670A (zh) 一种业务模板上传的方法、装置、计算机设备及存储介质
Georgiades et al. A novel software tool for supporting and automating the requirements engineering process with the use of natural language
CN110990636A (zh) 一种柴油机交互式电子技术手册智能化数据模块采集及转换方法
Al-Msie'deen BushraDBR: An automatic approach to retrieving duplicate bug reports

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant