Image data decompression method and related equipment

By using a method of decompressing and printing simultaneously, the image compressed data is processed into strip data in segments, which solves the problem of pauses caused by printer memory limitations, achieves continuity and high efficiency in the printing process, and optimizes resource utilization.

CN121644746APending Publication Date: 2026-03-10DALIAN RUITU INTELLIGENT PRINTING TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-10-31
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

In existing technologies, the limited image memory capacity of printers causes noticeable pauses in printing jobs between pages, affecting printing efficiency and user experience.

Method used

The method of decompressing and printing simultaneously is adopted. The image compression data is decompressed in segments into strip data, and the decompression speed is dynamically adjusted during the printing process to avoid data backlog or decompression lag, thereby optimizing the utilization of storage space.

Benefits of technology

It achieves continuous and efficient printing, reduces pauses between pages, improves user experience, and makes efficient use of storage resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121644746A_ABST
    Figure CN121644746A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of image forming devices, in particular to an image data decompression method and related equipment. The method comprises the steps that image compression data are acquired, and the image compression data comprise at least one piece of banded data; decompressing the image compression data, decompressing N banded data in the image compression data, and storing the decompressed banded data to form a pre-decompressed banded data set; wherein N is a natural number greater than or equal to 1; printing banded data, and printing banded data subsets in sequence, the banded data subsets including at least one banded data in the pre-decompressed banded data set; the pre-decompressed banded data set comprises a plurality of banded data subsets, banded data are updated, and after printing of each banded data subset is completed, the banded data in the image compression data are continuously decompressed, and the storage area of the printed banded data subset is covered, so that the pre-decompressed banded data set is updated; and repeating the steps of printing the strip-shaped data and updating the strip-shaped data until all the strip-shaped data in the image compression data are printed.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of image forming apparatuses, and in particular to an image data decompression method and related equipment. BACKGROUND

[0002] After receiving print data from a terminal device (such as a personal computer), an image forming apparatus needs to perform a print imaging operation on a print consumable. The print data is usually compressed image data described in a page description language generated by a printer driver. Due to the large amount of print data, a decompression module in the printer needs to decompress the print data before delivering it to a print engine for imaging.

[0003] In such a printing system, a random access memory (hereinafter referred to as "image memory") for storing decompressed image data is a critical and expensive hardware resource. Limited by cost, the image memory capacity equipped in the printer is usually small. This hardware limitation has a direct impact on the print data decompression process. In the traditional decompression processing method, the system usually adopts a sequential processing method of printing pages one by one: that is, decompressing the print data of an entire page to the image memory first, and then starting printing; after the page is printed, it is released from the image memory, and the print data of the next page is decompressed.

[0004] This method has the following defects: when the image of the page being printed is about to be completed, and the print data of the next page has not been decompressed, the print engine will enter a waiting state due to the inability to obtain subsequent data in time, resulting in obvious pauses between pages in the print job. This pause will disrupt the continuity of the printing process, especially when processing pages containing a large amount of image content, which will significantly reduce the overall printing efficiency and affect the user experience. SUMMARY

[0005] Therefore, the embodiments of the present application provide an image data decompression method and related equipment, which can reduce the pause during printing without increasing hardware costs, and increase printing efficiency.

[0006] In a first aspect, the embodiments of the present application provide an image data decompression method applied to an image forming apparatus, comprising: obtaining image compression data, the image compression data comprising at least one strip data; decompressing the image compression data, decompressing N strip data in the image compression data and storing to form a pre-decompressed strip data set; wherein N is a natural number greater than or equal to 1; printing the strip data, sequentially printing a strip data subset, the strip data subset containing at least one strip data in the pre-decompressed strip data set; Update the strip data: After each of the strip data subsets is printed, continue to decompress the strip data in the image compressed data, overwriting the storage area of ​​the printed strip data subsets, so as to update the pre-decompressed strip data set; Repeat the steps of printing and updating the strip data as described above until all strip data in the image compressed data has been printed.

[0007] In one possible implementation, after decompressing and storing the N strip data in the image compressed data to form a pre-decompressed strip data set, the method further includes: Determine the theoretical decompression time and the theoretical printing time for each strip of data; Determine the first difference between the theoretical decompression time and the theoretical printing time; The value of the number N of the decompressed strip data is adjusted according to the first difference, wherein the larger the first difference is, the smaller the value of N is.

[0008] In one possible implementation, after continuing to decompress the strip data in the image compressed data and overwriting the storage area of ​​the printed subset of the strip data, the method further includes: Determine the actual decompression time of the strip data in this decompression, and obtain the first number of unprinted strip data in the pre-decompressed strip data set; Record the first quantity as the load quantity; The amount of strip data to be decompressed next will be adjusted based on the actual decompression time of the strip data in this decompression and the amount of load.

[0009] In one possible implementation, adjusting the amount of strip data to be decompressed in the next iteration based on the actual decompression time of the current strip data and the load quantity includes: Determine the second difference between the actual decompression time of the strip data in this decompression and the theoretical decompression time of the strip data in this decompression; The amount of strip data to be decompressed next is adjusted based on the second difference and the load quantity.

[0010] In one possible implementation, adjusting the number of strip data to be decompressed next based on the second difference and the load quantity includes: When the second difference is greater than the first threshold or the number of loads is less than the second threshold, the number of strip data to be decompressed in the next operation is increased.

[0011] In one possible implementation, adjusting the number of strip data to be decompressed next based on the second difference and the load quantity includes: When the second difference is less than the third threshold, the amount of strip data to be decompressed in the next operation is reduced.

[0012] In one possible implementation, the method further includes: When the decompression of all strip data in the image compressed data is completed, a second number of unprinted strip data in the pre-decompressed strip data set is determined. When printing the image compression data for subsequent pages, the payload quantity is updated using the second quantity. In a second aspect, embodiments of the present invention provide an image forming apparatus, comprising: The acquisition module is used to acquire image compressed data, the image compressed data including at least one strip of data; The decompression module is used to decompress image compressed data, decompress N strip data in the image compressed data and store them to form a pre-decompressed strip data set; where N is a natural number greater than or equal to 1; A printing module is used to print strip data, and sequentially print subsets of strip data, wherein the subsets of strip data contain at least one strip data from the pre-decompressed strip data set; The update module is used to update the strip data. After each of the strip data subsets is printed, the strip data in the image compressed data is decompressed to overwrite the storage area of ​​the printed strip data subsets in order to update the pre-decompressed strip data set. The loop module is used to control the printing module and the update module to execute repeatedly until all the strip data in the image compressed data is printed.

[0013] Thirdly, embodiments of the present invention provide an electronic device, comprising: At least one processor; and At least one memory communicatively connected to the processor, wherein: The memory stores program instructions that can be executed by the processor, and the processor can execute the method described in the first aspect by calling the program instructions.

[0014] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing computer instructions that cause the computer to perform the method described in the first aspect.

[0015] In this embodiment of the invention, printing is performed by decompressing only a portion of the strip data at a time, thus achieving the technical effect of decompression and printing simultaneously. This avoids the problem of discontinuous printing between pages, improves printing efficiency, and consequently enhances the user's printing experience. Furthermore, by dynamically adjusting the decompression speed of the strip data to adapt to the printing speed, data backlog or decompression lag is avoided, resulting in more efficient use of storage space. Attached Figure Description To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0016] Figure 1 A flowchart of an image data decompression method provided in an embodiment of the present invention; Figure 2 This is a schematic diagram of strip data provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of a pre-decompressed strip data set provided in an embodiment of the present invention; Figure 4 This is a schematic diagram of the structure of an image forming apparatus provided in an embodiment of the present invention; Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation

[0017] To better understand the technical solution of the present invention, the embodiments of the present invention will be described in detail below with reference to the accompanying drawings.

[0018] It should be understood that the described embodiments are merely some, not all, of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without inventive effort are within the scope of protection of the present invention.

[0019] The terminology used in the embodiments of this invention is for the purpose of describing particular embodiments only and is not intended to limit the invention. The singular forms “a,” “the,” and “the” as used in the embodiments of this invention and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise.

[0020] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.

[0021] It should be understood that although terms such as first, second, third, etc., may be used to describe numbers in embodiments of the present invention, these numbers should not be limited to these terms. These terms are only used to distinguish numbers from each other. For example, without departing from the scope of embodiments of the present invention, a first number may also be referred to as a second number, and similarly, a second number may also be referred to as a first number.

[0022] Depending on the context, the word "if" as used here can be interpreted as "when," "when," "in response to determination," or "in response to detection." Similarly, depending on the context, the phrase "if determination" or "if detection (of the stated condition or event)" can be interpreted as "when determination," "in response to determination," "when detection (of the stated condition or event)," or "in response to detection (of the stated condition or event)."

[0023] To address the problem of reduced overall printing efficiency caused by significant pauses between pages due to hardware storage limitations in printing jobs, this invention provides an image data decompression method applied to an image forming apparatus, which can improve printing efficiency. Figure 1 This is a flowchart illustrating an image data decompression method provided in an embodiment of the present invention. Figure 1 As shown, the method includes: Step 101: Obtain image compression data, which includes at least one strip of data.

[0024] When a user issues a print or copy job, the corresponding print driver or copy module compresses the original print image and sends the compressed image data to the print management module. The print management module can then obtain the compressed image data and its characteristics.

[0025] Among them, strip data refers to the strip data obtained by dividing the original image along a direction perpendicular to the printing direction. Figure 2 This is a schematic diagram of strip data provided in an embodiment of the present invention. Figure 2 As shown, the arrows indicate the printing direction, and the original image 201 is divided into multiple strip data segments from 2011 to 2015 by dashed lines. In some embodiments, each strip data segment can be compressed individually to obtain a compressed package of multiple strip data segments, which together constitute the image compressed data.

[0026] Step 102: Decompress the image compressed data. Decompress and store N strip data from the image compressed data to form a pre-decompressed strip data set. Here, N is a natural number greater than or equal to 1, and N is less than or equal to the total number of strip data in the image compressed data.

[0027] Upon receiving the compressed image data, the print management module first saves it to a job list for distribution and error handling. Then, it sends the compressed image data from the job list to the image output control module. Following the YMCK printing order, the image output control module calls the decompression module to pre-decompress the N strips of compressed image data and stores them in memory.

[0028] The memory in the image forming apparatus includes image memory and system memory. In this embodiment, the memory used to store the N decompressed strip data is specifically implemented as image memory. Image memory is a collection of multiple decompressed but unprinted strip data. When the image memory of the image forming apparatus is small, the entire page of image compressed data is not completely decompressed to ensure that the image memory is not completely occupied by the decompressed strip data, reserving a certain amount of image memory to ensure that image compressed data can be decompressed continuously.

[0029] In some embodiments, after receiving image compressed data from the print management module, the image output control module determines whether it has acquired image compressed data corresponding to a specified number (N) of strip data. If it has not acquired the specified number of strip data corresponding to image compressed data, it continues to receive image compressed data from the print management module until it has acquired the specified number of strip data corresponding to image compressed data. If it has acquired the specified number of strip data corresponding to image compressed data, the image output control module calls the decompression module to start decompression. By determining whether the predetermined number of strip data has been acquired, duplicate data acquisition is avoided.

[0030] Step 103: Print the strip data, and print the strip data subsets in sequence. Each strip data subset contains at least one strip data from the pre-decompressed strip data set.

[0031] Specifically, each time a strip data set is printed, at least one strip data from the pre-decompressed strip data set is printed sequentially, taking a subset of strip data as the unit.

[0032] The image output control module transfers the decompressed strip data and begins printing via Direct Memory Access (DMA) registers. Specifically, the image output control module sets the address of the first strip data in the decompressed strip data subset in memory to the DMA register, thereby starting to print the strip data subset. Printing only the strip data contained in the subset at a time balances the time spent printing and decompressing the strip data, resulting in a more seamless printing process and improved user experience.

[0033] Step 104: Update the strip data. After each strip data subset is printed, continue to decompress the strip data in the image compression data to overwrite the storage area of ​​the printed strip data subset, so as to update the pre-decompressed strip data set.

[0034] After a subset of strip data is printed, the image output control module calls the decompression module to decompress the strip data from several image compressed data sets into the image memory, overwriting the storage area of ​​at least one strip data corresponding to the just-printed subset. Using a first-in, first-out (FIFO) principle, the subsets of strip data are printed sequentially. The storage area of ​​already printed strip data is immediately filled by newly decompressed strip data, ensuring that there are always N decompressed strip data sets waiting to be printed in the image memory, guaranteeing printing continuity.

[0035] Figure 3 This is a schematic diagram of a pre-decompressed strip data set provided in an embodiment of the present invention. In step 102, five strip data sets were pre-decompressed and the resulting five strip data sets were stored in [location missing]. Figure 3 The image memory shown contains striped data that constitutes a pre-decompressed striped data set. The five striped data obtained from the pre-decompression are band1 to band5. Band1 is stored at address B1, band2 at address B2, and so on, up to band5 at address B5. After band1 is printed, a new band, band6, is decompressed from the image compressed data and stored at address B1 to fill the image memory address where band1 has been printed. Simultaneously, band2 is being printed. After band2 is printed, a new band, band7, is decompressed from the image compressed data and stored at address B2 to fill the image memory address where band2 has been printed. Simultaneously, band3 is being printed, and this process of printing and updating striped data continues until all striped data in the image compressed data has been printed. The pre-decompressed striped data set is updated in this manner.

[0036] Step 105: Repeat the above steps of printing and updating the strip data until all strip data in the image compression data has been printed.

[0037] In some embodiments, when the image forming apparatus has a large image memory capable of storing more than one page of compressed image data simultaneously, there is still remaining storage space even after the initial pre-decompression of a full page of strip data. In this case, the value of N for the N strip data initially pre-decompressed can be the total number of strip data in the compressed image data. Therefore, there is no need to repeat the steps of printing strip data and updating the pre-decompressed strip data set; all strip data in a full page of compressed image data can be printed at once.

[0038] In the above solution, decompressing a portion of the image compressed data allows for simultaneous decompression and printing, reducing waiting time and improving overall printing efficiency. By decompressing and printing in segments, printing can begin without waiting for an entire page of image compressed data to be decompressed at once. This segmented processing method, using strip-like data, significantly reduces waiting time, avoids pauses between pages during printing, increases printing smoothness, and improves the user experience.

[0039] The technical solutions provided in this invention can be applied to different printing scenarios, such as printer terminals, print driver modules, or copy modules. They can also be expanded as needed to support more strip image data processing and printing functions, exhibiting strong compatibility and scalability.

[0040] In some embodiments, the number N of N strip data to be pre-decompressed initially is determined based on the processing performance of the image forming apparatus. It is then adjusted according to the printing speed of the image forming apparatus. Specifically, firstly, a reasonable number of pre-decompressed data, denoted as N(theoty), is obtained based on the processing performance of the image forming apparatus. Then, the theoretical decompression time for each strip data is determined, denoted as Tout. The theoretical printing time for each strip data is also determined, denoted as Tput. Next, a first difference between the theoretical decompression time Tout and the theoretical printing time Tput is determined, denoted as ΔT(theoty). Then, the value of the number N of the initially pre-decompressed strip data (i.e., N(theoty)) is adjusted based on the first difference ΔT(theoty), wherein a larger first difference ΔT(theoty) results in a smaller value for N.

[0041] In some embodiments, during the cyclic execution of steps 103 and 104, the number of strip data to be decompressed in the next iteration can be dynamically adjusted based on the actual decompression time and the number of decompressed but unprinted strip data in the pre-decompressed strip data set. This ensures system stability while saving image memory and optimizing resource utilization. For example, when the decompression speed is faster than the actual printing speed, a larger number of strip data can be decompressed each time. Conversely, if the decompression speed is slower than the actual printing speed, a smaller number of strip data can be decompressed each time, thus flexibly adapting to different printing needs and environments.

[0042] Specifically, in step 104, the strip data in the image compressed data continues to be decompressed. After overwriting the storage area of ​​the already printed strip data subset, the actual decompression time of the strip data in this decompression is determined and denoted as Tx. The first quantity of unprinted strip data in the current pre-decompressed strip data set is then obtained. This first quantity is recorded as the load quantity, denoted as Nx. Subsequently, the quantity of strip data to be decompressed in the next step is adjusted based on the actual decompression time Tx and the load quantity Nx.

[0043] First, determine the second difference (Tx - m × Tout) between the actual decompression time Tx of the current decompression strip data and the corresponding theoretical decompression time (m × Tout, where m is the number of strip data to be decompressed). Then, adjust the number of strip data to be decompressed in the next iteration based on the second difference and the load quantity. Specifically, when the second difference is greater than the first threshold, increase the number of strip data to be decompressed in the next iteration. Alternatively, when the load quantity is less than the second threshold, increase the number of strip data to be decompressed in the next iteration. When the second difference is less than the third threshold, decrease the number of strip data to be decompressed in the next iteration.

[0044] The first threshold can be determined based on the value of ΔT(theoty) mentioned above, and the value of the first threshold is greater than or equal to the value of ΔT(theoty). The second threshold can be determined based on the value of N(theoty). The second threshold can be set to be slightly greater than or slightly less than the value of N(theoty). The third threshold can be determined based on the value of ΔT(theoty) mentioned above, and the value of the third threshold is less than the value of ΔT(theoty).

[0045] When all strip data in the image compression data is decompressed, because the decompression speed is greater than the printing speed, all strip data in the image compression data will not be printed yet after decompression. A second quantity of unprinted strip data in the current pre-decompressed strip data set can be determined, denoted as Nf. This second quantity Nf effectively reflects the difference between the printing speed and the decompression speed. When printing subsequent pages of image compression data, the payload quantity Nx is updated using the second quantity Nf. That is, when printing the next page, Nx is updated to Nf. The image data decompression method provided in this invention decompresses a portion of the strip data in the compressed image data and stores it in the image memory. This allows for simultaneous decompression and printing, reducing waiting time, improving overall printing efficiency, ensuring system stability, saving memory, and optimizing resource utilization. Based on the decompression time, the amount of unprinted strip data, and the actual conditions of the image forming device (such as chip performance), the decompression speed of the decompression module is dynamically adjusted to adapt to the printing speed, avoiding data backlog or decompression lag. This makes more rational use of storage space, and this flexibility allows the method to adapt to different printing needs and environments.

[0046] During decompression and printing, the number of unprinted strip data is updated in a timely manner to ensure the continuity and stability of the printing process. By segmenting decompression and printing, the memory usage of the image is reduced. By calculating the decompression time of the strip data and the number of strip data that needs to be decompressed, the amount of pre-decompressed strip data is dynamically adjusted, ensuring stable printing by the image forming device while saving system resources and optimizing resource utilization.

[0047] Based on the above-described image data decompression method, this embodiment of the invention provides an image forming apparatus. Figure 4 This is a schematic diagram of the structure of an image forming apparatus provided in an embodiment of the present invention. Figure 4 As shown, the image forming apparatus includes: an acquisition module 401, a decompression module 402, a printing module 403, an update module 404, and a loop module 405.

[0048] The acquisition module 401 is used to acquire image compressed data, which includes at least one strip of data.

[0049] The decompression module 402 is used to decompress the image compressed data, decompressing and storing N strip data from the image compressed data to form a pre-decompressed strip data set. Here, N is a natural number greater than or equal to 1.

[0050] Printing module 403 is used to print strip data, sequentially printing subsets of strip data, wherein each subset of strip data contains at least one strip data from a pre-decompressed set of strip data. The update module 404 is used to update the strip data. After each strip data subset is printed, it continues to decompress the strip data in the image compression data and overwrites the storage area of ​​the printed strip data subset to update the pre-decompressed strip data set.

[0051] The loop module 405 is used to control the printing module and the update module to execute repeatedly until all the strip data in the image compression data is printed.

[0052] Figure 4 The image forming apparatus provided in the illustrated embodiment can be used to execute this specification. Figures 1-3 The implementation principle and technical effects of the method embodiment shown can be further referred to the relevant description in the method embodiment.

[0053] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention, such as... Figure 5 As shown, the aforementioned electronic device may include at least one processor and at least one memory communicatively connected to the processor, wherein the memory stores program instructions executable by the processor, and the processor can execute this specification by calling the program instructions. Figures 1-3 The illustrated embodiment provides an image data decompression method.

[0054] like Figure 5 As shown, the electronic device is represented in the form of a general-purpose computing device. The components of the electronic device may include, but are not limited to: one or more processors 510, communication interface 520 and memory 530, and a communication bus 540 connecting different system components (including memory 530, communication interface 520 and processor 510).

[0055] The communication bus 540 represents one or more of several bus architectures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus architectures. For example, these architectures include, but are not limited to, Industry Standard Architecture (ISA) buses, Micro Channel Architecture (MAC) buses, Enhanced ISA buses, Video Electronics Standards Association (VESA) local buses, and Peripheral Component Interconnect (PCI) buses.

[0056] Electronic devices typically include a variety of computer-readable media. These media can be any available media that can be accessed by the electronic device, including volatile and non-volatile media, and removable and non-removable media.

[0057] Memory 530 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) and / or cache memory. The electronic device may further include other removable / non-removable, volatile / non-volatile computer system storage media. Memory 530 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of the embodiments described herein.

[0058] A program / utility having a set (at least one) of program modules may be stored in memory 530. Such program modules include—but are not limited to—an operating system, one or more application programs, other program modules, and program data. Each or some combination of these examples may include an implementation of a network environment. The program modules typically perform the functions and / or methods described in the embodiments of this specification.

[0059] Processor 510 executes various functional applications and data processing by running programs stored in memory 530, such as implementing the functions described in this specification. Figures 1-3 The illustrated embodiment provides an image data decompression method.

[0060] This specification provides a computer program product, which includes a computer program that, when executed by a processor, performs the functions described in this specification. Figures 1-3 The illustrated embodiment provides an image data decompression method.

[0061] This specification provides a computer-readable storage medium that stores computer instructions that cause a computer to execute this specification. Figures 1-3 The illustrated embodiment provides an image data decompression method.

[0062] The aforementioned computer-readable storage medium may be any combination of one or more computer-readable media. A computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), or flash memory, optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium may be any tangible medium that contains or stores a program that may be used by or in connection with an instruction execution system, apparatus, or device.

[0063] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0064] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this specification. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0065] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this specification, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0066] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this specification includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which the embodiments of this specification pertain.

[0067] Depending on the context, the word "if" as used here can be interpreted as "when," "when," "in response to determination," or "in response to detection." Similarly, depending on the context, the phrase "if determination" or "if detection (of the stated condition or event)" can be interpreted as "when determination," "in response to determination," "when detection (of the stated condition or event)," or "in response to detection (of the stated condition or event)."

[0068] It should be noted that the devices involved in the embodiments of this specification may include, but are not limited to, personal computers (PCs), personal digital assistants (PDAs), wireless handheld devices, tablet computers, mobile phones, MP3 displays, MP4 displays, etc.

[0069] In the several embodiments provided in this specification, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms. Furthermore, the functional units in the various embodiments of this specification can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in a combination of hardware and software functional units.

[0070] The integrated units implemented as software functional units described above can be stored in a computer-readable storage medium. These software functional units, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, a connector, or a network device, etc.) or a processor to execute some steps of the methods described in the various embodiments of this specification. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0071] The above description is merely a preferred embodiment of this specification and is not intended to limit this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of protection of this specification.

[0072] The same or similar parts between the various embodiments in this specification can be referred to mutually. In particular, the device embodiments and terminal embodiments are basically similar to the method embodiments, so the description is relatively simple, and the relevant parts can be referred to the description in the method embodiments.

Claims

1. An image data decompression method characterized by, The application is applied to an image forming device, comprising: acquiring image compression data, the image compression data comprising at least one strip data; decompressing the image compression data, decompressing N strip data in the image compression data and storing, to form a pre-decompression strip data set; wherein N is a natural number greater than or equal to 1; printing the strip data, sequentially printing a strip data subset, the strip data subset comprising at least one strip data in the pre-decompression strip data set; updating the strip data, after printing of each strip data subset is completed, continuing to decompress the strip data in the image compression data, covering the storage area of the printed strip data subset, to update the pre-decompression strip data set; repeating the above steps of printing the strip data and updating the strip data, until printing of all strip data in the image compression data is completed.

2. The method of claim 1, wherein, After the step of decompressing N strip data in the image compression data and storing, to form a pre-decompression strip data set, the method further comprises: determining a theoretical decompression time consumption of each strip data and a theoretical printing time consumption of each strip data; determining a first difference between the theoretical decompression time consumption and the theoretical printing time consumption; adjusting the value of the number N of decompressed strip data according to the first difference, wherein the larger the first difference is, the smaller the value of N is.

3. The method of claim 1, wherein, After the step of continuing to decompress the strip data in the image compression data, covering the storage area of the printed strip data subset, the method further comprises: determining an actual decompression time consumption of the decompressed strip data, and acquiring a first number of non-printed strip data in the pre-decompression strip data set; recording the first number as a load number; adjusting the number of decompressed strip data in the next time according to the actual decompression time consumption of the decompressed strip data and the load number.

4. The method of claim 3, wherein, Adjusting the number of decompressed strip data in the next time according to the actual decompression time consumption of the decompressed strip data and the load number comprises: determining a second difference between the actual decompression time consumption of the decompressed strip data and the theoretical decompression time consumption of the decompressed strip data; adjusting the number of decompressed strip data in the next time according to the second difference and the load number.

5. The method of claim 4, wherein, Adjusting the number of decompressed strip data in the next time according to the second difference and the load number comprises: when the second difference is greater than a first threshold or the load number is less than a second threshold, increasing the number of decompressed strip data in the next time.

6. The method of claim 4, wherein, Adjusting the number of decompressed strip data in the next time according to the second difference and the load number comprises: when the second difference is less than a third threshold, reducing the number of decompressed strip data in the next time.

7. The method of claim 3, wherein, The method further comprises: when decompression of all strip data in the image compression data is completed, determining a second number of non-printed strip data in the pre-decompression strip data set; when printing image compression data of a subsequent page, using the second number to update the load number.

8. An image forming apparatus characterized by comprising: comprising: an acquisition module, configured to acquire image compression data, the image compression data comprising at least one strip data; a decompression module configured to decompress image compressed data, decompress N strip data in the image compressed data and store, to form a pre-decompressed strip data set, wherein N is a natural number greater than or equal to 1; a printing module configured to print strip data, sequentially print strip data subsets, the strip data subsets containing at least one strip data in the pre-decompressed strip data set; an updating module configured to update strip data, after each strip data subset is printed, continue to decompress strip data in the image compressed data, cover the storage area of the printed strip data subset, to update the pre-decompressed strip data set; a loop module configured to control the printing module and the updating module to repeatedly execute until the printing of all strip data in the image compressed data is completed.

9. An electronic device, comprising: comprise: at least one processor; and at least one memory connected to the processor in communication, wherein: the memory stores program instructions executable by the processor, and the processor invoking the program instructions can execute the method of any one of claims 1 to 7.

10. A computer readable storage medium, the computer readable storage medium storing computer instructions, the computer instructions causing the computer to execute the method of any one of claims 1 to 7.