一种表格输出方法、装置、系统及设备的制作方法

文档序号:6470314阅读:211来源:国知局
专利名称:一种表格输出方法、装置、系统及设备的制作方法
技术领域
本发明属于表格处理领域,尤其涉及一种表格输出方法、装置、系统及设备。
背景技术
现有表格软件、报表软件等对于表格的输出通常以行为单位,行是输出过 程中不可拆分的最小单元。在打印过程中,如果当前打印页的剩余高度不足以 打印下一行时,会将该行分到下一页进行打印,这样打印出来的表格结构不紧 凑、浪费资源,还可能会给用户造成该表格已经结束的误解。并且,对于行高 大于页高的行,即在一页中不能完全打印的行, 一般会放弃做进一步处理,而 只在一页中打印该行所能显示的部分内容,这样会造成打印后该行内容部分丢 失,并可能会因此而给用户带来巨大的损失。
综上所述,现有技术提供的表格打印方法,在当前打印页的剩余高度不足 以输出下一行时,不能对该行进行分页打印。

发明内容
本发明实施例的目的在于提供一种表格输出方法,旨在解决现有技术提供 的表格打印方法不能在当前打印页的剩余高度不足以输出下一行时,对该行进 行分页打印的问题。
本发明实施例是这样实现的, 一种表格输出方法,所述方法包括下述步骤 检测输出内容的所需空间与当前输出页的剩余空间; 判断检测到的输出内容的所需空间是否大于当前输出页的剩余空间; 如果输出内容的所需空间大于当前输出页的剩余空间,则将输出内容拆分后在多页中输出。
本发明实施例的另一目的在于提供一种表格输出装置,所述装置包括包括: 检测单元,用于4企测输出内容的所需空间与当前输出页的剩余空间; 判断单元,用于判断所述检测单元检测到的输出内容的所需空间是否大于
当前输出页的剩余空间;以及
分页处理单元,如果输出内容的所需空间大于当前输出页的剩余空间,则
将输出内容拆分后在多页中输出。
本发明实施例的另 一 目的在于提供一种包含上述表格输出装置的输出系统。
本发明实施例的另 一 目的在于提供一种包含上述输出系统的设备。 在本发明实施例中,通过在检测到输出内容的所需空间大于当前输出页的 剩余空间时,将输出内容拆分后在多页中输出,实现了一种表格输出方法,能 够在当前输出页的剩余空间不足以输出该输出内容时,将该输出内容分页输出。 并且,输出的表格结构紧凑、节约资源、便于用户按页查看表格。


图l是本发明实施例提供的表格输出方法的实现流程图2 (a)是本发明实施例提供的将输出行拆分后分页输出的第一页的示意
图2 (b)是本发明实施例提供的将输出行拆分后分页输出的第二页的示意
图3是本发明实施例提供的根据当前输出页的剩余高度将非空单元格中的 相应字符截取输出的具体算法流程图4是本发明实施例提供的根据单元格中的字符计算单元格的实际占用高 度的算法的流程图5是本发明实施例提供的表格输出装置的结构图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,如果^r测到输出内容的所需空间大于当前输出页的剩 余空间,则将输出内容拆分后在多页中输出。
图1示出了本发明实施例提供的表格输出方法的实现流程,详述如下
在步骤S101中,^r测输出内容的所需空间与当前输出页的剩余空间;
在步骤S102中,判断检测到的输出内容的所需空间是否大于当前输出页的 剩余空间,是则执行步骤S103,否则执行步骤S104;
在步骤S103中,如果输出内容的所需空间大于当前输出页的剩余空间,则 将输出内容拆分后在多页中输出;
在步骤S104中,如果检测到输出内容的所需空间不大于当前输出页的剩余 空间,则在当前输出页输出该输出内容。
在本发明实施例中,以表格按行输出为例进行说明,输出内容为表格的一 行,称为输出行,输出内容的所需空间即为输出行的行高,当前输出页的剩余 空间即为当前输出页的剩余高度。
如果判断结果为输出行的行高大于当前输出页的剩余高度,说明当前输出 页不够输出输出行的全部内容,则根据当前输出页的剩余高度将该输出行进行 拆分,在当前输出页中输出该行能在当前输出页中输出的部分内容,如图2(a) 所示,并在其他输出页中输出该行的剩余内容,如图2(b)所示。完成后,继 续对下一输出行进行输出处理,执行步骤S101;如果没有下一输出行,则结束。 当然,在具体对输出行的拆分实现中,还可能需要进一步考虑输出行中各单元 格内字符的行高、单元格中字符的显示方式(例如居中显示、靠左显示等)等。
如果判断结果为输出行的行高小于或等于当前输出页的剩余高度,说明还可以在当前输出页输出输出行的全部内容,则在当前输出页输出该行的内容。
完成后,继续对下一输出行进行输出处理,执行步骤S101;如果没有下一输出 行,则结束。
在本发明实施例中,将输出内容拆分后在多页中输出的步骤具体为 步骤l.判断输出行的各单元格是否为空;
在本步骤中,如果输出行的所有单元格都为空,则该行各单元格中的字符 都已经全部输出,结束;否则,执行步骤2。
步骤2.根据当前输出页的剩余高度将非空单元格中的相应字符截取输出。 在本发明实施例中,表格各单元格中字符横向排布,对于非空的单元格, 根据当前输出页的剩余高度,依次截取并输出该单元格中能在当前页剩余部分 输出的相应字符,截取输出后留下的字符作为以后处理过程中该输出行相应单 元格的所有字符。在对该输出行中所有的非空单元格完成截取输出后,执行步 骤1。
当然,如果单元才各中的字符有相应的显示方式,如居中显示等,则可以参 照其显示方式,进行相应调整后截取输出。
图3示出了本发明实施例提供的根据当前输出页的剩余高度将非空单元格 中的相应字符截取输出的具体算法流程,详述如下
步骤301.设置当前字符位置的X轴坐标x-0, Y轴坐标y-O,选取字符 数n-O,最大允许输出高度maxH-当前输出页的剩余高度;
步骤302.判断单元格中的字符串是否未结束,如果未结束则进入步骤303; 否则进入步骤308;
步骤303.依次取第n = n+ 1个字符,修改当前字符位置的X轴坐标x = x +字符宽度;
步骤304.判断是否检测到换行符或者当前字符位置的X轴坐标x 〉单元格 宽度,如果是则进入步骤305;否则ii^步骤306;
步骤305.修改当前字符位置的X轴坐标x = 0, Y轴坐标y = y +字符串行高,进入步骤306;
步骤306.判断当前字符位置的Y轴坐标y > maxH,如果是则进入步骤307, 否则进入步骤302;
步骤307.修改单元格的占用高度=maxH,依次截取并输出字符串的前N = n-l个字符,修改单元格的状态为未完整输出,算法结束;
步骤308.修改单元格的占用高度-y,修改单元格的状态为完整输出,算法 结束。
另外,还可以进一步考虑行间距、字间距,标点位置等细节,对上述算法 进行相应调整。
为了使一些不能直接检测出输出行行高的表格(例如,报表系统对不能预 先确定的数据内容进行动态输出,本发明中称之为"动态表格")在需要时也 能分页输出,扩展表格输出方法的适用范围,作为本发明的一个优选实施例, 表格输出方法还包括
根据输出行各单元格中的字符计算输出行的行高。
在本发明实施例中,分别根据输出行各单元格中的字符计算出各单元格的 实际占用高度,取各单元格的实际占用高度中的最大值作为输出行的行高,在 步骤S102中,才艮据该计算得到的行高进行判断。
图4示出了本发明实施例提供的根据单元格中的字符串计算单元格的实际 占用高度的算法的流程,详述如下
步骤S401.设置当前字符位置的X轴坐标x-0, Y轴坐标y-O,选取字符 数n = 0;
步骤S402.判断单元格中的字符串是否未结束,如果未结束则进入步骤 S403;否则进入步骤S406;
步骤S403.依次取第n = n + 1个字符,修改当前字符位置的X轴坐标x = x +字符宽度;
步骤S404.判断是否检测到换行符或者当前字符位置的X轴坐标x >单元格宽度,如果是则进入步骤S405;否则进入步骤S402;
步骤S405.修改当前字符位置的X轴坐标x = 0, Y轴坐标y = y +字符串行 高,进入步骤S402;
步骤S406.单元格的实际占用高度-y,算法结束。
另外,还可以进一步考虑行间距、字间距,标点位置等细节,对上述算法 进行适当修改。
当然,针对古文、外文等竖排文字,表格也可以按列输出,输出内容为表 格的一列,称为输出列,输出内容的所需空间即为输出列的列宽,当前输出页 的剩余空间即为当前输出页的剩余宽度。可以对上述实施例提供的表格输出方 法进行相应修改,使得在输出列的列宽小于当前输出页的剩余宽度时,将输出 列拆分后在多页中输出,以实现在当前输出页的剩余宽度不足以输出下一列时, 将该列分页输出。
图5示出了本发明实施例提供的表格输出装置的结构,为了便于说明仅示 出了与本发明实施例相关的部分。
该装置可以用于各种表格处理系统,这些表格处理系统可以运用于输出设 备,例如计算才几、打印机等。
该装置可以是运行于这些表格处理系统中的软件单元、硬件单元或者软硬 件相结合的单元,也可以作为独立的挂件集成到这些输出设备中或者运行于这 些输出设备的应用系统中。其中
检测单元501,检测输出内容的所需空间与当前输出页的剩余空间。在本 发明实施例中,以表格按行输出为例进行说明,输出内容为表格的一行,称为 输出行,输出内容的所需空间即为输出行的行高,当前输出页的剩余空间即为 当前输出页的剩余高度。
判断单元502,判断检测单元501检测到的输出内容的所需空间是否大于 当前输出页的剩余空间。在本发明实施例中,如果检测单元501检测到的输出 内容的所需空间大于当前输出页的剩余空间,则判断单元502触发分页处理单元503进4于相应处理;否则,不^W壬何处理。
分页处理单元503 ,如果输出内容的所需空间大于当前输出页的剩余空间, 则将输出内容拆分后在多页中输出。
其中,分页处理单元503包括
输出内容判断模块5031 ,判断输出行的各单元格是否为空。
单元格拆分模块5032,根据当前输出页的剩余高度将非空单元格中的相应 字符截取输出,其实现方式如上所述,不再赘述。
为了扩展本发明实施例提供的表格输出装置的适用范围,使不能直接检测 出输出行行高的表格(例如动态表格)在需要时也能分页输出,作为本发明的 一个优选实施例,表格输出装置还包括
空间计算单元504,根据输出行各单元格中的字符计算输出行的行高,实 现方式如上所述,不再赘述。
在本发明实施例中,空间计算单元504将计算得到的输出行的行高输出给 判断单元502进行判断。
当然,针对古文、外文等竖排文字,表格也可以按列输出,输出内容为表 格的一列,称为输出列,输出内容的所需空间即为输出列的列宽,当前输出页 的剩余空间即为当前输出页的剩余宽度。可以对上述实施例提供的表格输出装 置进行相应修改,使得在输出列的列宽小于当前输出页的剩余宽度时,将输出 列拆分后在多页中输出,以实现在当前输出页的剩余宽度不足以输出下一列时, 将该列分页输出。
在本发明实施例中,通过在检测到输出内容的所需空间大于当前输出页的 剩余空间时,将输出内容拆分后在多页中输出,实现了一种表格输出方法,能 够在当前输出页的剩余空间不足以输出该输出内容时,将该输出内容分页输出。 并且,输出的表格结构紧凑、节约资源、便于用户按页查看表格。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤 是可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、 一磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。
权利要求
1、一种表格输出方法,其特征在于,所述方法包括下述步骤检测输出内容的所需空间与当前输出页的剩余空间;判断检测到的输出内容的所需空间是否大于当前输出页的剩余空间;如果输出内容的所需空间大于当前输出页的剩余空间,则将输出内容拆分后在多页中输出。
2、 如权利要求l所述的方法,其特征在于,表格按行输出时,所述输出内 容为输出行,所述输出内容的所需空间为输出行的行高,所述当前输出页的剩 余空间为当前输出页的剩余高度。
3、 如权利要求2所述的方法,其特征在于,所述将输出内容拆分后在多页 中输出的步骤具体为判断输出行的各单元格是否为空;根据当前输出页的剩余高度将非空单元格中的相应字符截取输出。
4、 如权利要求2所述的方法,其特征在于,所述方法还包括 根据输出行各单元格中的字符计算输出行的行高。
5、 如权利要求l所述的方法,其特征在于,表格按列输出时,所述输出内 容为输出列,所述输出内容的所需空间为输出列的列宽,所述当前输出页的剩 余空间为当前输出页的剩余宽度。
6、 一种表格输出装置,其特征在于,所述装置包括检测单元,用于检测输出内容的所需空间与当前输出页的剩余空间; 判断单元,用于判断所述检测单元检测到的输出内容的所需空间是否大于当前输出页的剩余空间;以及分页处理单元,如果输出内容的所需空间大于当前输出页的剩余空间,则将输出内容拆分后在多页中输出。
7、 如权利要求6所述的装置,其特征在于,表格按行输出时,所述输出内 容为输出行,所述输出内容的所需空间为输出行的行高,所述当前输出页的剩余空间为当前输出页的剩余高度。
8、 如权利要求7所述的装置,其特征在于,所述分页处理单元包括 输出内容判断模块,用于判断输出行的各单元格是否为空;以及 单元格拆分模块,根据当前输出页的剩余高度将非空单元格中的相应字符截取输出。
9、 如权利要求7所述的装置,其特征在于,所述装置还包括空间计算单元,用于根据输出行各单元格中的字符计算输出行的行高。
10、 如权利要求6所述的装置,其特征在于,表格按列输出时,所述输出 内容为输出列,所述输出内容的所需空间为输出列的列宽,所述当前输出页的 剩余空间为当前输出页的剩余宽度。
11、 一种包含权利要求6至IO任一权利要求所述表格输出装置的输出系统。
12、 一种包含权利要求11所述输出系统的设备。
全文摘要
本发明适用于表格处理领域,提供了一种表格输出方法、装置、系统及设备,所述方法包括下述步骤检测输出内容的所需空间与当前输出页的剩余空间;判断检测到的输出内容的所需空间是否大于当前输出页的剩余空间;如果输出内容的所需空间大于当前输出页的剩余空间,则将输出内容拆分后在多页中输出。在本发明中,通过在检测到输出内容的所需空间大于当前输出页的剩余空间时,将输出内容拆分后在多页中输出,实现了一种表格输出方法,能够在当前输出页的剩余空间不足以输出该输出内容时,将该输出内容分页输出。并且,输出的表格结构紧凑、节约资源、便于用户按页查看表格。
文档编号G06F17/25GK101425055SQ20081021699
公开日2009年5月6日 申请日期2008年10月29日 优先权日2008年10月29日
发明者李馥龙 申请人:金蝶软件(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1