CN114296662B - 基于网页的表格文书分页打印方法、装置及其应用 - Google Patents
基于网页的表格文书分页打印方法、装置及其应用 Download PDFInfo
- Publication number
- CN114296662B CN114296662B CN202111632173.1A CN202111632173A CN114296662B CN 114296662 B CN114296662 B CN 114296662B CN 202111632173 A CN202111632173 A CN 202111632173A CN 114296662 B CN114296662 B CN 114296662B
- Authority
- CN
- China
- Prior art keywords
- preview area
- pixel height
- module
- current preview
- height
- 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
Links
Landscapes
- Document Processing Apparatus (AREA)
- Record Information Processing For Printing (AREA)
Abstract
本申请提出了一种基于网页的表格文书分页打印方法,包括:依次打印每一预览区域时,获取当前预览区域、当前预览区域的第一像素高度以及当前预览区域中的所有模块;获取当前预览区域中每一模块的像素高度以及每一模块的顶部距离当前预览区域顶部的第二像素高度,确定当前预览区域中的目标模块以及目标模块的第三像素高度;获取目标模块内文字的文字行高,根据第三像素高度和文字行高计算第四像素高度,并将目标模块中的文字下移第四像素高度;打印当前预览区域,并将当前预览区域的后一预览区域作为新的当前预览区域继续进行打印。该方法将表格文书模块化,由浏览器内部实现终端解耦,且避免打印时表格内容被截断的问题。
Description
技术领域
本申请涉及前端技术领域,特别是涉及一种基于网页的表格文书分页打印方法、装置及计算机程序产品。
背景技术
数字化政务办公是现如今全国推行的政府数字化转型的重要实现方式,在浏览器内直接操作政务文书已经是的当下加快办事服务效率的重点项目。以数字化城市管理为例,现如今城市管理案件的立案到结案归档整个环节,已经全部在后台管理系统中在线操作完成,其中在线政务文书的预览及打印功能显得尤为重要。
目前网页打印功能较为普遍,其实现方式是在网页上利用浏览器自带的打印功能来进行网页内容打印。一种常见的打印方式是依赖浏览器中指定的插件进行打印,对浏览器的兼容性有较大的限制,且增加了使用者操作的繁琐程度,不便于使用和快速推广。另一种是使用浏览器原生的打印功能,例如使用window.print()打印整个网页内容,本身是不具有分页功能的,只会根据纸张或者预览区域的大小来将网页内容从上至下进行分页,也就是采用粗暴截断的方式直接将当前纸张或者当前预览区域无法容纳的内容截断至下一纸张或者下一预览区域,导致经常出现表格中的文字被截断,以至于网页内容打印展示不规范或者被截断的内容缺失的问题。
发明内容
本申请提供了一种基于网页的表格文书分页打印方法、装置及电子装置、计算机程序产品、可读存储介质。该方法通过将表格文书模块化,打印过程由浏览器内部实现打印机、多功能事务机等硬件终端解耦,无须考虑各种打印机型号、环境等外界因素,且避免打印时表格内容被截断的问题。
第一方面,本申请实施例提供了一种基于网页的表格文书分页打印方法,包括以下步骤:
获取网页上的待打印表格文书,根据所述待打印表格文书创建至少一预览区域,将所述待打印表格文书依次拆分成多个表格模块并渲染于每一所述预览区域;
依次打印每一所述预览区域时,获取当前预览区域以及当前预览区域的第一像素高度,其中所述当前预览区域为当前待打印的所述预览区域;
获取所述当前预览区域中每一所述表格模块的像素高度以及每一所述表格模块的顶部距离所述当前预览区域顶部的第二像素高度;
根据每一所述表格模块的所述像素高度、所述第二像素高度以及所述当前预览区域的所述第一像素高度,确定所述当前预览区域中的目标模块以及所述目标模块的第三像素高度;
获取所述目标模块内文字的文字行高,根据所述第三像素高度和所述文字行高计算第四像素高度,并将所述目标模块中的文字下移所述第四像素高度;
打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域继续进行打印。
第二方面,本申请实施例提供了一种基于网页的表格文书分页打印装置,用于实现第一方面中所述的基于网页的表格文书分页打印方法,该装置包括以下模块:
渲染模块,用于获取网页上的待打印表格文书,根据所述待打印表格文书创建至少一预览区域,将所述待打印表格文书依次拆分成多个表格模块并渲染于每一所述预览区域;
获取模块,用于依次打印每一所述预览区域时,获取当前预览区域、当前预览区域的第一像素高度以及所述当前预览区域中的所有模块,其中所述当前预览区域为当前待打印的所述预览区域;
定位模块,用于获取所述当前预览区域中每一模块的像素高度以及每一模块的顶部距离所述当前预览区域顶部的第二像素高度,根据每一所述模块的所述像素高度、所述第二像素高度以及所述当前预览区域的所述第一像素高度,确定所述当前预览区域中的目标模块以及所述目标模块的第三像素高度;
调整模块,用于获取所述目标模块内文字的文字行高,根据所述第三像素高度和所述文字行高计算第四像素高度,并将所述目标模块中的文字下移所述第四像素高度;
打印模块,用于打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域继续进行打印。
第三方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以如上任意申请实施例所述的基于网页的表格文书分页打印方法。
第四方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括软件代码部分,当所述计算机程序产品在计算机上被运行时,所述软件代码部分用于执行如上任一申请实施例所述的基于网页的表格文书分页打印方法。
第五方面,本申请实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序包括用于控制过程以执行过程的程序代码,所述过程包括根据如上任意申请实施例所述的基于网页的表格文书分页打印方法。
本申请实施例的主要贡献和创新点如下:
1.使用浏览器原生的打印功能,将打印过程与打印机、多功能事务机等硬件终端解耦,无须考虑各种打印机型号、环境等外界因素。
2.按照单元格的行数拆分成独立的表格模块,使用模块化的表格文书。一是可以根据业务需要选择显示或隐藏对应的表格模块;二是在打印分页时可以动态计算并调整表格模块的位置,改善浏览器原生的打印功能中由于没有分页调整功能而导致文书中的文字被截断的问题。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的基于网页的表格文书分页打印方法的流程图;
图2是根据本申请实施例的网页的示意图;
图3是根据本申请实施例的分页过程中属性的示意图;
图4是根据本申请实施例的目标模块分页前的示意图;
图5是根据本申请实施例的表格文书分页打印的示意图;
图6是根据本申请实施例的基于网页的表格文书分页打印装置的结构框图;
图7是根据本申请实施例的电子装置的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
实施例一
本实施例提供了一种基于网页的表格文书分页打印方法,该方法由浏览器内部实现,与打印机、多功能事务等硬件终端解耦,无需考虑各种打印机型号、环境等外界因素。在本实施例中,该方法通过将整体的文书拆分成细粒度的模块进行拼装,在进行分页时根据打印内容进行自由组合控制,实现灵活打印文书且避免分页时的文字被截断的问题。
参考图1,所述方法包括以下步骤S1-S5:
步骤S1:获取网页上的待打印表格文书,根据所述待打印表格文书创建至少一预览区域,将所述待打印表格文书依次拆分成多个表格模块并渲染于每一所述预览区域;
步骤S2:依次打印每一所述预览区域时,获取当前预览区域、当前预览区域的第一像素高度以及所述当前预览区域中的所有模块,其中所述当前预览区域为当前待打印的所述预览区域;
步骤S3:获取所述当前预览区域中每一模块的像素高度以及每一模块的顶部距离所述当前预览区域顶部的第二像素高度,根据每一所述模块的所述像素高度、所述第二像素高度以及所述当前预览区域的所述第一像素高度,确定所述当前预览区域中的目标模块以及所述目标模块的第三像素高度;
步骤S4:获取所述目标模块内文字的文字行高,根据所述第三像素高度和所述文字行高计算第四像素高度,并将所述目标模块中的文字下移所述第四像素高度;
步骤S5:打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域继续进行打印。
所述网页如图2所示,包括了待打印表格文书,该待打印表格文书是由多行单元格组成表格,具体包含待打印表格文书的具体内容,如标题、表格、详情等。
在步骤S1中,获取网页上的待打印表格文书,并对应创建至少一预览区域,将该待打印表格文书依次拆分成多个表格模块,然后渲染于预览区域。
其中,每一个预览区域对应一个打印区域,将待打印表格文书从上之下渲染于预览区域,用户可以直观预览到待打印表格文书打印在纸张上的具体效果图,然后根据待打印表格文书的内容长度生成相应个数的预览区域,也就是将待打印表格文书的内容无法在一个预览区域完成,需要创建多个预览区域,从第一个预览区域并从上之下开始渲染待打印表格文书,直到将所有待打印表格文书渲染到预览区域上。
具体的,待打印表格文书是由多行单元格组成的表格,将该待打印表格文书的每行单元格依次拆分成存入独立的表格模块,并按照表格模块在待打印表格文书的原次序从上之下渲染于预览区域。
在一些实施例中,待打印表格文书为一个完整的table表格,将该table表格的每一行单元格都单独创建一个新的table表格进行存放,每一个新建的table表格都是一个表格模块。
这样做的好处是,将待打印表格文书的内容模块化后,可以按照业务需求灵活地显示与隐藏。比如,某一业务与常规业务需要的待打印表格文书样式不同,也就是不需要其中某一行或者某几行的表格模块中的内容,在将待打印表格文书渲染于预览区域时,可以直接隐藏对应的表格模块就实现该业务需要的打印效果,在剩下的表格模块中单独处理业务逻辑,与其他不需要显示的表格模块进行业务解耦,可以极大提高运行效率,并且无需对整张待打印表格文书样式进行改写,还可以节省重复模块的开发时间。
基于模块化文书的特性,本实施例可以改善原生浏览器分页打印存在的问题。也就是,当文书中某一行单元的内容过长时,如何合理地进行分页。
在步骤S2中,也就是依次打印每一预览区域时,先获取当前预览区域以及当前预览区域的第一像素高度,其中当前预览区域是当前打印的预览区域,再获取当前预览区域中所有模块。
具体的,预览区域对应实际打印区域,以A4纸为例,其尺寸为210mm*297mm,在本实施例中可以设置它的实际打印区域的像素大小为794px*1123px,即将该实际打印区域映射到预览区域,当前预览区域的第一像素高度就为1123px。需要说明的,预览区域是将待打印表格文书的内容打印到纸张的实际打印区域的等比例缩放预览效果,并且实际打印区域不一定等于纸张的整体大小,选定纸张用于印刷内容的部分区域才是实际打印区域,通常会在实际打印区域与纸张的边缘之间留有间隙,且实际打印区域的大小是可以通过人为设置和修改的。
在步骤S3中,首先,获取当前预览区域中每一模块的像素高度以及每一模块的顶部距离当前预览区域顶部的第二像素高度,然后根据每一模块的像素高度、当前预览区域的第一像素高度以及第二像素高度确定该当前预览区域中的目标模块以及该目标模块的第三像素高度。
首先,将部分内容超出当前预览区域域的模块目标模块。
从上至下,获取当前预览区域中每一模块的像素高度以及每一模块的顶部距离当前预览区域顶部第二像素高度,如果某一模块的像素高度大于第一像素高度减去该表格模块的第二像素高度,表示当前预览区域不足以完整打印出该模块,将该模块作为目标模块。
具体的,对每一模块使用document.offsetTop,获取该模块的顶部与当前预览区域的顶部的距离得到第二像素高度offsetTop,如果某一模块的像素高度大于第一像素高度减去该模块的第二像素高度,则将模块作为目标模块。
然后,计算目标模块的第三像素高度,也就是定位到目标模块中的分页行。该分页行就是使用原生的浏览器打印时,因目标模块的内容超出当前预览区域被自动截断的地方。具体的,计算第一像素高度减去目标模块的第二像素高度得到如图3所示的第三像素高度cutHeight=1123px-offsetTop,与目标模块的顶部相距第三像素高度cutHeight的地方为分页行。
在步骤S4中,获取目标模块内文字的文字行高,并根据第三像素高度和文字行高计算第四像素高度,将目标模块中的整体内容下移该第四像素高度。
如图4所示,由于该分页行部分超出当前预览区域,为了保证打印的完整性,也就是在当前预览区域中不应该打印该分页行以及分页行后的内容,需要将分页行以及分页行后的内容放入当前预览区域的后一预览区域进行打印。在本实施例中,可以通过动态调整目标模块中的内容的位置使分页行以及分页行后的内容进入下一预览区域。
具体的,获取文书的文字行高lineHeight,计算第三像素高度除以文字行高的余数得到第四像素高度fontCutHeight=cutHeight%lineHeight。第四像素高度表示分页行本应在当前预览区域打印出的高度,要将分页行挪动到下一预览区域进行打印,就需要将分页行往下挪动第四像素高度。具体的,可以使目标模块中的整体内容向下挪动第四像素高度,例如给目标模块内的顶部设置padding-top属性的值为第四像素高度,也就是使目标模块中整体的内容往下挪动第四像素高度,得到如图5所示的效果。
这样做的原理是,通常文书的文字采用统一的文字行高,例如前端中会是用line-height来设置文字行高,每一单元格由文字高度撑开,所以一个单元格的高度就是由文字行高乘以文字的行数得到的,所以需要保证每个单元格的高度是文字行高的整数倍即可。
在打印这样处理后的当前预览区域时,分页行就位于相对于当前预览区域的后一预览区域,这样就可以完美解决网页文字在打印分页时被截断的问题。
值得一提的是,在打印当前预览区域中的内容时,若有某一表格模块无法再当前预览区域中完全打印,将该表格模块作为目标模块,目标模块会被分为第一子模块和第二子模块,第一子模块位于当前预览区域,第二子模块位于相对于当前预览区域的后一预览区域,同理的,第二子模块在后一预览区域中任然无法被完全打印,则继续将第二子模块作为目标模块,因此,本实施例中提到的模块包括表格模块和第二子模块。
另外,对于从同一目标模块分出的第一子模块和第二子模块,当第一子模块位于当前预览区域中时,第一子模块的下边框通常是缺失的,第二子模块位于下一预览区域中时,第二子模块的上边框通常也是缺失的。此时可以新增与待打印表格文书的宽度相等的div标签,设置高度为0,并设置边框属性匹配文书的边框样式,使用CSS将该div标签定位到第一子模块的底部和第二子模块的顶部,也就是边框缺失的位置,以补全因表格模块分页造成的边框缺失的问题。
在步骤S5中,打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域,继续执行步骤S2,直到打印完所有的预览区域。具体的,可以通过点击按钮执行window.print()方法,或者使用Ctrl+P调用浏览器的打印方法,并执行以上步骤就可以实现在线表格文书的分页打印。
实施例二
基于相同的构思,本实施例还提供了一种基于网页的表格文书分页打印装置,用于实现实施例一中所描述的基于网页的表格文书分页打印方法,具体参考图6,该装置包括以下模块:
渲染模块,用于获取网页上的待打印表格文书,根据所述待打印表格文书创建至少一预览区域,将所述待打印表格文书依次拆分成多个表格模块并渲染于每一所述预览区域;
获取模块,用于依次打印每一所述预览区域时,获取当前预览区域、当前预览区域的第一像素高度以及所述当前预览区域中的所有模块,其中所述当前预览区域为当前待打印的所述预览区域;
定位模块,用于获取所述当前预览区域中每一模块的像素高度以及每一模块的顶部距离所述当前预览区域顶部的第二像素高度,根据每一所述模块的所述像素高度、所述第二像素高度以及所述当前预览区域的所述第一像素高度,确定所述当前预览区域中的目标模块以及所述目标模块的第三像素高度;
调整模块,用于获取所述目标模块内文字的文字行高,根据所述第三像素高度和所述文字行高计算第四像素高度,并将所述目标模块中的文字下移所述第四像素高度;
打印模块,用于打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域继续进行打印。
实施例三
本实施例还提供了一种电子装置,参考图7,包括存储器404和处理器402,该存储器404中存储有计算机程序,该处理器402被设置为运行计算机程序以执行上述实施例中的任意一种基于网页的表格文书分页打印方法的步骤。
具体地,上述处理器402可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
其中,存储器404可以包括用于数据或指令的大容量存储器404。举例来说而非限制,存储器404可包括硬盘驱动器(Hard Disk Drive,简称为HDD)、软盘驱动器、固态驱动器(Solid State Drive,简称为SSD)、闪存、光盘、磁光盘、磁带或通用串行总线(UniversalSerial Bus,简称为USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器404可在数据处理装置的内部或外部。在特定实施例中,存储器404是非易失性(Non-Volatile)存储器。在特定实施例中,存储器404包括只读存储器(Read-Only Memory,简称为ROM)和随机存取存储器(Random Access Memory,简称为RAM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(Programmable Read-Only Memory,简称为PROM)、可擦除PROM(Erasable Programmable Read-Only Memory,简称为EPROM)、电可擦除PROM(Electrically Erasable Programmable Read-Only Memory,简称为EEPROM)、电可改写ROM(Electrically Alterable Read-Only Memory,简称为EAROM)或闪存(FLASH)或者两个或更多个以上这些的组合。在合适的情况下,该RAM可以是静态随机存取存储器(StaticRandom-Access Memory,简称为SRAM)或动态随机存取存储器(Dynamic Random AccessMemory,简称为DRAM),其中,DRAM可以是快速页模式动态随机存取存储器404(Fast PageMode Dynamic Random Access Memory,简称为FPMDRAM)、扩展数据输出动态随机存取存储器(Extended Date Out Dynamic Random Access Memory,简称为EDODRAM)、同步动态随机存取内存(Synchronous Dynamic Random-Access Memory,简称SDRAM)等。
存储器404可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器402所执行的可能的计算机程序指令。
处理器402通过读取并执行存储器404中存储的计算机程序指令,以实现上述实施例中的任意一种基于网页的表格文书分页打印方法。
可选地,上述电子装置还可以包括传输设备406以及输入输出设备408,其中,该传输设备406和上述处理器402连接,该输入输出设备408和上述处理器402连接。
传输设备406可以用来经由一个网络接收或者发送数据。上述的网络具体实例可包括电子装置的通信供应商提供的有线或无线网络。在一个实例中,传输设备包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备406可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
输入输出设备408用于输入或输出信息。在本实施例中,输入的信息可以是当前数据表例如疫情流调文档、特征数据、模板表等,输出的信息可以是特征指纹、指纹模板、文本分类推荐信息、文件模板配置映射表、文件模板配置信息表等。
可选地,在本实施例中,上述处理器402可以被设置为通过计算机程序执行以下步骤:
获取网页上的待打印表格文书,根据所述待打印表格文书创建至少一预览区域,将所述待打印表格文书依次拆分成多个表格模块并渲染于每一所述预览区域;
依次打印每一所述预览区域时,获取当前预览区域、当前预览区域的第一像素高度以及所述当前预览区域中的所有模块,其中所述当前预览区域为当前待打印的所述预览区域;
获取所述当前预览区域中每一模块的像素高度以及每一模块的顶部距离所述当前预览区域顶部的第二像素高度,根据每一所述模块的所述像素高度、所述第二像素高度以及所述当前预览区域的所述第一像素高度,确定所述当前预览区域中的目标模块以及所述目标模块的第三像素高度;
获取所述目标模块内文字的文字行高,根据所述第三像素高度和所述文字行高计算第四像素高度,并将所述目标模块中的文字下移所述第四像素高度;
打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域继续进行打印。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
另外,结合上述实施例一中的任意一种基于网页的表格文书分页打印方法,本申请实施例可一种计算机程序产品来实现。该计算机程序产品该计算机程序产品包括软件代码部分,当所述计算机程序产品在计算机上被运行时,所述软件代码部分用于执行实现上述实施例一中的任意一种基于网页的表格文书分页打印方法。
并且,结合上述实施例一中的任意一种基于网页的表格文书分页打印方法,本申请实施例可提供一种可读存储介质来实现。该可读存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种基于网页的表格文书分页打印方法。
通常,各种实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。本发明的一些方面可以以硬件来实现,而其他方面可以以可以由控制器、微处理器或其他计算设备执行的固件或软件来实现,但是本发明不限于此。尽管本发明的各个方面可以被示出和描述为框图、流程图或使用一些其他图形表示,但是应当理解,作为非限制性示例,本文中描述的这些框、装置、系统、技术或方法可以以硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备或其某种组合来实现。
本发明的实施例可以由计算机软件来实现,该计算机软件由移动设备的数据处理器诸如在处理器实体中可执行,或者由硬件来实现,或者由软件和硬件的组合来实现。包括软件例程、小程序和/或宏的计算机软件或程序(也称为程序产品)可以存储在任何装置可读数据存储介质中,并且它们包括用于执行特定任务的程序指令。计算机程序产品可以包括当程序运行时被配置为执行实施例的一个或多个计算机可执行组件。一个或多个计算机可执行组件可以是至少一个软件代码或其一部分。另外,在这一点上,应当注意,如图中的逻辑流程的任何框可以表示程序步骤、或者互连的逻辑电路、框和功能、或者程序步骤和逻辑电路、框和功能的组合。软件可以存储在诸如存储器芯片或在处理器内实现的存储块等物理介质、诸如硬盘或软盘等磁性介质、以及诸如例如DVD及其数据变体、CD等光学介质上。物理介质是非瞬态介质。
本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (6)
1.基于网页的表格文书分页打印方法,其特征在于,包括以下步骤:
获取网页上的待打印表格文书,根据所述待打印表格文书创建至少一预览区域,将所述待打印表格文书依次拆分成多个表格模块并渲染于每一所述预览区域;
依次打印每一所述预览区域时,获取当前预览区域、所述当前预览区域的第一像素高度以及所述当前预览区域中的所有表格模块,其中所述当前预览区域为当前待打印的所述预览区域;
获取所述当前预览区域中每一表格模块的像素高度以及每一表格模块的顶部距离所述当前预览区域顶部的第二像素高度,根据每一所述表格模块的所述像素高度、所述第二像素高度以及所述当前预览区域的所述第一像素高度,确定所述当前预览区域中的目标模块以及所述目标模块的第三像素高度,其中所述目标模块的所述第二像素高度与所述像素高度之和大于当前预览区域的第一像素高度,所述目标模块的第三像素高度为所述第一像素高度减去所述目标模块的第二像素高度的差值;
获取所述目标模块内文字的文字行高,根据所述第三像素高度和所述文字行高计算第四像素高度,所述第四像素高度为所述第三像素高度除以所述文字行高的余数,并将所述目标模块中的文字下移所述第四像素高度;
打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域继续进行打印。
2.根据权利要求1所述的基于网页的表格文书分页打印方法,其特征在于,打印所述当前预览区域时,所述目标模块被分为第一子模块和第二子模块,所述第一子模块位于所述当前预览区域,所述第二子模块位于相对于所述当前预览区域的后一所述预览区域;所述模块包括所述表格模块、所述第一子模块和所述第二子模块。
3.根据权利要求1所述的基于网页的表格文书分页打印方法,其特征在于,“将所述目标模块中的文字下移所述第四像素高度”包括:在所述目标模块内的顶部设置所述第四像素高度,使所述目标模块中的所有文字向下移动所述所述第四像素高度。
4.基于网页的表格文书分页打印装置,其特征在于,包括以下模块:
渲染模块,用于获取网页上的待打印表格文书,根据所述待打印表格文书创建至少一预览区域,将所述待打印表格文书依次拆分成多个表格模块并渲染于每一所述预览区域;
获取模块,用于依次打印每一所述预览区域时,获取当前预览区域、当前预览区域的第一像素高度以及所述当前预览区域中的所有表格模块,其中所述当前预览区域为当前待打印的所述预览区域;
定位模块,用于获取所述当前预览区域中每一表格模块的像素高度以及每一表格模块的顶部距离所述当前预览区域顶部的第二像素高度,根据每一所述表格模块的所述像素高度、所述第二像素高度以及所述当前预览区域的所述第一像素高度,确定所述当前预览区域中的目标模块以及所述目标模块的第三像素高度,其中所述目标模块的所述第二像素高度与所述像素高度之和大于当前预览区域的第一像素高度,所述目标模块的第三像素高度为所述第一像素高度减去所述目标模块的第二像素高度的差值;
调整模块,用于获取所述目标模块内文字的文字行高,根据所述第三像素高度和所述文字行高计算第四像素高度,所述第四像素高度为所述第三像素高度除以所述文字行高的余数,并将所述目标模块中的文字下移所述第四像素高度;
打印模块,用于打印所述当前预览区域,并将所述当前预览区域的后一所述预览区域作为新的当前预览区域继续进行打印。
5.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至3任一所述的基于网页的表格文书分页打印方法。
6.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序包括用于控制过程以执行过程的程序代码,所述过程包括根据权利要求1至3任一项所述的基于网页的表格文书分页打印方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111632173.1A CN114296662B (zh) | 2021-12-28 | 2021-12-28 | 基于网页的表格文书分页打印方法、装置及其应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111632173.1A CN114296662B (zh) | 2021-12-28 | 2021-12-28 | 基于网页的表格文书分页打印方法、装置及其应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114296662A CN114296662A (zh) | 2022-04-08 |
CN114296662B true CN114296662B (zh) | 2023-10-13 |
Family
ID=80972302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111632173.1A Active CN114296662B (zh) | 2021-12-28 | 2021-12-28 | 基于网页的表格文书分页打印方法、装置及其应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114296662B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115563932B (zh) * | 2022-10-20 | 2023-05-23 | 北京天健源达科技股份有限公司 | 表格分页方法、装置、设备及存储介质 |
CN115543238B (zh) * | 2022-11-29 | 2023-03-21 | 明度智云(浙江)科技有限公司 | 一种浏览器页面打印方法、装置、设备及存储介质 |
CN115857844B (zh) * | 2023-02-28 | 2023-05-09 | 江苏曼荼罗软件股份有限公司 | 一种电子病历续打方法、系统、存储介质及设备 |
CN117234442B (zh) * | 2023-11-09 | 2024-04-19 | 金蝶征信有限公司 | 数据打印方法、装置、计算机设备及计算机可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1191432A2 (en) * | 2000-09-21 | 2002-03-27 | Ricoh Company, Ltd. | Virtual print previewing |
AU2002951709A0 (en) * | 2002-09-26 | 2002-10-17 | Canon Information Systems Research Australia Pty Ltd | Efficient printing of frames pages |
JP2011203774A (ja) * | 2010-03-24 | 2011-10-13 | Oki Data Corp | 印刷プログラム、印刷制御装置および画像形成装置 |
US9727293B1 (en) * | 2010-12-21 | 2017-08-08 | Amazon Technologies, Inc. | Method and apparatus for paginating electronic documents |
CN107402729A (zh) * | 2016-05-20 | 2017-11-28 | 航天信息软件技术有限公司 | 打印模板构建方法及模板打印方法 |
JP2018092624A (ja) * | 2016-11-29 | 2018-06-14 | 三和化学株式会社 | レイアウト支援システム |
CN110347349A (zh) * | 2019-05-21 | 2019-10-18 | 平安银行股份有限公司 | 浏览器中打印指定内容的方法、装置和计算机设备 |
CN111126007A (zh) * | 2020-03-27 | 2020-05-08 | 创业慧康科技股份有限公司 | 一种基于html病历文书分页算法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5539280B2 (ja) * | 2011-09-07 | 2014-07-02 | キヤノン株式会社 | データ処理装置、データ処理方法およびプログラム |
US10318614B2 (en) * | 2015-07-01 | 2019-06-11 | Tnq Books And Journals Private Limited | Transformation of marked-up content into a file format that enables automated browser based pagination |
US20200327188A1 (en) * | 2019-04-10 | 2020-10-15 | Microsoft Technology Licensing, Llc | Print scaling for digital markup-based documents |
-
2021
- 2021-12-28 CN CN202111632173.1A patent/CN114296662B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1191432A2 (en) * | 2000-09-21 | 2002-03-27 | Ricoh Company, Ltd. | Virtual print previewing |
AU2002951709A0 (en) * | 2002-09-26 | 2002-10-17 | Canon Information Systems Research Australia Pty Ltd | Efficient printing of frames pages |
JP2011203774A (ja) * | 2010-03-24 | 2011-10-13 | Oki Data Corp | 印刷プログラム、印刷制御装置および画像形成装置 |
US9727293B1 (en) * | 2010-12-21 | 2017-08-08 | Amazon Technologies, Inc. | Method and apparatus for paginating electronic documents |
CN107402729A (zh) * | 2016-05-20 | 2017-11-28 | 航天信息软件技术有限公司 | 打印模板构建方法及模板打印方法 |
JP2018092624A (ja) * | 2016-11-29 | 2018-06-14 | 三和化学株式会社 | レイアウト支援システム |
CN110347349A (zh) * | 2019-05-21 | 2019-10-18 | 平安银行股份有限公司 | 浏览器中打印指定内容的方法、装置和计算机设备 |
CN111126007A (zh) * | 2020-03-27 | 2020-05-08 | 创业慧康科技股份有限公司 | 一种基于html病历文书分页算法 |
Non-Patent Citations (3)
Title |
---|
PLC编程软件中通用表格打印类的设计与应用;杨心丽;程睿远;;工业控制计算机(第12期);全文 * |
Refine Web page printing with Print Options;Adam Gogolski;《Inside the internet: Internet tips for DOS, macintosh and windows》;全文 * |
基于WEB的多页打印报表动态生成;王建平;;微型电脑应用(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114296662A (zh) | 2022-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114296662B (zh) | 基于网页的表格文书分页打印方法、装置及其应用 | |
CN105631393A (zh) | 信息识别方法及装置 | |
EP4145334A1 (en) | Document processing method and apparatus, and electronic device | |
CN108573515A (zh) | 一种合图生成方法及装置、合图模板生成方法及装置 | |
CN111399831A (zh) | 页面的展示方法和装置、存储介质、电子装置 | |
CN110705234A (zh) | 一种制式表单自适应排版及分页方法和装置 | |
CN112464626B (zh) | Pdf文档的图表提取方法、电子设备和存储介质 | |
CN107608733A (zh) | 图片显示方法、装置和终端设备 | |
CN111444452B (zh) | 网页页面的转换方法、装置及存储介质 | |
CN110221790B (zh) | 通用打印方法和装置、分析仪器和存储介质 | |
CN117032666A (zh) | 基于编辑器的页面编辑方法、装置、终端设备及存储介质 | |
CN115065945B (zh) | 短信链接生成方法、装置、电子设备及存储介质 | |
CN115587075B (zh) | 版式文件处理方法、装置、终端设备及存储介质 | |
CN103995801A (zh) | 电子杂志生成系统、生成方法及生成程序 | |
CN115270737B (zh) | 一种目标对象的格式修改方法及装置 | |
CN115935917A (zh) | 一种可视化图表的数据处理方法、装置、设备及存储介质 | |
CN113505567B (zh) | 电子出版文件的生成方法和装置 | |
CN111104805A (zh) | 一种翻译处理的方法、装置、计算机存储介质及终端 | |
CN114925666A (zh) | 物料素材批量合图的方法和装置,存储介质和电子设备 | |
CN113936187A (zh) | 文本图像合成方法、装置、存储介质及电子设备 | |
CN113986158A (zh) | 打印方法、打印设计器及计算机可读存储介质 | |
CN113378527A (zh) | Pdf文档编辑方法、装置、存储介质及电子设备 | |
CN112464618A (zh) | 文档数据的分页方法和装置、存储介质和电子设备 | |
CN115659710A (zh) | Cad平台的信息导入方法、装置和存储介质及电子装置 | |
JP4144203B2 (ja) | 情報提示装置及びプログラム |
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 |