Support program and printing system

The support program enhances the scaling function of OS-standard printing programs by enabling printers to execute user-specified enlargement or reduction processes, effectively utilizing printer capabilities for improved printing quality and efficiency.

JP2025174467APending Publication Date: 2025-11-28BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024080864
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-17
Publication Date
2025-11-28

AI Technical Summary

Technical Problem

The OS-standard general-purpose printing program does not adequately support the scaling function, leading to underutilization of a printer's capabilities for image enlargement or reduction.

Method used

A support program that enhances the scaling function by allowing the printer to execute specific enlargement or reduction processes based on user-specified parameters, communicated through a user interface and associated with print data.

Benefits of technology

This solution effectively utilizes the printer's capabilities for image scaling, ensuring higher quality and efficiency in printing operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025174467000001_ABST
    Figure 2025174467000001_ABST
Patent Text Reader

Abstract

To provide a technique capable of effectively utilizing capability of a printer when causing the printer to print an enlarged or reduced image via an OS-standard generic printing program.SOLUTION: An auxiliary program 42 uses a CPU 11 of a PC 1 to cause a detailed setting screen 60 for accepting printing settings used for printing by a printer 2 to be displayed using a user interface 13 of the PC 1, and the detailed setting screen 60 can accept specific parameters that can be designated in a first enlargement / reduction process relating to enlargement or reduction of an image to be printed by the printer 2. Furthermore, if there is a print instruction output by an editing application 43 to a generic printing program 41 to cause the printer 2 to print the image, the auxiliary program 42 performs processing for causing the printer 2 to perform printing based on print data indicating the image to be printed by the print instruction, and informs the printer 2 of instruction information corresponding to the designated specific parameter.SELECTED DRAWING: Figure 1
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 and a printing system that support 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 print program that is standard for an OS is Patent Document 1. Patent Document 1 discloses a support program that supports a general-purpose print program, which accepts a setting of an arbitrary magnification for enlargement or reduction, executes a scaling process for enlarging or reducing an image to be printed, and transmits print data representing the enlarged or reduced image to a printer. [Prior art documents] [Patent documents]

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

[0005] Because the OS-standard general-purpose printing program does not adequately support the scaling function, which is the function for enlarging or reducing the image to be printed, a configuration that enhances the scaling function using a support program, such as the technology disclosed in Patent Document 1, is conceivable. However, printers may have a scaling function. In such cases, if the support program executes the scaling process, the printer's capabilities will not be utilized effectively. Using the printer's own functions may be faster and of higher quality, so there is room for improvement. [Means for solving the problem]

[0006] A support program developed for the purpose of solving the above-mentioned problems is executable by a computer of an information processing device, corresponds to a printer connected to the information processing device, and supports a general-purpose printing program possessed by an operating system of the information processing device, and is configured to cause the computer to execute a display process that displays, using a user interface of the information processing device, a setting screen that accepts print settings to be used for printing on the printer, the setting screen includes setting items related to enlargement or reduction of an image to be printed, and the setting screen is capable of accepting specific parameters that can be specified in a first enlargement or reduction process related to the enlargement or reduction of the image to be printed by the printer, and when a print instruction is output from an application program incorporated in the information processing device to the general-purpose printing program, the print instruction causes the printer to print based on print data indicating the image to be printed according to the print instruction, and in the print process, when the specific parameter is specified in the print settings of the print instruction, the enlargement or reduction instruction corresponding to the specified specific parameter is associated with the print data and notified to the printer.

[0007] When a print instruction is received specifying specific parameters that can be specified in the first enlargement / reduction process by the printer, the support program disclosed in this specification associates the specific parameters with the print data and notifies the printer, so that the printer that receives the notification can use its functions to execute the first enlargement / reduction process according to the specific parameters.

[0008] An information processing device incorporating the above support program, a computer-readable storage medium storing the support program, a control method for realizing the functions of the support program, and a printing system including the support program and a printer are also novel and useful. [Effects of the Invention]

[0009] The technology disclosed in this specification realizes a technology that can effectively utilize the capabilities of a printer when the printer is made to print an enlarged or reduced image via a general-purpose print program that is standard for the OS. [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 procedure for printer selection and detailed setting. [Figure 3] FIG. 10 is an explanatory diagram showing an example of a detailed setting screen. [Figure 4] FIG. 10 is a sequence diagram illustrating an example of a printing execution procedure. [Figure 5] 10 is a flowchart illustrating an example of a procedure for intermediate data editing processing. DETAILED DESCRIPTION OF THE INVENTION

[0011] Hereinafter, a printing system including a personal computer (hereinafter referred to as "PC") that uses the support program of the present embodiment and a printer connected to the PC will be described in detail with reference to the accompanying drawings. This specification discloses the support program executed on the PC.

[0012] As shown in FIG. 1, the printing system 100 of this embodiment includes a PC 1 and a printer 2. As shown in FIG. 1, the PC 1 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 general 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, for example, as a work area when executing various programs. A buffer provided in the CPU 11 is also an example of the memory 12. Note that the example of 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, for example, a CD-ROM, DVD-ROM, etc.

[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 include 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 include 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 stores an operating system (hereinafter referred to as "OS") 21 including a general-purpose print 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 with 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 enable 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 the print target in a print instruction output from various application programs based on a user's 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 an application 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] The printer 2 of this embodiment has the function of enlarging or reducing an image. When the printer 2 receives a scaling instruction to enlarge or reduce an image in association with a print job received from an external device such as the PC 1, the printer 2 performs a process to enlarge or reduce the image to be printed, which is indicated in the print data, based on the scaling instruction, before executing printing. The printer 2 can then print the image based on the print data after enlarging or reducing it.

[0027] The printer 2 is capable of handling multiple types of enlargement or reduction processing. Specifically, the printer 2 can accept a paper size specification and enlarge or reduce the image to be printed to fit the specified paper size. The printer 2 can also accept a paper feed tray specification and enlarge or reduce the image to be printed to fit the paper size set in the specified paper feed tray. The printer 2 can also accept a specification of an arbitrary magnification and enlarge or reduce the image to be printed according to the specified magnification.

[0028] The printer 2 may have a function to detect the paper size of the paper loaded in the paper feed tray. In this case, the printer 2 sets the paper size detected in each paper feed tray as the paper size set for that paper feed tray. The printer 2 may not have a function to detect the paper size of the paper loaded in the paper feed tray. The printer 2 may be able to accept a paper size specification for each paper feed tray by a user operation via an operation panel, for example. In this case, the printer 2 sets the paper size specified for each paper feed tray as the paper size set for that paper feed tray.

[0029] Furthermore, the printer 2 may be capable of accepting the designation of a base point within an image when enlarging or reducing the image at an arbitrary magnification. As the base point within the image, the printer 2 may be capable of accepting the designation of, for example, the upper left or center. Furthermore, as the designation of the base point within the image, the printer 2 may be capable of accepting the designation of, for example, the top center, upper right, or bottom center in addition to the upper left or center.

[0030] When an instruction to use the upper left corner of the image as the base point for processing is received, the printer 2 performs the enlargement or reduction of the image data for one line of image data from the upper left corner to the right, and then performs the process line by line from the top line to the bottom. For example, if the image to be printed is enlarged to a size larger than the paper size using the upper left corner as the base point, the upper left corner of the image is placed at the top left corner of the paper, and the parts of the image that extend beyond the paper on the right and bottom edges are not printed.

[0031] On the other hand, when an instruction to use the center of the image as the base point for processing is received, the printer 2 performs the enlargement or reduction process on the image data for one line of image data from the center in both directions, left and right, and then performs the process on each line in both directions, up and down. For example, when the image to be printed is enlarged to a size larger than the paper size using the center as the base point, the center of the image is positioned in the center of the paper, and the parts of the image that extend off the paper to the left, right, top, or bottom are not printed. Note that even when the printer 2 receives an instruction to use the center of the image as the base point for processing, it may perform the enlargement or reduction process in the same way as when the upper left corner of the image is used as the base point for processing, and may move the processed image to align with the center.

[0032] Next, various processing procedures related to printing on the printer 2 in the PC 1 of this embodiment will be described. 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 the various processes. Processing by the CPU 11 also includes hardware control using the API of the OS 21. In this specification, detailed description of the OS 21 will be omitted and the operation of each program will be described. Also, the term "acquire" is used as a concept that does not necessarily require a request.

[0033] First, the selection and setting procedure for accepting the selection of a printer to be used for printing and the specification of print settings on PC 1 will be described with reference to the sequence diagram in FIG. 2. Editing application 43 can create and edit text and images based on user instructions. When the user wants to print the text or image currently being displayed, the user selects print in editing application 43 (A01). The user can select print from a menu of operation items provided in editing application 43, for example.

[0034] Because the general-purpose printing program 41 is incorporated into the OS 21 of the PC 1, when the editing application 43 accepts the selection of printing, it requests the general-purpose printing program 41 of the OS 21 to display a screen for accepting instructions regarding printing (A02). In response to the request, the general-purpose printing program 41 causes the user IF 13 to display a print setting screen (A03). The print setting screen is a screen for accepting user instructions regarding various print settings that can be accepted by the general-purpose printing program 41. The print setting screen may be displayed by the editing application 43. The print setting screen may also have an area for displaying information specified by an auxiliary program corresponding to the selected printer.

[0035] 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 in A01 is received with printer 2 selected as the device to perform printing, the editing application 43 passes information indicating that printer 2 has been selected to the general-purpose print program 41. Then, when an instruction to perform detailed print settings is received with printer 2 selected as the device to perform printing (A11), the general-purpose print program 41 starts the auxiliary program 42 corresponding to printer 2 and passes an instruction to the auxiliary program 42 to start receiving the detailed print settings (A12).

[0036] When the auxiliary program 42 is started in response to the instruction at A12, it acquires the capability information of the printer 2. Specifically, the auxiliary program 42 requests the general-purpose printing program 41 to acquire the capability information (A13). The general-purpose printing program 41 sends a command requesting the capability information to the printer 2 and acquires the capability information from the printer 2 (A14). The general-purpose printing program 41 passes the capability information acquired from the printer 2 to the auxiliary program 42 (A15). This allows the auxiliary program 42 to acquire the capability information of the printer 2. A13 to A15 are an example of a capability acquisition process.

[0037] In A14, the general-purpose printing program 41 communicates with the printer 2 via the OS 21, for example, by communication according to IPP (abbreviation for Internet Printing Protocol). Note that the auxiliary program 42 may obtain capability information directly from the printer 2, for example, by using MIB (abbreviation for Management Information Base), instead of making a request to the general-purpose printing program 41. Also, 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.

[0038] The capability information acquired from the printer 2 includes information on setting items that can be set as print settings, information on parameters that can be set for each setting item, and information indicating whether the printer 2 can enlarge or reduce the image to be printed. Information indicating whether the printer 2 can enlarge or reduce the image to be printed is an example of scaling information. The capability information includes, for example, information on items related to the paper feed trays and output trays available to the printer 2, such as information indicating the selectable paper feed trays and output trays, and information on the paper size and paper type set for each paper feed tray. The capability information may also include information on the print resolution that the printer 2 can support, information on image processing functions that the printer 2 can execute, information indicating the status of the printer 2, such as information on the remaining amount of consumables, information indicating the default print settings, and information indicating whether accumulated printing is possible. The capability information may be used, for example, by the general-purpose printing program 41 or the editing application 43 when displaying a print setting screen or determining whether there is an error in the print settings.

[0039] Based on the acquired capability information, the auxiliary program 42 displays a detailed setting screen that accepts detailed print settings on the display 13a of the user IF 13 (A17). For example, as shown in FIG. 3, the auxiliary program 42 can display a detailed setting screen 60 that includes setting items related to enlargement or reduction on the user IF 13. The detailed setting screen 60 is an example of a setting screen that accepts print settings. A17 is an example of a display process. Note that, since there are many print setting items that can be accepted on the detailed setting screen, the auxiliary program 42 may be able to accept an instruction to switch between items to be selected, for example, using multiple tabs.

[0040] Regardless of whether the printer 2 has the ability to enlarge or reduce an image before printing, the auxiliary program 42 may be able to accept settings related to enlargement or reduction as print settings. For example, the detailed settings screen 60 shown in Fig. 3 includes a radio button 61 for selecting whether to enlarge or reduce an image and, if so, the type of processing, a radio button 62 for selecting the scaling base point, an OK button 63, and a cancel button 64.

[0041] 3, the auxiliary program 42 displays radio buttons 61 that can selectively accept the following processing types: an off setting that does not enlarge or reduce the image; a setting that enlarges or reduces the image to fit a specified paper size (hereinafter referred to as a "fit to paper setting"); a custom size setting that accepts the specification of an arbitrary magnification for enlargement or reduction; and a setting that enlarges or reduces the image to fit the paper size of paper fed from a specified paper feed tray (hereinafter referred to as a "fit to tray setting"). The auxiliary program 42 also displays radio buttons 62 that accept the selection of either the upper left or center as the scaling base point. The auxiliary program 42 may be configured to accept a selection for the radio button 62 only when the custom size setting is selected using the radio button 61.

[0042] In the printing system 100 of this embodiment, the printer 2 has the ability to enlarge or reduce an image before printing, and the settings that can be accepted by the radio buttons 61 and 62 include processes that can be executed by the printer 2. Note that the settings that can be accepted by the radio buttons 61 and 62 may also include processes that cannot be executed by the printer 2. Information about the processes that can be executed by the printer 2 is included in, for example, the capability information.

[0043] The user determines the settings related to enlargement or reduction by operating the displayed detailed setting screen 60, and then determines the print settings by operating the OK button 63 (A21). The print settings determined in A21 include information on parameters set for various items and information related to the settings related to enlargement or reduction. Hereinafter, the information included in the determined print settings and information related to the settings related to enlargement or reduction will be referred to as the "enlargement / reduction setting." The auxiliary program 42 stores the information on the determined print settings and the capability information acquired in A15 in the memory 12 (A23).

[0044] Furthermore, the auxiliary program 42 passes information about the determined print settings to the general-purpose printing program 41 (A25). The auxiliary program 42 may pass the capability information acquired in A15 to the general-purpose printing program 41. The general-purpose printing program 41 may also display the print setting screen again based on the information passed from the auxiliary program 42. The general-purpose printing program 41 may also store the capability information passed from the auxiliary program 42 in the memory 12, or pass it to the editing application 43 and share it with the editing application 43.

[0045] The capability information that the auxiliary program 42 stores in the memory 12 and the capability information that the auxiliary program 42 passes to the general-purpose printing program 41 and the editing application 43 may be information that includes all of the capability information acquired from the printer 2, or may be information that includes only part of the capability information acquired from the printer 2. For example, the capability information passed to the general-purpose printing program 41 and the editing application 43 may be only information related to print settings that can be accepted by the general-purpose printing program 41 and the editing application 43. By passing the capability information of the printer 2 to the general-purpose printing program 41 and the editing application 43 as well, options that match the capabilities of the printer 2 are displayed on the print setting screen so that they can be selected.

[0046] Next, the print execution procedure will be described with reference to the sequence diagram in Fig. 4. After the user decides on the image to be printed and the print settings for printer 2, the user inputs a print execution instruction in editing application 43 (B01). When the user's print execution instruction is received, editing application 43 determines that an execution instruction to cause printer 2 to print the selected image has been received from general-purpose printing program 41, since general-purpose printing program 41 is incorporated into OS 21 of PC 1.

[0047] The editing application 43 outputs the received print instruction information to the general-purpose print program 41 (B02). The general-purpose print program 41 acquires, from the editing application 43, image data indicating the image to be printed and information indicating print settings as the print instruction information.

[0048] The general-purpose printing program 41 generates intermediate data by converting the format of the image data of the image to be printed into the format of intermediate data based on the information acquired from the editing application 43 (B03). The image data included in the editing application 43 is of various types, and the general-purpose printing program 41 converts the image data to be printed into intermediate data suitable for generating print data. Note that if the image data to be printed is data suitable for generating print data, the generation of intermediate data may be omitted and the image data may be used as is as intermediate data.

[0049] Before generating the intermediate data, the general-purpose printing program 41 may launch the auxiliary program 42 corresponding to the designated device, printer 2, to notify the general-purpose printing program 41 that print job processing has begun. When launched from the general-purpose printing program 41, the auxiliary program 42 can pass information indicating various instructions used when generating the intermediate data to the general-purpose printing program 41 as necessary. For example, when the general-purpose printing program 41 generates intermediate data in a size other than the document size, the auxiliary program 42 instructs the general-purpose printing program 41 to generate the intermediate data in the document size in advance.

[0050] After generating the intermediate data, the general-purpose printing program 41 outputs an execution instruction to the auxiliary program 42, thereby starting the auxiliary program 42 (B05). The auxiliary program 42 acquires the intermediate data and print setting information generated by the general-purpose printing program 41, for example, by making a request to the general-purpose printing program 41 (B06).

[0051] The intermediate data acquired in B06 is intermediate data representing an image to be printed, and is intermediate data generated by the general-purpose printing program 41 based on the image data acquired in B02 from the editing application 43. This intermediate data is data representing an image of a size corresponding to the document size set in the editing application 43. The auxiliary program 42 can edit the intermediate data and print setting information received from the general-purpose printing program 41 as necessary.

[0052] If the print settings stored in the memory 12 at A23 in Fig. 2 include a scaling setting other than the off setting (opt: [scaling setting present]), the auxiliary program 42 executes intermediate data editing processing (B11). The procedure for the intermediate data editing processing will be described with reference to the flowchart in Fig. 5. This intermediate data editing processing is executed by the CPU 11 of the PC 1 based on the auxiliary program 42.

[0053] In the intermediate data editing process, the CPU 11 determines whether the scaling settings included in the print settings stored in the memory 12 at A23 in Fig. 2 include parameters that cannot be specified on the printer 2 (S101). The CPU 11 makes the determination in S101 based on the scaling settings included in the print settings stored in the memory 12 at A23 and the capability information acquired at A15 and stored in the memory 12 at A23.

[0054] As described above, the auxiliary program 42 can also accept parameters that cannot be specified on the printer 2 on the detailed setting screen 60. In other words, the scaling settings may include parameters that cannot be specified on the printer 2. For example, if the printer 2 does not have the function to perform scaling with the base point of scaling as the center, parameters that have the base point of scaling as the center cannot be specified on the printer 2. In this case, parameters that have the base point of scaling as the center are an example of extended parameters.

[0055] If it is determined that the scaling settings include parameters that cannot be specified on the printer 2 (S101: YES), the CPU 11 enlarges or reduces the image to be printed, which is represented by the intermediate data, based on the scaling settings (S111). S111 is an example of a second scaling process. For example, if the printer 2 does not have the function of performing scaling with the scaling base point at the center, and the scaling settings include parameters with the scaling base point at the center, the CPU 11 performs scaling based on the parameters using the auxiliary program 42. That is, in S111, the image to be printed, which is represented by the intermediate data, is enlarged or reduced by the auxiliary program 42.

[0056] In this case, the auxiliary program 42 can perform enlargement or reduction with the scaling base point at the center. Even if the printer 2 cannot handle it, if the parameter is compatible with the auxiliary program 42, the parameter can be accepted and executed by the auxiliary program 42, so there is a high degree of freedom in enlargement or reduction.

[0057] On the other hand, if it is determined that the scaling settings do not include parameters that cannot be specified on the printer 2, i.e., that the scaling setting parameters are only parameters that can be specified on the printer 2 (S101: NO), the CPU 11 generates instruction information corresponding to the scaling settings (S113) and temporarily stores the generated instruction information in the memory 12 (S114). This instruction information is, for example, added to the print data in a later procedure and sent to the printer 2. In this case, the auxiliary program 42 does not enlarge or reduce the image to be printed, which is represented by the intermediate data. The parameters that can be specified on the printer 2 are an example of specific parameters.

[0058] The instruction information preferably includes, to the extent that it can be specified by the printer 2, an instruction to fit the paper and the paper size in the case of a setting to fit the paper, an enlargement or reduction rate in the case of a free size setting, and an instruction to fit the tray and information indicating the tray in the case of a setting to fit the tray. The instruction information also preferably includes, to the extent that it can be specified by the printer 2, a base point for scaling. Note that, if the instruction information is added to the intermediate data, the general-purpose printing program 41 can add the instruction information to the print data and send it to the printer 2, and the auxiliary program 42 may add the instruction information to the intermediate data instead of performing the process of step S114.

[0059] After S111 or S114, the CPU 11 ends the intermediate data editing process and returns to the print execution procedure of FIG.

[0060] Returning to the description of the print execution procedure in Fig. 4, the auxiliary program 42 passes the generated intermediate data and print setting information to the general-purpose printing program 41, and requests print data generated based on the intermediate data from the general-purpose printing program 41 (B12). In response, the general-purpose printing program 41 executes necessary processes such as rasterizing the intermediate data to generate print data (B13), and passes the generated print data to the auxiliary program 42 (B14).

[0061] If the instruction information is stored in the memory 12 in S114 of the intermediate data editing process (opt: [instruction information present]), the auxiliary program 42 adds the instruction information to the print data (B15). The instruction information may be incorporated, for example, into the header of the print data. The instruction information added to the print data is an example of a scaling instruction.

[0062] The auxiliary program 42 passes the print data with the instruction information added to the general-purpose print program 41 (B16), thereby instructing the general-purpose print program 41 to send the print data with the instruction information added to the printer 2. As a result, the general-purpose print program 41 sends the print data with the instruction information added to the printer 2 (B17). B15 to B16 are an example of a notification of a resize instruction.

[0063] The instruction information is information indicating an instruction to the printer 2, and is information indicating an instruction to enlarge or reduce the image to be printed, which is indicated by the print data, before printing is executed. If the enlargement / reduction setting includes only parameters that can be specified by the printer 2, the printer 2 can execute the enlargement or reduction based on those parameters.

[0064] If the intermediate data editing process of B11 is not executed, or if the instruction information is not stored in the memory 12 in the intermediate data editing process, the auxiliary program 42 passes the print data without the instruction information to the general-purpose print program 41, thereby instructing the printer 2 not to send the instruction information to the printer 2. In this case, the printer 2 does not perform enlargement or reduction.

[0065] The instruction information may be transmitted to the printer 2 as information associated with the print data, separately from the print data. In this case, the auxiliary program 42 may instruct the general-purpose printing program 41 to transmit the instruction information associated with the print data to the printer 2, separately from the print data. The auxiliary program 42 may also transmit the instruction information associated with the print data to the printer 2 itself. In this case, the instruction information transmitted to the printer 2 is an example of a resize instruction, and the transmission of the instruction information is an example of a notification of a resize instruction.

[0066] When instruction information is sent to the printer 2, the intermediate data passed to the general-purpose printing program 41 is data that has not been enlarged or reduced. Therefore, the print data generated by the general-purpose printing program 41 is print data that corresponds to the document size set by the editing application 43. When the printer 2 is made to enlarge or reduce the image, the general-purpose printing program 41 and the auxiliary program 42 do not enlarge or reduce the image, so duplicated processing can be avoided.

[0067] It should be noted that the auxiliary program 42 may perform rasterization instead of the general-purpose printing program 41 to generate print data. In this case, the auxiliary program 42 may perform rasterization based on the intermediate data to generate print data, add instruction information to the print data, and pass it to the general-purpose printing program 41 to instruct transmission to the printer 2. The auxiliary program 42 may also process the print data generated by the general-purpose printing program 41 or the auxiliary program 42 as necessary. It should be noted that the print data transmitted to the printer 2 only needs to be in a format that can be printed by the printer 2.

[0068] Generating print data by rasterizing with the auxiliary program 42 offers greater flexibility than generating print data with the general-purpose print program 41, and is more likely to generate print data suitable for printing on the printer 2. On the other hand, generating print data with the general-purpose print program 41 requires less processing by the auxiliary program 42, and the program size of the auxiliary program 42 can be reduced.

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

[0070] If the received print job contains instruction information (opt: [instruction information present]), the printer 2 executes a scaling process (B21). B21 is an example of a first scaling process. In this scaling process, the printer 2 enlarges or reduces the image to be printed, which is indicated by the print data of the print job received in B14, based on the instruction information. Note that the printer 2 also executes the scaling process of B21 when it receives instruction information associated with the print job and separately from the print job.

[0071] For example, when instruction information including parameters for setting to fit the paper is received, the printer 2 determines the paper size of the paper to be printed on, then determines the image size to match that paper size, and enlarges or reduces the image to be printed indicated by the print data to the determined image size.

[0072] Furthermore, when instruction information including parameters for setting to match the tray is received, the printer 2 determines the paper feed tray, then determines the image size to match the paper size of the paper set in that paper feed tray, and enlarges or reduces the image to be printed indicated by the print data to the determined image size.

[0073] Furthermore, when instruction information including a parameter for freely setting a size is received, the printer 2 determines the image size based on the magnification specified in the instruction information, and enlarges or reduces the image to be printed indicated by the print data to the determined image size. Because the printer 2 can enlarge or reduce the image to be printed, the load on the auxiliary program 42 is small and there is a high degree of freedom in enlarging or reducing the image.

[0074] In this embodiment, if the printer 2 can perform scaling processing whether the print data is raster data or vector data, the print data sent to the printer 2 may be raster data or vector data. When the auxiliary program 42 causes the printer 2 to perform scaling processing, the auxiliary program 42 may instruct the general-purpose print program 41 to generate print data that can be processed by the printer 2.

[0075] After B21, or if the received print job does not contain instruction information, the printer 2 executes printing (B22). If the printer 2 executed the scaling process in B21, it prints based on the print data indicating the image after the scaling process. If the scaling process in B21 was not executed, the printer 2 prints based on the print data of the print job received in B14. In other words, the instruction output to the general-purpose print program 41 in B16 is an example of a process for causing the printer 2 to print based on the print data, and is an example of a print process.

[0076] As explained in detail above, when a print instruction is received specifying specific parameters that can be specified in the enlargement or reduction process by the printer 2, the auxiliary program 42 of this embodiment associates the specific parameters with the print data and notifies the printer 2. As a result, the printer 2 that receives the notification can execute the enlargement or reduction process in accordance with the specific parameters.

[0077] 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, a copier, or a fax machine. Furthermore, the number of printers connected to PC1 is not limited to the illustrated example, and may be two or more.

[0078] Furthermore, for example, the screens displayed on the user IF 13 are merely examples and are not limited to the examples shown in the drawings. Furthermore, the text, object shapes, backgrounds, etc. displayed on each of the screens shown in the drawings may be of any type. For example, if a paper size is not set in the paper feed tray, the auxiliary program 42 may make it impossible to select a setting that matches the tray.

[0079] In the embodiment, the detailed settings screen 60 (see FIG. 3) includes radio buttons 61 that allow selection from an off setting, a fit-to-paper setting, a custom size setting, and a fit-to-tray setting, but the options are not limited to these. The auxiliary program 42 may display a detailed settings screen that includes only some of these options, or may display a detailed settings screen that includes other options.

[0080] Furthermore, in the embodiment, the auxiliary program 42 executes enlargement or reduction processing that cannot be handled by the printer 2, but this need not be the case. The auxiliary program 42 may not accept instructions for enlargement or reduction processing that cannot be handled by the printer 2. In this case, steps S101 and S111 of the intermediate data editing process (see FIG. 5) are unnecessary, and only steps S113 and S114 may be performed.

[0081] Furthermore, in the embodiment, if the enlargement / reduction setting is incompatible with the printer 2, the auxiliary program 42 processes the intermediate data in the intermediate data editing process, but the enlargement or reduction process may be performed after the print data is generated by the general-purpose print program 41. In that case, the auxiliary program 42 may not execute the intermediate data editing process, but may perform enlargement or reduction of the image to be printed on the print data acquired in B14 of the print execution procedure in FIG.

[0082] 2, the auxiliary program 42 stores the acquired capability information of the printer 2, but it does not have to store the information. However, if the acquired capability information is stored, the auxiliary program 42 can easily use the capability information by reading it from the memory 12 and using it, provided that there is no possibility that the capabilities have changed.

[0083] 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 device settings, for example. Even in these cases, the auxiliary program 42 may be able to execute a procedure for updating the capability information.

[0084] In the 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. The program that executes the processing of this embodiment 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.

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

[0086] Furthermore, in any flowchart disclosed in the embodiments, the execution order of multiple processes in any multiple steps can be changed or they can be executed in parallel as long as no contradiction occurs in the processing content.

[0087] The processes disclosed in the embodiments may be executed by hardware such as a single CPU, multiple CPUs, or ASIC, or a combination thereof. The processes disclosed in the embodiments 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]

[0088] 1 PC 2. Printer 11 CPU 13 User Interface 100 Printing Systems

Claims

1. A support program that can be executed by a computer of an information processing device, corresponds to a printer connected to the information processing device, and supports a general-purpose printing program included in an operating system of the information processing device, The computer, a display process is executed to display, using a user interface of the information processing device, a setting screen for accepting print settings to be used for printing by the printer, the setting screen including setting items related to enlargement or reduction of an image to be printed, and specific parameters that can be designated in a first enlargement / reduction process related to the enlargement or reduction of the image to be printed by the printer can be accepted on the setting screen; The computer further comprises: executes a print process that performs processing for making the printer print based on print data indicating the image to be printed in accordance with the print instruction when the print instruction is output from an application program installed in the information processing device and the general-purpose print program is instructed to make the printer print an image; In the printing process, if the specific parameter is specified in the print settings of the print instruction, a scaling instruction corresponding to the specified specific parameter is notified to the printer in association with the print data. A support program configured to:

2. 2. The support program according to claim 1, The computer, executes a capability acquisition process to acquire capability information indicating the capability of the printer, the capability information including scaling information indicating whether the first scaling process can be performed by the printer; The computer further comprises: When the capability information including the scaling information indicating that the first scaling process is possible is acquired in the capability acquisition process, the specific parameters are accepted on the setting screen displayed in the display process. A support program configured to:

3. 2. The support program according to claim 1, In the printing process, when the specific parameter is specified in the print settings of the print instruction, the process of causing the printer to print based on the print data transmits the print data indicating the image to be printed in accordance with the print instruction, the print data corresponding to the document size set in the application program, to the printer. A support program configured to:

4. 2. The support program according to claim 1, In the display process, the setting screen capable of accepting designation of a paper size as the specific parameter is displayed, and the first enlargement / reduction process executable by the printer includes a process of enlarging or reducing the image to be printed to fit the designated paper size. A support program configured to:

5. 2. The support program according to claim 1, In the display process, the setting screen capable of accepting designation of a paper feed tray as the specific parameter is displayed, and the first enlargement / reduction process executable by the printer includes a process of enlarging or reducing the image to be printed to fit the paper size set in the designated paper feed tray. A support program configured to:

6. 2. The support program according to claim 1, In the display process, the setting screen capable of accepting designation of an arbitrary magnification as the specific parameter is displayed, and the first enlargement / reduction process executable by the printer includes a process of enlarging or reducing the image to be printed in accordance with the designated magnification. A support program configured to:

7. 7. The support program according to claim 6, In the display process, the setting screen capable of accepting designation of an arbitrary magnification and a base point within the image for enlarging or reducing the image as the specific parameters is displayed, and the first enlargement / reduction process executable by the printer includes a process of enlarging or reducing the image to be printed in accordance with the designated magnification and base point. A support program configured to:

8. 2. The support program according to claim 1, In the display process, the setting screen capable of accepting selection of one of the types of the first enlargement / reduction process that can be supported by the printer is displayed, there are a plurality of types of the first enlargement / reduction process that can be supported by the printer, and parameters that can be specified differ for each type of the first enlargement / reduction process, and the specific parameters that can be specified for the selected type of the first enlargement / reduction process are accepted via the setting screen; In the printing process, if the specific parameter is specified in the print settings of the print instruction, the enlargement / reduction instruction corresponding to the specified specific parameter, which corresponds to the type of the first enlargement / reduction process selected on the setting screen, is notified to the printer in association with the print data. A support program configured to:

9. 2. The support program according to claim 1, The computer, a second enlargement / reduction process can be executed to enlarge or reduce the image to be printed in response to the print instruction, and an extension parameter that is a parameter that cannot be designated in the first enlargement / reduction process on the printer but can be designated in the second enlargement / reduction process can be accepted on the setting screen; The computer further comprises: When the print instruction is received and the expansion parameter is specified in the print settings of the print instruction, the second enlargement / reduction process is executed, and in the print process, a process is performed to cause the printer to print based on print data indicating an image enlarged or reduced by the second enlargement / reduction process. A support program configured to:

10. A printing system including an information processing device and a printer connected to the information processing device, the information processing device has a support program that supports a general-purpose printing program included in an operating system, the printer is capable of executing a first enlargement / reduction process for enlarging or reducing an image to be printed; The support program is installed in the computer of the information processing device. a display process is executed to display, using a user interface of the information processing device, a setting screen for accepting print settings to be used for printing by the printer, the setting screen including setting items related to enlargement or reduction of an image to be printed, and specific parameters that can be designated in the first enlargement / reduction process are made acceptable on the setting screen; The support program further includes: executes a print process for performing a process for transmitting print data indicating the image to be printed by the print command to the printer when the print command is output from an application program installed in the information processing device and the general-purpose print program is instructed to print an image; In the printing process, if the specific parameter is specified in the print settings of the print instruction, a scaling instruction corresponding to the specified specific parameter is associated with the print data and notified to the printer; The printer When the support program receives the print data associated with the enlargement / reduction instruction, the support program determines an image size based on the enlargement / reduction instruction, and executes the first enlargement / reduction process to enlarge or reduce the image shown in the print data to the determined image size, and performs printing based on the enlarged or reduced image. A printing system configured to:

Citation Information

Patent Citations

  • Support program, information processing device, and printing method

    JP2023017876A