Support program

The support program optimizes printer operations by determining compression conditions based on print settings and printer capabilities, simplifying processing and reducing load by using the general-purpose print program's compression functions.

JP2025123147APending Publication Date: 2025-08-22BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024019058
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-12
Publication Date
2025-08-22

AI Technical Summary

Technical Problem

Existing support programs that implement compression functions for printers using OS-standard general-purpose print programs face increased processing complexity and load.

Method used

A support program that determines compression conditions based on print settings and printer capabilities, instructs the general-purpose print program to compress intermediate data, and acquires compressed data for printing, thereby simplifying processing and reducing the program's load.

Benefits of technology

The solution reduces the processing load on the support program by leveraging the general-purpose print program's compression capabilities, optimizing data transfer and printer operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025123147000001_ABST
    Figure 2025123147000001_ABST
Patent Text Reader

Abstract

To reduce a load on a support program required for data compression in an information processing apparatus in which an OS standard general-purpose printing program is embedded.SOLUTION: An OS standard general-purpose printing program 41 and an auxiliary program 42 corresponding to a printer 2 are embedded in a PC 1. When a print instruction to print an image to be printed is given from an editing application 43 to the general-purpose printing program 41, the auxiliary program 42 determines a compression condition based on at least one of print settings of the print instruction and the capability of the printer 2 and instructs the general-purpose printing program 41 to perform compression based on the determined compression condition. The auxiliary program 42 acquires intermediate data compressed according to compression processing from the general-purpose printing program 41. The auxiliary program 42 performs processing for causing the printer 2 to print print data generated from the acquired intermediate data.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technical field disclosed in this specification relates to a support program that supports control of a printer. [Background technology]

[0002] In recent years, a technology has been put into practical use that controls a printer using a standard general-purpose print program that is part of the operating system (OS) and does not use a printer driver provided by the printer vendor. With this technology, when the OS detects a printer, it associates it with the OS's standard general-purpose print program, and then when a print instruction for that printer is received, the OS's standard general-purpose print program generates print data, making it possible to print using the OS's standard general-purpose print program, without using a printer driver provided by the printer vendor.

[0003] An example of a document disclosing technology related to a general-purpose printing program that is standard for an OS is Patent Document 1. Patent Document 1 discloses a support program that supports the general-purpose printing program, and determines whether compression is necessary based on print settings, etc., and compresses the raster data if compression is necessary. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Publication No. 2023-049478 Summary of the Invention [Problem to be solved by the invention]

[0005] Patent document 1 discloses a technology in which a support program compresses data sent to a printer, but if the support program implements a compression function, the processing of the support program becomes complicated and the load on the support program may increase. [Means for solving the problem]

[0006] A support program made for the purpose of solving the above-mentioned problems is executable by a computer of an information processing device, and is a support program corresponding to a printer connected to the information processing device, wherein the information processing device is equipped with an operating system having a general-purpose printing program, and the support program is configured to cause the computer to execute the following: a determination process for determining compression conditions based on at least one of the print settings in the print instruction and the capabilities of the printer when a print instruction is output from an application program built into the information processing device and the general-purpose printing program is instructed to print an image on the printer; an instruction process for instructing the general-purpose printing program to compress using the compression conditions determined in the determination process; an acquisition process for acquiring intermediate data indicating the image to be printed in accordance with the print instruction, wherein the intermediate data has been compressed by the general-purpose printing program in accordance with the compression conditions instructed in the instruction process; and a print process for performing processing to cause the printer to print based on the print data generated from the intermediate data acquired in the acquisition process.

[0007] A support program having the above configuration determines compression conditions for a compression process that compresses intermediate data based on at least one of print settings in a print instruction and printer capabilities, and instructs the general-purpose print program to compress the intermediate data. The support program acquires, from the general-purpose print program, the intermediate data that the general-purpose print program has compressed in accordance with the compression conditions. The support program then causes the printer to print based on print data generated from the acquired intermediate data. This support program not only makes it possible to utilize the compression function of the general-purpose print program, but also simplifies the processing of the support program and reduces the load on the support program compared to when the support program compresses the intermediate data.

[0008] An apparatus for realizing the functions of the support program, a control method, and a computer-readable storage medium storing the support program are also novel and useful. [Effects of the Invention]

[0009] The technology disclosed in this specification realizes a technology that reduces the load on a support program for compressing data in an information processing device that has an OS-standard general-purpose printing program installed. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 2 is a block diagram showing an outline of the electrical configuration of a PC. [Figure 2] FIG. 10 is a sequence diagram illustrating an example of a print setting procedure. [Figure 3] FIG. 10 is a diagram illustrating an example of a compression condition. [Figure 4] 10 is a flowchart illustrating an example of a procedure for generating print data. DETAILED DESCRIPTION OF THE INVENTION

[0011] A personal computer (hereinafter referred to as a "PC") that uses the support program of the present embodiment will be described in detail below with reference to the accompanying drawings. This specification discloses a support program executed on a PC.

[0012] As shown in FIG. 1, the PC 1 of this embodiment includes a controller 10 including a CPU 11 and a memory 12. The PC 1 is an example of an "information processing device." The CPU 11 is an example of a "computer." The PC 1 also includes a user interface (hereinafter referred to as a "user IF") 13 and a communication interface (hereinafter referred to as a "communication IF") 14, which are electrically connected to the controller 10. Note that the controller 10 in FIG. 1 is a collective term for hardware and software used to control the PC 1, and does not necessarily represent a single piece of hardware that actually exists in the PC 1.

[0013] The CPU 11 of the PC 1 executes various processes in accordance with programs read from the memory 12 and based on user operations. The memory 12 stores various programs and various data. The memory 12 is also used as a work area when various processes are executed. The buffer provided in the CPU 11 is also an example of memory. Note that the memory 12 is not limited to a ROM, RAM, HDD, etc. built into the PC 1, but may also be a storage medium readable and writable by the CPU 11, such as a recording medium such as a CD-ROM or DVD-ROM.

[0014] The user IF 13 includes a display 13a, which is hardware that displays a screen for notifying the user of information, and hardware that accepts operations by the user. Note that the user IF 13 may be a combination of the display 13a capable of displaying information and a mouse, keyboard, or the like that has an input acceptance function, or may be a touch panel that has the functions of the display 13a and an input acceptance function.

[0015] The communication IF 14 includes hardware for communicating with an external device such as the printer 2. The communication IF 14 is compatible with a communication standard such as Ethernet (registered trademark), Wi-Fi (registered trademark), or USB. The PC 1 may be connectable to the Internet via the communication IF 14. The PC 1 may be equipped with multiple communication IFs 14 compatible with multiple communication standards.

[0016] 1, the memory 12 of the PC 1 stores various programs and data, including an operating system (hereinafter referred to as "OS") 21 including a general-purpose printing program 41, an auxiliary program 42, and an editing application 43. The auxiliary program 42 is an example of a "support program." The editing application 43 is an example of an "application program."

[0017] OS21 is a multitasking OS that can process multiple tasks in parallel by managing and switching between them. Examples of OS21 include Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), and Android (registered trademark).

[0018] The OS 21 includes a general-purpose printing program 41. The general-purpose printing program 41 is a standard OS program prepared by the OS 21 vendor and provided as part of the OS 21. In other words, the PC 1 is equipped with the OS 21 that includes the general-purpose printing program 41. The general-purpose printing program 41 is not configured to use printer drivers specific to each printer.

[0019] The generic printing program 41 is a program that has the function of printing on multiple models of printers provided by multiple vendors based on user instructions. The generic printing program 41 supports generic functions that allow printing on many printers. Unlike printer drivers specific to each printer, the generic printing program 41 does not support functions specific to each printer or printer driver, especially functions that require complex processing.

[0020] The general-purpose printing program 41 is a program that includes a function to receive image data designated as a print target in a print instruction output from various applications based on a user instruction and generate intermediate data based on that image data. The intermediate data is, for example, XPS data. The general-purpose printing program 41 also has a function to generate print data in a format that can be used for printing on various printers based on the intermediate data. The print data is, for example, PWGRaster data or PDF data. The general-purpose printing program 41 also has a function to send the generated print data to the printer designated as the device to execute printing via a communication function provided by the OS 21.

[0021] The auxiliary program 42 is a program or group of programs that executes processing based on instructions from the OS 21 in conjunction with the processing of the general-purpose printing program 41, and is a program that supports the control of the target hardware. The auxiliary program 42 of this embodiment corresponds to the model of the printer 2 connected to the PC 1, and is provided, for example, by the vendor of the printer 2. The general-purpose printing program 41 launches the auxiliary program 42 corresponding to the printer 2 when the printer 2 is selected as the device to execute printing, when an instruction for detailed print settings is received while the printer 2 is selected, when an instruction to execute printing on the printer 2 is received, etc. The auxiliary program 42 is, for example, called a print support app (abbreviated as PSA) or a hardware support app (abbreviated as HSA).

[0022] The auxiliary program 42 may be a combination of multiple programs that each accept an execution command, or a single program that can execute different processes depending on the command. The auxiliary program may also be a program prepared by a printer vendor for each printer type. For example, an auxiliary program for inkjet printers and an auxiliary program for laser printers may be prepared. A separate auxiliary program may be prepared not only for each printer type, but also for each printer model or series of printer models.

[0023] For example, when a new printer is connected to the PC 1, the OS 21 of the PC 1 can download an appropriate auxiliary program according to the type and model of the connected printer from a server of the printer vendor or storage designated by the OS 21, and install it in the PC 1. The OS 21 associates the identification information of the installed auxiliary program with the printer information of the newly connected printer and stores it in the memory 12.

[0024] The editing application 43 is, for example, a program for creating and editing image data and document data. The editing application 43 may be, for example, Microsoft Word (registered trademark) or PowerPoint (registered trademark), or may be a program provided by the vendor of the printer 2. The editing application 43 is capable of receiving, via the user IF 13, a print execution instruction for causing the printer 2 to execute printing. Note that the editing application 43 is not limited to a program for creating and editing data, and may also be a program having a function for receiving display instructions and print instructions for various types of information, such as map information and web pages, in response to a user request.

[0025] In this embodiment, the PC 1 is connected to the printer 2 via the communication IF 14 as shown in FIG. 1. The printer 2 is a device that has at least a printing function and a communication function. For example, when the printer 2 receives print data from the PC 1 or the like, it can execute printing based on the received print data. The printer 2 may be a device capable of color printing, or may be a device capable of only monochrome printing.

[0026] Next, the processing procedure for printing on the printer 2 in the PC 1 of this embodiment will be described based on the sequence in FIG. 2. Note that in this embodiment, each process other than user operation basically indicates processing by the CPU 11 in accordance with instructions written in a program such as the auxiliary program 42. In this specification, various processes performed by the controller 10 or the CPU 11 in accordance with programs such as the auxiliary program 42, the general-purpose printing program 41, and the OS 21 may be described, for convenience, as if each program were independently performing various processes. Processing by the CPU 11 also includes hardware control using the API of the OS 21. In this specification, the operation of each program will be described without a detailed description of the OS 21. Also, the term "acquire" is used as a concept that does not necessarily require a request.

[0027] After determining the image to be printed and the print settings for the printer 2 (A01), the user inputs a print execution instruction to the editing application 43 (B01). For example, the editing application 43 requests the general-purpose printing program 41 to display a print setting screen. The print setting screen is a screen that accepts user instructions regarding, for example, various print settings that can be accepted by the general-purpose printing program 41. The print setting screen may have an area that can display information specified by the auxiliary program 42. The general-purpose printing program 41 accepts, via the print setting screen, a selection instruction to select the printer 2 as the device to execute printing, various print setting parameters, print selection, etc., and passes the accepted information to the editing application 43. Note that the editing application 43 may display the print setting screen and accept various settings.

[0028] For example, when a selection instruction to select printer 2 as the device to perform printing is received on the print setting screen, or when a print selection is received with printer 2 selected as the device to perform printing, the general-purpose print program 41 receives information indicating that printer 2 has been selected from the editing application 43 along with the print instruction (B02).

[0029] The general-purpose printing program 41 outputs an execution instruction to the auxiliary program 42 corresponding to the printer 2, and starts the auxiliary program 42 (B03).

[0030] The launched auxiliary program 42 determines compression conditions based on at least one of the print settings in the print instruction and the capabilities of the selected printer (B04). The compression conditions are conditions under which the general-purpose print program 41 compresses intermediate data representing the image to be printed. B04 is an example of a "determination process." The auxiliary program 42 may determine whether to compress the intermediate data based on the compression conditions, or may determine the degree of compression of the intermediate data, i.e., the compression rate. The compression conditions indicating whether to compress are an example of a "first condition." The compression conditions indicating the compression rate are an example of a "second condition."

[0031] The print settings are, for example, print settings received from the general-purpose print program 41 when the auxiliary program 42 is started from the general-purpose print program 41 in B03. The print settings may also be print settings received via a print setting screen after the auxiliary program 42 is started. In the auxiliary program 42, compression conditions are set in advance for each item or parameter of the print settings, as shown in FIG.

[0032] The print settings may include, for example, an item related to the balance between image quality and speed. Parameters that can be set for this item include, for example, a parameter indicating an image quality priority, a parameter indicating a print speed priority, and a parameter indicating a standard that balances image quality and speed. Compressing data may result in a decrease in the image quality of the printed result. Therefore, when a parameter indicating an image quality priority is set in the print settings, the compression condition may be set to no compression. When the compression condition indicates a compression rate, the compression conditions indicating the highest compression rate may be set in the order of, for example, a parameter indicating a print speed priority, a parameter indicating a standard, and a parameter indicating an image quality priority. The compression rate may be 0%, i.e., no compression.

[0033] Data transfer time tends to be shorter as the data size becomes smaller. Therefore, when a parameter indicating image quality priority is set in the print settings, the compression conditions may be set to indicate a first compression rate, and when a parameter indicating speed priority is set in the print settings, the compression conditions may be set to indicate a second compression rate that is higher than the first compression rate. Note that when a parameter indicating standard is set in the print settings, the compression conditions may be set to indicate a third compression rate that is between the first and second compression rates.

[0034] Some printer models support accumulated printing. Accumulated printing is a type of printing in which the printer does not immediately start printing based on a print job it receives, but instead accumulates data based on that print data in memory, and then starts printing based on that data in response to a user operation via the printer's user interface. If printer 2 is a model that supports accumulated printing, the print setting screen can accept a setting for whether or not to perform accumulated printing. Note that the parameters that can be set for accumulated printing may also include a password that is entered via the printer's operation panel when printing print data accumulated in the printer, and whether or not to perform accumulated printing may be determined based on the presence or absence of a password.

[0035] In the case of accumulated printing, the print data transferred to the printer 2 does not start printing immediately, but is accumulated in the memory of the printer 2, placing a burden on the memory. Therefore, when the parameter for accumulated printing is set in the print settings, the compression conditions may be set to compress. Note that the compression conditions may be set so that a higher compression rate is obtained when accumulated printing is performed than when accumulated printing is not performed.

[0036] The print settings may include, for example, a parameter indicating the type of print content. Parameters that can be set for the type of print content include text, graphics, and photos. For example, even if text is set as the type of print content, the text may be included as image data to be printed. Compressing image data of text may result in characters being distorted. Therefore, when a parameter indicating that the type of print content is text is set in the print settings, the compression condition may be set to no compression. For example, when a parameter indicating that the type of print content is graphics or photos is set in the print settings, the compression condition may be set to compress. Note that when the type of print content is text, a compression condition with a lower compression rate may be set compared to graphics or photos.

[0037] In addition, various print setting parameters used to determine compression conditions, such as parameters related to the balance between image quality and speed, parameters for accumulated printing, and parameters indicating the type of print content, may be parameters obtained from a general-purpose printing program, or may be unique parameters used independently by the auxiliary program 42.

[0038] The capabilities of the printer 2 can be determined based on, for example, the model name of the printer 2 and capability information that can be acquired from the printer 2. The capability information includes, for example, information on setting items that can be set as print settings and parameters that can be set for each setting item.

[0039] For example, when the printer 2 is selected on the print setting screen and the auxiliary program 42 receives that information from the general-purpose printing program 41, when the auxiliary program 42 is started from the general-purpose printing program 41 in response to a print execution instruction, or when the compression conditions are determined, the auxiliary program 42 may acquire capability information from the printer 2 via the general-purpose printing program 41. In this case, the general-purpose printing program 41 communicates with the printer 2 via the OS 21, for example, by communication in accordance with IPP (short for Internet Printing Protocol).

[0040] The auxiliary program 42 may obtain the capability information directly from the printer 2 using, for example, an MIB (abbreviation for Management Information Base) instead of making a request to the general-purpose printing program 41. The capability information that the auxiliary program 42 can obtain from the printer 2 may include more information than the capability information obtained via the OS 21.

[0041] The capability information is information consisting of multiple items or parameters that indicate the capabilities of the printer. The auxiliary program 42 may acquire all of this capability information, or may acquire only a portion of the capability information of the printer 2 that is used to determine the compression conditions.

[0042] The capability information may include, for example, the memory capacity of the printer 2. The memory capacity may include the memory capacity of the memory built into the printer 2 as well as the memory capacity of memory externally attached to the printer 2. If the memory capacity of the printer 2 is small, there is a high possibility that the data for printing will place a heavy load on the memory of the printer 2. Therefore, the compression condition may be set to compress when the memory capacity of the printer 2 is less than a first threshold. Note that the compression condition may be set to not compress or to a compression rate lower than the compression rate when the memory capacity is less than the first threshold.

[0043] Furthermore, the compression conditions may be set so that the smaller the memory capacity, the higher the compression rate. By setting a higher compression rate for smaller memory capacity, it is expected that the memory load on the printer 2 due to the print data will be reduced.

[0044] The data formats of print data that the printer 2 can accept are determined in advance. The data formats of print data are, for example, raster data such as PWGRaster data, or PDF. The auxiliary program 42 stores, for example, the data formats of data that the printer 2 can accept for each compatible model, and can determine the data formats that the printer 2 can accept based on the model of the selected printer 2. The auxiliary program 42 may also obtain capability information, including the data formats of print data that the printer 2 can accept, from the printer 2 or the OS 21.

[0045] In PDF data, for images, image data representing the image is embedded in the file. Therefore, the size of the print data can be reduced by compressing the image data. Therefore, if the print data format accepted by printer 2 includes PDF data, the compression condition may be set to compress. If the print data format accepted by printer 2 is raster data only, the compression condition may be set to not compress.

[0046] The auxiliary program 42 converts the image to be printed into print data that can be accepted by the printer 2. For example, if the only print data format that can be accepted by the printer 2 is PWGRaster data, the auxiliary program 42 generates raster data based on the intermediate data. Therefore, even if the general-purpose printing program 41 compresses the intermediate data, it does not affect the size of the final raster data. Therefore, the compression condition when the print data format accepted by the selected printer 2 is raster data may be set to no compression.

[0047] The print settings and capability items and parameters that determine the compression conditions may be other than those shown in Fig. 3, and may not include all of those shown in Fig. 3. The compression conditions for each item and parameter may differ from those shown in Fig. 3.

[0048] The auxiliary program 42 determines the compression conditions based on at least one item from among the print settings and capabilities shown in Fig. 3. The compression conditions may be determined from multiple items, in which case the priority of each item may be predetermined or may be set by the user. The user may also be able to set which items are used to determine the compression conditions.

[0049] 2, the auxiliary program 42 instructs the general-purpose printing program 41 to perform compression under the determined compression conditions (B05). B05 is an example of "instruction processing."

[0050] The general-purpose printing program 41 generates intermediate data in response to an instruction from the auxiliary program 42 (B06). The general-purpose printing program 41 generates the intermediate data by converting the format of the data to be printed into the format of the intermediate data based on information acquired from the editing application 43. The data to be printed passed to the general-purpose printing program 41 by the editing application 43 can be of various types, and the general-purpose printing program 41 converts the data to be printed into intermediate data. The intermediate data is, for example, XPS data.

[0051] For example, if the compression conditions determined by the auxiliary program 42 indicate that compression is to be performed, the general-purpose printing program 41 executes a compression process to compress image data included in the data to be printed when generating the intermediate data. The compression process is performed using a compression method that the selected printer 2 can support. The compression method can be determined, for example, based on capability information. If the compression conditions indicate a compression rate, the general-purpose printing program 41 generates intermediate data by compressing the image data included in the image to be printed based on that compression rate. The compression rate may be predetermined in the general-purpose printing program 41 for each compression method supported by the printer 2, instead of being specified by the auxiliary program 42. The general-purpose printing program 41 may perform the compression process after generating the intermediate data, or may perform the generation of the intermediate data and the compression process simultaneously.

[0052] For example, when the compression conditions indicate no compression, the general-purpose printing program 41 generates intermediate data without compressing the image data included in the image to be printed.

[0053] The general-purpose printing program 41 passes the generated intermediate data to the auxiliary program 42 (B07). The auxiliary program 42 can acquire the intermediate data compressed by the general-purpose printing program 41 according to the compression conditions determined by the auxiliary program 42 in B04. Note that if the compression conditions are determined to be no compression or a compression rate of 0% in B04, the auxiliary program 42 acquires the uncompressed intermediate data from the general-purpose printing program 41 in B07. B07 is an example of an "acquisition process."

[0054] The auxiliary program 42 can edit the intermediate data and print setting information received from the general-purpose print program 41 as necessary (B08).

[0055] The auxiliary program 42 generates print data, which is PDL data, based on the intermediate data (B11). The print data generated in B11 may be data in a format that can be printed by the printer 2.

[0056] The procedure for generating print data will be described with reference to the flowchart in Fig. 4. The CPU 11 executing the auxiliary program 42 determines whether the format of print data accepted by the printer 2 is raster data only (S11).

[0057] If the data format of the print data accepted by the printer 2 is raster data only (S11: YES), the CPU 11 rasterizes the intermediate data (S12) and compresses it (S13) to generate print data, and then ends the process. Note that the CPU 11 may perform the rasterization and compression processes simultaneously.

[0058] The CPU 11 executing the auxiliary program 42 performs compression processing using a compression method compatible with the selected printer 2. The compression method may be included in the capability information acquired from the printer 2, or may be stored for each model supported by the auxiliary program 42. As a result, if the data to be printed is not compressed by the general-purpose printing program 41, for example, it is compressed by the auxiliary program 42 as it is rasterized, thereby avoiding duplication of compression processing.

[0059] For example, if the data format of the print data accepted by the printer 2 is not only raster data (S11: NO), the CPU 11 converts the intermediate data into print data (S14). That is, the CPU 11 generates print data without rasterizing or compressing the intermediate data. For example, if the data format of the print data accepted by the printer 2 is PDF and the general-purpose printing program 41 generates intermediate data by compressing image data as XPS data, the auxiliary program 42 converts the intermediate data into PDF data including the compressed image data and generates print data.

[0060] 2, the auxiliary program 42 passes the generated print data to the general-purpose printing program 41 and instructs the general-purpose printing program 41 to send the print data (B12). The general-purpose printing program 41 sends the print data and print command to the printer 2, for example, using communication in accordance with IPP (B13). The processing of B12, in which the general-purpose printing program 41 sends the generated print data to the printer 2, is an example of a "printing process."

[0061] Note that, for example, if the auxiliary program 42 does not have a rasterization function, it may have the general-purpose printing program 41 rasterize the intermediate data. By having the general-purpose printing program 41 rasterize, the auxiliary program 42 executes fewer processes, resulting in a smaller program size.

[0062] Furthermore, instead of sending print data from the general-purpose print program 41 to the printer 2, the auxiliary program 42 may use, for example, communication according to the MIB, to send a print command instructing the printer to execute printing and the print data to the printer 2. For example, if the print settings include settings related to image processing that can be executed by the printer 2, such as accumulated print settings or a password, the auxiliary program 42 may generate a print command that also includes information about that processing.

[0063] Printer 2 begins printing based on the received print data (B21). If the received print data is compressed, Printer 2 decompresses the received print data and executes printing based on the decompressed print data. Compressed print data has a small data size, so transfer time can be expected to be shorter. For example, if the received print data is compressed at a higher compression rate than when parameters that prioritize speed and image quality are set during print setup, the transfer time can be shorter than when printing with image quality as the priority, and printing can be expected to be completed in a shorter time.

[0064] If the print data includes parameters for store printing, the printer 2 will not print and will store the print data in memory until it receives a password or other input via the printer 2's operation panel. In the case of store printing, the print data is compressed to reduce its size. Therefore, even if the printer 2 stores print data, the memory load is reduced.

[0065] On the other hand, if the received print data is uncompressed data, the printer 2 prints the received print data without decompressing it. For example, print data in PDF format, print data with the print command type set to text, or print data with parameters that prioritize image quality are likely to be transferred without compression, allowing the printer 2 to print at the quality intended by the user.

[0066] The printer 2 notifies the general-purpose printing program 41 of information indicating the result of the printing execution (B22). After the general-purpose printing program 41 sends the generated print data to the printer 2 in B14, it becomes able to accept a result notification sent from the printer 2.

[0067] When printing is complete, the printer 2 notifies the general-purpose printing program 41 of the completion of printing in B22. In this case, the general-purpose printing program 41 notifies the editing application 43 of the completion of printing and ends the processing. Note that when printing is complete, the printer 2 does not have to notify the general-purpose printing program 41 of the completion of printing. In this case, the general-purpose printing program 41 operates as if printing is complete based on the completion of sending the generated raster data to the printer 2.

[0068] As described above in detail, the auxiliary program 42 of this embodiment determines compression conditions for the compression process that compresses the intermediate data based on at least one of the print settings in the print instruction and the capabilities of the printer 2, and instructs the general-purpose printing program 41 to compress the intermediate data. The auxiliary program 42 acquires, from the general-purpose printing program 41, the intermediate data that has been compressed by the general-purpose printing program 41 in accordance with the compression conditions. The auxiliary program 42 causes the printer 2 to print based on the print data generated from the acquired intermediate data. Such an auxiliary program 42 can utilize the compression function of the general-purpose printing program 41, and compared to when the auxiliary program 42 compresses the intermediate data, the processing of the auxiliary program 42 is simplified and the load on the auxiliary program 42 is reduced.

[0069] In addition, the auxiliary program 42 of this embodiment can determine whether to compress the intermediate data or the compression rate depending on the print settings or the capabilities of the selected printer 2, which allows for optimal control according to the print settings or the capabilities of the selected printer 2.

[0070] It should be noted that the embodiments disclosed in this specification are merely examples and do not limit the present invention in any way. Therefore, the technology disclosed in this specification can naturally be improved and modified in various ways without departing from the spirit and scope of the invention. For example, the device connected to PC1 is not limited to a printer, but may be any device with a printing function, such as a multifunction device, copier, or fax machine. Furthermore, the number of printers connected to PC1 is not limited to the illustrated example, and may be two or more.

[0071] Furthermore, if the user changes the default printer from another printer to printer 2 via the OS 21 after the print setting screen is displayed by the general-purpose print program 41, the general-purpose print program 41 may also start the auxiliary program 42. Furthermore, the auxiliary program 42 may be started not only when printing is selected, but also when printer 2 is selected as a device setting, for example. Even in these cases, the auxiliary program 42 may be able to execute a procedure for determining and specifying compression conditions.

[0072] In addition, in each embodiment, only the printing operation is described in detail as the operation of the auxiliary program 42, but the auxiliary program 42 may have other roles as well. Furthermore, the program that executes the processing of the above embodiments is not limited to the auxiliary program 42, and may be any program that receives instructions from the OS 21 or the general-purpose print program 41 when printing using the general-purpose print program 41. For example, it may be a print workflow application (Print workflow) whose specifications have been made public by Microsoft.

[0073] Furthermore, the execution timing of the auxiliary program 42 is not limited to the examples of each form. For example, the auxiliary program 42 may be executed in response to an execution instruction directly from the OS 21, or may be a resident auxiliary program 42. If the auxiliary program 42 is resident, it may receive an execution command and perform the above-described operation.

[0074] Furthermore, in any sequence diagram disclosed in each embodiment, the execution order of multiple processes in any multiple steps can be arbitrarily changed or can be executed in parallel as long as no contradiction occurs in the process content.

[0075] The processes disclosed in each aspect may be executed by hardware such as a single CPU, multiple CPUs, or ASIC, or a combination thereof. The processes disclosed in each aspect may be realized in various ways, such as a recording medium on which a program for executing the processes is recorded, or a method. [Explanation of symbols]

[0076] 1 PC 2. Printer 11 CPU 12 Memory

Claims

1. A support program executable by a computer of an information processing device, the support program corresponding to a printer connected to the information processing device, the information processing device being equipped with an operating system having a general-purpose printing program; The support program is installed on the computer. When a print instruction is output from an application program installed in the information processing device, the print instruction instructing the general-purpose print program to print an image on the printer, a determination process for determining compression conditions based on at least one of the print settings in the print instruction and the capabilities of the printer; an instruction process for instructing the general-purpose printing program to perform compression under the compression conditions determined in the determination process; an acquisition process for acquiring intermediate data representing the image to be printed in accordance with the print instruction, the acquisition process acquiring the intermediate data compressed by the general-purpose print program in accordance with the compression conditions instructed in the instruction process; a printing process for causing the printer to perform printing based on print data generated from the intermediate data acquired in the acquisition process; Execute A support program configured to:

2. 2. The support program according to claim 1, In the acquisition process, if the intermediate data includes image data, the intermediate data is acquired by compressing the image data using the general-purpose printing program in accordance with the compression conditions specified in the instruction process. A support program configured to:

3. 2. The support program according to claim 1, The compression conditions determined in the determination process include a first condition indicating whether or not to compress the data, In the acquisition process, if the compression conditions include the first condition indicating that compression is to be performed, the intermediate data compressed by the general-purpose print program is acquired, and if the compression conditions include the first condition indicating that compression is not to be performed, the intermediate data that has not been compressed is acquired. A support program configured to:

4. 4. The support program according to claim 3, In the determination process, when a parameter indicating image quality priority is set in the print settings according to the print instruction, the first condition is determined to be "no compression." A support program configured to:

5. 4. The support program according to claim 3, In the determination process, when a parameter indicating accumulation printing is set in the print settings according to the print instruction, the first condition is determined to be compression. A support program configured to:

6. 4. The support program according to claim 3, In the acquisition process, if the intermediate data includes image data, the intermediate data is acquired by compressing the image data using the general-purpose printing program in accordance with the compression conditions specified in the instruction process; In the determination process, when a parameter indicating that the type of print content is text is set in the print settings in the print instruction, the first condition is determined to be not to compress. A support program configured to:

7. 4. The support program according to claim 3, In the determination process, when the memory capacity of the printer is smaller than a first threshold value, the first condition is determined to be compression. A support program configured to:

8. 4. The support program according to claim 3, In the acquisition process, if the intermediate data includes image data, the intermediate data is acquired by compressing the image data using the general-purpose printing program in accordance with the compression conditions specified in the instruction process; In the determination process, when the format of the print data that can be supported by the printer is PDF, the first condition is determined to be compression. A support program configured to:

9. 9. The support program according to claim 8, In the determination process, when the format of the print data accepted by the printer is raster data, the first condition is determined to be "no compression", In the printing process, when the first condition is determined not to be compressed in the determination process, the print data generated from the intermediate data acquired in the acquisition process is compressed using a compression method compatible with the printer, and a process is performed to cause the printer to print based on the compressed print data. A support program configured to:

10. 2. The support program according to claim 1, the compression conditions determined in the determination process include a second condition indicating a compression ratio; In the acquisition process, if the second condition is included in the compression conditions, the intermediate data compressed by the general-purpose print program in accordance with the compression ratio specified in the second condition is acquired. A support program configured to:

11. 11. The support program according to claim 10, In the determination process, when a parameter indicating priority on image quality is set in the print settings by the print instruction, the second condition is determined to be a first compression ratio, and when a parameter indicating priority on speed is set, the second condition is determined to be a second compression ratio that is higher than the first compression ratio. A support program configured to:

12. 11. The support program according to claim 10, In the determination process, the second condition is determined to be a higher compression ratio as the memory capacity of the printer becomes smaller. A support program configured to:

Citation Information

Patent Citations

  • Support program

    JP2023049478A