
技术摘要:
本发明实施例提供了一种打印数据排版方法、装置、设备及存储介质,涉及打印机技术领域,该方法包括以下步骤:当接收到打印指令时,获取待打印数据并存储于缓冲区中;逐字符接收所述缓冲区中的待打印数据并在当前页面预先设置的可打印逻辑区域上进行排版,当判断可打印 全部
背景技术:
打印指令,又称打印控制命令,计算机通过打印控制语言,以软件命令方法来控制 打印机操作,解析执行打印数据,组织被打印的文档,获取打印结果。对于打印机所实现的 复杂功能而言,打印控制语言是基础,它直接关系到打印质量的优劣。 打印机的打印模式一般分为:普通字符打印模式、位图打印模式和页打印模式。其 中,页打印模式是通过打印控制语言把打印内容分成若干块,每一块视作一页,每一页的数 据封装为一包进行处理。在页打印模式下,打印机端需要配置大容量缓存,接收到的数据暂 存在缓存中直至一页数据接收完毕。打印过程中若超出页面的设置范围,由于打印机页模 式字符边界处理不当,多出数据会出现重叠打印的情况。
技术实现要素:
有鉴于此,本发明实施例的目的在于提供一种打印数据排版方法、装置、打印机及 存储介质,以改善现有技术中页打印模式下打印重叠的问题。 本发明实施例提供了一种打印数据排版方法,包括以下步骤: 当接收到打印指令时,获取待打印数据并存储于缓冲区中; 逐字符接收所述缓冲区中的待打印数据并在当前页面预先设置的可打印逻辑区 域上进行排版,当判断可打印逻辑区域上的字符的整体占用区域将要超出所述可打印逻辑 区域时,舍弃所述缓冲区内的未接收的字符,并生成打印页面排版; 根据所述打印页面排版打印所述当前页面。 优选地,还包括: 获取可打印逻辑区域、页面打印方向和打印起始位置;其中, 所述可打印逻辑区域包括可打印逻辑宽度和可打印逻辑高度;所述页面打印方向 为从左至右、从下至上、从右至左或从上至下。 优选地,所述逐字符接收所述缓冲区中的待打印数据并在当前页面预先设置的可 打印逻辑区域上进行排版,当判断可打印逻辑区域上的字符的整体占用区域将要超出所述 可打印逻辑区域时,舍弃所述缓冲区内的未接收的字符,并生成打印页面排版,具体为: 从所述缓冲区获取当前接收字符; 在字库中获取所述当前字符对应的点阵数据; 根据上一个点阵数据的坐标,获取当前点阵数据在可打印逻辑区域的当前行的第 一预置位置; 判断所述第一预置位置在横向上是否超出所述可打印逻辑区域的当前行的边界; 若否,则将所述点阵数据设置在第一预置位置; 4 CN 111596869 A 说 明 书 2/7 页 若是,则将所述点阵数据的放置位置调节至下一行的行首,以获得第二预置位置; 判断所述第二预置位置是否在纵向上超出所述可打印逻辑区域的边界; 若否,则将所述点阵数据设置在第二预置位置; 若是,则舍弃当前接收字符以及所述缓冲区内的未接收的字符,以生成打印页面 排版。 优选地,还包括: 当判断所述第二预置位置在纵向上未超出所述可打印逻辑区域的边界时,继续逐 字符接收所述缓冲区中的待打印数据。 本发明实施例还提供了一种打印数据排版装置,包括: 缓存单元,用于当接收到打印指令时,获取待打印数据并存储于缓冲区中; 页面数据排版单元,用于逐字符接收所述缓冲区中的待打印数据并在当前页面预 先设置的可打印逻辑区域上进行排版,当判断可打印逻辑区域上的字符的整体占用区域将 要超出所述可打印逻辑区域时,舍弃所述缓冲区内的未接收的字符,并生成打印页面排版; 打印单元,用于根据所述打印页面排版打印所述当前页面。 优选地,还包括: 打印设置获取单元,用于获取可打印逻辑区域、页面打印方向和打印起始位置;其 中, 所述可打印逻辑区域包括可打印逻辑宽度和可打印逻辑高度;所述页面打印方向 为从左至右、从下至上、从右至左或从上至下。 优选地,所述页面数据排版单元具体用于: 从所述缓冲区获取当前接收字符; 在字库中获取所述当前字符对应的点阵数据; 根据上一个点阵数据的坐标,获取当前点阵数据在可打印逻辑区域的当前行的第 一预置位置; 判断所述第一预置位置在横向上是否超出所述可打印逻辑区域的当前行的边界; 若否,则将所述点阵数据设置在第一预置位置; 若是,则将所述点阵数据的放置位置调节至下一行的行首,以获得第二预置位置; 判断所述第二预置位置是否在纵向上超出所述可打印逻辑区域的边界; 若否,则将所述点阵数据设置在第二预置位置; 若是,则舍弃当前接收字符以及所述缓冲区内的未接收的字符,以生成打印页面 排版。 优选地,所述页面数据排版单元还用于: 当判断所述第二预置位置在纵向上未超出所述可打印逻辑区域的边界时,继续逐 字符接收所述缓冲区中的待打印数据。 本发明实施例还提供了一种打印机,包括控制器以及与所述控制器连接的打印 头,所述控制器被配置为执行其内存储的计算机程序以实现如上所述的打印数据排版方 法。 本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程 序被处理器执行时实现如上所述的打印数据排版方法。 5 CN 111596869 A 说 明 书 3/7 页 上述实施例中,在接收待打印数据的过程中,通过将从缓存中取得数据在可打印 逻辑区域上进行排版,当判断可打印逻辑区域上的字符的整体占用区域将要超出所述可打 印逻辑区域时,舍弃所述缓冲区内的未接收的字符,可以对字符的预填入位置进行判断,准 确判定当前页面的可容纳数据,避免了重叠打印。 附图说明 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附 图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对 范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这 些附图获得其他相关的附图。 图1为本发明第一实施例提供的一种打印数据排版方法的流程示意图。 图2为本发明第一实施例中打印数据排版过程的页面结构示意图。 图3为本发明第二实施例提供的一种打印数据排版装置的结构示意图。 图标:201-缓存单元;202-页面数据排版单元;203-打印单元;204-打印设置获取 单元。