[发明专利]一种网页内容的格式化输出方法无效
申请号: | 201210009117.7 | 申请日: | 2012-01-13 |
公开(公告)号: | CN103116592A | 公开(公告)日: | 2013-05-22 |
发明(设计)人: | 黄靖 | 申请(专利权)人: | 昆山麦克斯泰科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 215300 江苏省昆山市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 网页 内容 格式化 输出 方法 | ||
技术领域
本发明涉及一种网络信息输出技术,尤其是一种互联网网页内容的格式化输出方法。
背景技术
随着互联网信息技术的不断发展和日趋成熟,网络信息蔓延到千家万户。虽说已是互联网无所不能的时代,但还是会需要将网页内容打印出来阅读。对于网生的电子报、电子期刊这些更适合于在网络环境中阅读的内容,怎样通过打印输出生成适当的纸媒页面呢?长时间来,这一直是一个课题。
将网页中特定区域的内容格式化输出成纯文本格式,给使用者近似于浏览器中的格式的文本,成为技术人员需要解决的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种网页内容的格式化输出方法,既能快速便捷地完成网页内容的格式化输出,又能提高输出文件的质量,改善使用者的阅读体验。
为达到上述目的,本发明提供的方法是找到网页区域并解析成树结构,根据每个标签的(显示)含义,及利用双堆栈找到哪个点需要加回车,而段落的开始需要加上缩进。本发明的技术方案是这样实现的:
A、解析Html页面,将html转换成标准xml格式;
B、先有预留一个字符串缓冲区(StringBuffer),生成文档树结构(DOMTree)并遍历该树结构的所有节点,将文本内容追加到字符串缓冲区中。遍历完成后字符串缓冲区的内容就是最终的格式化文本。
进一步地,步骤A中所述细化为:
A1分析原始文档,补足html规范中需要的TAG,和缺少结尾的TAG,以及处理不规范的TAG属性的写法,将非良构的html页变成良构的;
A2过滤掉<SCRIPT><STYLE><SELECT><INPUT>和正文显示无关的标记。
较佳地,步骤A先找到页面中的有用区域,即网页的正文区域。
进一步地,步骤B,将已经良构化的html页面解析成文档树,并遍历该树,找到树中的文本节点。
进一步地,步骤B中所述细化为:
B1遍历树结构可以借用一个堆栈结构,创建另一个堆栈记录当前访问节点的父节点,以下称其为父节点堆栈,并准备好一个字符串缓冲区,准备接受字符;
B2当遇到<address>,<blackquote>,<div>,<dl>,<h1>,<h2>,<h3>,<h4>,<h5>,<h6>,<ol>,<table>,<tr>,<ul>,<p>,<br>以及非html的标签时,说明是一个段落的开始需要往字符串缓冲区中追加一个回车;
B3当遇到#TEXT的节点,文本追加进字符缓冲区中;
B4当某个节点访问结束,并且该节点有子节点则将该节点压入父节点堆栈;
B5当某个节点访问结束,并且该节点没有子节点也没有右兄弟节点,则查看父节点的堆栈,并弹出该父节点的堆栈,并弹出该父节点,再次访问该节点,并按B2处理;
B6当某个节点访问结束,并且该节点是从父节点堆栈中弹出的再次访问的节点且该节点没有右兄弟节点了,则弹出该父节点,并再次访问该节点,并按B2处理。
较佳地,步骤B2中的追加回车时,检查字符串缓冲区中最后一个字符如果是回车或字符串缓冲区中当前没有字符,就不再追加了,以免追加过多的回车,破坏文章的显示格式。
较佳地,步骤B3检查字符串缓冲区中最后一个字符如果是回车或字符串缓冲区中当前没有字符,则在文本开始加入缩进,可以使文本格式展示效果更好。
较佳地,步骤B对<strong><b>标签中的字符记录下需要加黑,可以使文本格式展示效果更好。
本发明提供的网页内容输出方法,使得对网页的正文以更接近浏览器似的格式化输出,给用户更好的阅读体验。
具体实施方式
以下所述实施例详细说明了本发明。本发明的方法使用先序遍历这棵树,利用一个堆栈结构记录当前访问的节点,并且在其所有子孙节点遍历完成后,再次访问该节点以判断是否需要加回车。如片段B的树结构aaaaaa的父节点P,第二次访问后需要在aaaaa后加回车。
片段A
对应的树结构是:
首先准备一个字符串缓存区StringBuffer
较好处理的字符串缓存区用OptStringBuffer表示
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于昆山麦克斯泰科技有限公司,未经昆山麦克斯泰科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210009117.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:轴承自动加注润滑脂装置
- 下一篇:一种基于传感器的振动监测装置
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法