[发明专利]一种在窄屏幕设备上显示宽网页的智能布局方法有效
| 申请号: | 200910076792.X | 申请日: | 2009-01-21 |
| 公开(公告)号: | CN101477564A | 公开(公告)日: | 2009-07-08 |
| 发明(设计)人: | 黄杰 | 申请(专利权)人: | 北京千家悦网络科技有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京北新智诚知识产权代理有限公司 | 代理人: | 张爱群 |
| 地址: | 100085北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 屏幕 设备 显示 网页 智能 布局 方法 | ||
1.一种在窄屏幕设备上显示宽网页的智能布局方法,其特征在于:具体包括如下步骤:
(1)显示设备将所接收的网页数据解析为节点结构;
(2)显示设备根据所解析的网页数据节点结构,自根节点起依次对各个节点进行处理;
(3)显示设备判断所处理的节点类型;如果该节点为文本节点,则采用视口宽度显示算法处理;如果该节点为非文本节点,则采用网页布局宽度显示算法处理;
(4)当所述网页数据的各个节点均被处理完成后,该布局方法结束;
所述视口宽度显示算法具体包括如下步骤:
(11)所述显示设备获取所述文本节点样式限制宽度及视口宽度;所述样式限制宽度是指节点所在的块类容器上设置的宽度;所述视口宽度是指屏幕或者浏览器窗口的宽度;
(12)显示设备获取文本节点的尚未被布局的文本内容;
(13)显示设备根据步骤(11)所得到的样式限制宽度和视口宽度,计算得出当前行的样式剩余宽度和视口剩余宽度,并以其中的较小值,作为该文本内容在当前行的布局实际允许宽度;
(14)显示设备根据所述布局实际允许宽度,计算当前行所能够容纳的文字数目,并判断是否能够容纳步骤(12)中所获得的尚未被布局的文本内容;如果能够全部容纳,则布局所有文本内容在当前行,并结束对本节点的布局处理;如果不能够全部容纳,则执行步骤(15);
(15)显示设备在能够被容纳于当前行的文字中,从后向前查找分行点;所述分行点是指文字之间允许进行折行处理的位置;如果查找到分行点,则将查到的第一个分行点以前的内容布局在当前行,并移动布局起点到下一行,然后返回步骤(12);如果未查到分行点,则执行步骤(16);
(16)显示设备判断当前行文本的布局起点是否在该文本节点允许布局的最左边位置;如果不在,则移动布局起点到下一行,并返回步骤(13);如果在,则从所述能够被容纳于当前行的文字之后,从前向后查找分行点;如果查找到分行点,则将查到的第一个分行点以前的内容布局到当前行,并移动布局起点到下一行,然后返回步骤(12);如果未查找到分行点,则将该文本节点的全部内容都布局在当前行,并结束对本节点的布局处理;
所述网页布局宽度显示算法具体包括如下步骤:
(31)所述显示设备获得所述非文本节点的宽度及样式限制宽度;
(32)显示设备根据所述样式限制宽度,计算当前行的样式剩余宽度;
(33)比较所述非文本节点的宽度和当前行样式剩余宽度;如果当前行的样式剩余宽度大于或者等于节点宽度,则布局该节点在当前行,并结束对本节点的布局处理;否则,执行步骤(34);
(34)显示设备判断当前行非文本节点的布局起点是否在该非文本节点允许布局的最左边位置;如果不在,则移动布局起点到下一行,并返回步骤(32);否则,将该节点布局在当前行,并结束对本节点的布局处理。
2.一种在窄屏幕设备上显示宽网页的智能布局方法,其特征在于:具体包括如下步骤:
(1)显示设备将所接收的网页数据解析为节点结构;
(2)显示设备根据所解析的网页数据节点结构,自根节点起依次对各个节点进行处理;
(3)显示设备判断所处理的节点类型;如果该节点为文本节点,则采用视口宽度显示算法处理;如果该节点为非文本节点,则采用网页布局宽度显示算法处理;
(4)当所述网页数据的各个节点均被处理完成后,该布局方法结束;
所述视口宽度显示算法具体包括如下步骤:
(21)所述显示设备获取所述文本节点样式限制宽度及视口宽度;所述样式限制宽度是指节点所在的块类容器上设置的宽度;所述视口宽度是指屏幕或者浏览器窗口的宽度;
(22)显示设备获取文本节点尚未布局的文本内容;如果没有未布局的文本内容,则结束对本节点的布局处理;
(23)显示设备从步骤(22)所获得的尚未布局的文本内容起点处开始查找分行点;所述分行点是指文字之间允许进行折行处理的位置;如果未找到分行点则以该文本内容结束位置为分行点;计算在第一个分行点以前文本内容的宽度;
(24)显示设备根据步骤(21)所得到的样式限制宽度和视口宽度,计算得出当前行的样式剩余宽度和视口剩余宽度,并以其中的较小值,作为该文本内容在当前行的布局实际允许宽度;
(25)如果步骤(23)所计算得到的分行点以前文本内容的宽度小于或者等于所述布局实际允许宽度,则该分行点以前文本内容布局在当前行,并返回步骤(22);否则,执行步骤(26);
(26)显示设备判断当前行文本的布局起点是否在该文本节点允许布局的最左边位置;如果不在,则移动布局起点到下一行,并返回步骤
(24);如果当前行文本的布局起点已经在允许布局的最左边位置,则将分行点以前的文本内容布局在当前行,并移动布局起点到下一行,然后返回步骤(22);
所述网页布局宽度显示算法具体包括如下步骤:
(31)所述显示设备获得所述非文本节点的宽度及样式限制宽度;
(32)显示设备根据所述样式限制宽度,计算当前行的样式剩余宽度;
(33)比较所述非文本节点的宽度和当前行样式剩余宽度;如果当前行的样式剩余宽度大于或者等于节点宽度,则布局该节点在当前行,并结束对本节点的布局处理;否则,执行步骤(34);
(34)显示设备判断当前行非文本节点的布局起点是否在该非文本节点允许布局的最左边位置;如果不在,则移动布局起点到下一行,并返回步骤(32);否则,将该节点布局在当前行,并结束对本节点的布局处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京千家悦网络科技有限公司,未经北京千家悦网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910076792.X/1.html,转载请声明来源钻瓜专利网。





