【技术实现步骤摘要】
一种HTML文本表格渲染方法及存储介质
[0001]本申请涉及计算机技术的HTML表格单元格的精准渲染领域,具体涉及一种HTML文本表格渲染方法及存储介质。
技术介绍
[0002]随着信息技术的日益发展与普及,HTML技术也得了极大的传播,在PC端和移动端都有广阔的使用前景,HTML界面中TABLE的使用也是随处可见。
[0003]目前对HTML界面中TABLE的宽度的处理主要包括:
[0004]1、浏览器自动生成:
[0005]HTML语言的应用范围主要在浏览器上,在没有主动设置COLGROUP情况下,浏览器会自动解析TABLE属性,生成表格宽度,然后以其内置的逻辑去渲染表格。
[0006]2、OFFICE软件生成:
[0007]先使用OFFICE工具创建表格,然后将其另存为HTML格式,OFFICE工具会自动生成该表格的宽度。
[0008]3、基于第二点的补正生成:
[0009]利用OFFICE作为前置工具,对表格宽度初始化后,通过修正技术补充。
[0010 ...
【技术保护点】
【技术特征摘要】
1.一种HTML文本表格渲染方法,其特征在于,包括以下步骤:提取输入HTML文本的表格及表格属性;通过表格属性过滤出需要设置固定宽度的表格;循环过滤出的表格内每个单元格,判断是否给定宽度值;若没有,则通过单元格宽度计算组件生成单元格宽度值;判断同列下的单元格是否宽度一致;若不一致且不具备COLSPSAN列合并属性,则进行单元格分割计算,生成COLSPSAN属性值;使用表格COLGROUP计算及生成组件,生成该表格的各列实际宽度,并设置到HTML文本上;输出处理后的HTML文本。2.根据权利要求1所述的HTML文本表格渲染方法,其特征在于,所述HTML文本由OFFICE工具或定制化工具或者人工手动编写制作。3.根据权利要求1所述的HTML文本表格渲染方法,其特征在于,所述提取输入HTML文本的表格及表格属性具体包括以下步骤:通过第三方HTML标签解析工具JSOUP提取输入HTML文本的表格及表格属性。4.根据权利要求1所述的HTML文本表格渲染方法,其特征在于,所述通过单元格宽度计算组件生成单元格宽度值具体包括以下步骤;以HTML的方式获取单元格中的文本内容;根据换行元素对获取的文本内容进行分段;根据文本内容中各自对应的父层与祖父层的字号和字体综合计算各个段的总长度;获取最大的长度并设置为单元格宽度值。5.根据权利要求1所述的HTML文本表格渲染方法,其特征在于,所述单元格分割计算具体包括以下步骤:对表格所有列进行循环;判断当前列里的单元格的宽度是否一致;若一致,则跳过;若不一致,则对不一致的单元格进行排列,然后一一递减,获取每个单元格的梯度差;获取梯度差不为0的个数,作为需要进行补偿的合并虚拟列数;判断当前列是否为非末列;若是,则通过合并虚拟列数对当前列进行向前补偿;若否,则通过合并虚拟列数对当前列进行向后补偿。6.根据权利要求1所述的HTML文本表格渲染方法,其特征在于,所述生成COLSPSAN属性值具体包括以下步骤:创建一个二维动态数组,用于定位及存储单元格信息;读取表格每一行数据进行循环;对当前行下的单元格进行循环,并向二维动态数据添加一个空白组;判断当前单元格是否进行了列合并;若否,则将当前单元格对象存入该行数组对应位置;
若是,则判断COLSPAN合并的列数,先向二维动态数组当前行存放(列数
‑
1)个0,然后再添加当前单元格信息,所述单元格信息包括单元格宽度、行合并数据及列合并数据;循环二维动态数组每一行,进行表格行合并处理;根据二维动态数组的第一行大小,创建COLS一维数组;对二维动态数据进行循环,读取二维动态数据的每一列数据,对获取不为零的数据并加前行前一列对应的宽度值,然后减去上一列对应的COLS值,然后放入对应的COLS[...
【专利技术属性】
技术研发人员:陈波,靳谊,邹新明,黄庆炬,陈中青,
申请(专利权)人:福建榕基软件工程有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。