WO2021059649A1 - サポートプログラム、情報処理装置、および印刷方法 - Google Patents

サポートプログラム、情報処理装置、および印刷方法 Download PDF

Info

Publication number
WO2021059649A1
WO2021059649A1 PCT/JP2020/025799 JP2020025799W WO2021059649A1 WO 2021059649 A1 WO2021059649 A1 WO 2021059649A1 JP 2020025799 W JP2020025799 W JP 2020025799W WO 2021059649 A1 WO2021059649 A1 WO 2021059649A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
printer
printing
print
information processing
Prior art date
Application number
PCT/JP2020/025799
Other languages
English (en)
French (fr)
Inventor
亮太 垣鍔
Original Assignee
ブラザー工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ブラザー工業株式会社 filed Critical ブラザー工業株式会社
Priority to CN202080066549.4A priority Critical patent/CN114503069B/zh
Priority to US17/211,195 priority patent/US11244213B2/en
Publication of WO2021059649A1 publication Critical patent/WO2021059649A1/ja
Priority to US17/591,224 priority patent/US11687751B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1805Receiving printer configuration commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1231Device related settings, e.g. IP address, Name, Identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1806Receiving job control commands
    • G06K15/1809Receiving job control commands relating to the printing process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1835Transforming generic data
    • G06K15/1836Rasterization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/23Reproducing arrangements
    • H04N1/2307Circuits or arrangements for the control thereof, e.g. using a programmed control device, according to a measured quantity
    • H04N1/2369Selecting a particular reproducing mode from amongst a plurality of modes, e.g. paper saving or normal, or simplex or duplex
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/125Page layout or assigning input pages onto output media, e.g. imposition

Definitions

  • the technical fields disclosed herein relate to support programs, information processing devices, and printing methods that support printer control.
  • a printer driver sets double-sided printing for printing on both the front side and the back side of one sheet. It is known that the job is input to the printer.
  • This specification discloses a technique for causing a printer to perform double-sided printing in an information processing device incorporating an OS standard printing program.
  • the support program made for the purpose of solving the above-mentioned problems is a support program that can be executed by a computer of the information processing device and corresponds to a printer connected to the information processing device.
  • the general-purpose printing program gives the intermediate data for printing a plurality of pages of images related to the job and the general-purpose printing based on the intermediate data for printing.
  • Rotation that receives the print data rasterized by the print program and one of the first data, and performs image processing to rotate the image of the page that needs to be rotated 180 degrees with respect to the received first data.
  • the processing and the second data which is the other of the printing intermediate data and the printing data, are received from the general-purpose printing program, and the processing order is arranged from the page order to the printing order according to the sheet transport mode of the printer. Sorting processing to be rearranged, and output processing to output the print data related to the job after the rotation processing and the sorting processing so as to be transmitted from the information processing apparatus to the printer as a transmission destination. It is characterized by executing.
  • the support program having the above configuration has a print instruction in the general-purpose print program (OS), and when the printer is made to execute double-sided printing in a job based on the print instruction, the support program rotates to an intermediate data for printing or an image of print data. And rearrangement is performed so that the printing order is set according to the transport mode of the sheets of the printer. This makes it possible to support double-sided printing even if the general-purpose printing program does not support double-sided printing.
  • OS general-purpose print program
  • Another aspect of the present invention is a support program that can be executed by a computer of the information processing device and corresponds to a printer connected to the information processing device, and is an application program incorporated in the information processing device in the computer.
  • a print instruction output from the computer for a general-purpose print program preliminarily incorporated in the operating system of the information processing apparatus to cause the printer to print an image, and a job based on the print instruction.
  • intermediate data for printing a plurality of pages of images related to the job is received from the general-purpose printing program, and the pages that need to be rotated with respect to the received intermediate data for printing.
  • a rotation process for rotating the image by 180 degrees and a rearrangement process for rearranging the processing order from the page order to the print order according to the sheet transport mode of the printer are executed, and further, the rotation process is performed.
  • the printing intermediate data that has undergone the rotation process and the sort process is used for general purposes so that the print data for the job that has undergone the sort process is transmitted from the information processing apparatus to the printer as a transmission destination.
  • the feature is that the output process to be passed to the print program is executed.
  • Another aspect of the present invention is a support program that can be executed by a computer of the information processing device and corresponds to a printer connected to the information processing device, and is an application program incorporated in the information processing device in the computer.
  • print data rasterized by the general-purpose printing program is received from the general-purpose printing program, and the image of a page that needs to be rotated is 180 with respect to the received print data.
  • a rotation process for performing image processing to rotate the data and a sorting process for rearranging the processing order from the page order to the printing order according to the sheet transport mode of the printer are executed, and further, the rotation process and the sorting process are performed. It is characterized in that an output process of outputting the print data related to the job that has undergone the above process so as to be transmitted from the information processing apparatus to the printer as a transmission destination is executed.
  • Another aspect of the present invention is a support program that can be executed by a computer of the information processing device and corresponds to a printer connected to the information processing device, and is an application program incorporated in the information processing device in the computer.
  • a print instruction output from the computer for a general-purpose print program preliminarily incorporated in the operating system of the information processing apparatus to cause the printer to print an image, and a job based on the print instruction.
  • an acquisition process for acquiring intermediate data for printing of a plurality of pages of images related to the job from the general-purpose printing program and the intermediate data for printing acquired in the acquisition process are performed.
  • the intermediate data or the print data is subjected to the sorting process of rearranging the processing order from the page order to the printing order according to the sheet transport mode of the printer, the rotation process and the sorting process, the job is executed. It is characterized in that the output process of outputting the print data is executed so that the print data is transmitted from the information processing apparatus to the printer as a transmission destination.
  • control method for realizing the function of the support program, and the storage medium and information processing device that can be read by the computer that stores the support program are also new and useful.
  • PC personal computer
  • the PC 1 of the present embodiment includes, for example, a controller 10, a user interface (hereinafter referred to as “UI”) 20, and a communication interface (hereinafter referred to as “communication IF”) 30. ing.
  • the UI 20 and the communication IF 30 are electrically connected to the controller 10.
  • PC1 is an example of an information processing device.
  • the printer 2 is a device having a printing function, and is connected to the PC 1 via local communication or network communication.
  • the printer 2 of this embodiment has a function of automatically performing double-sided printing. Double-sided printing will be described later.
  • the UI 20 includes hardware that displays various displays and accepts user's instruction input.
  • the UI 20 may be a touch panel having both a display function and an input reception function, or may be a combination of a display having a display function and a keyboard, a mouse, or the like having an input reception function.
  • the communication IF30 includes hardware for communicating with an external device such as a printer 2 and hardware for accessing the Internet.
  • the communication IF 30 may include a plurality of interfaces having different communication methods. Communication methods include, for example, network communication and USB communication. Further, it may be wired communication or wireless communication.
  • the controller 10 includes a CPU 11 and a memory 12.
  • the CPU 11 is an example of a computer.
  • the memory 12 includes a ROM, a RAM, and a non-volatile memory, and stores programs such as various application programs (hereinafter referred to as “applications”) and various data.
  • the CPU 11 executes various processes according to the program read from the memory 12 and based on the user's instruction.
  • the controller 10 in FIG. 1 is a general term for hardware and software used for controlling the PC 1, and does not necessarily represent a single hardware that actually exists in the PC 1.
  • An example of the memory 12 may be a storage medium that can be read by a computer.
  • a computer-readable storage medium is a non-transitory medium.
  • the non-transitory medium also includes a recording medium such as a CD-ROM or a DVD-ROM.
  • the non-transitory medium is also a tangible medium.
  • an electric signal that carries a program downloaded from a server on the Internet is a computer-readable signal medium, which is a kind of computer-readable medium, but is a storage that can be read by a non-transitory computer. Not included in the medium.
  • the memory 12 stores an 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.
  • OS21 is, for example, Microsoft Windows®, MacOS®, Linux®.
  • various data including information of the connected printer 2 and various programs such as a browser are stored in the memory 12.
  • the general-purpose printing program 41 is an OS standard program for executing printing on various printers such as the printer 2 according to an instruction from the PC 1.
  • the general-purpose printing program 41 of the present embodiment is a program including a function of generating print data used for printing by a corresponding printer based on image data to be printed.
  • the general-purpose printing program 41 supports a function that can be commonly used by a plurality of types of printers provided by various printer vendors. It is difficult for the general-purpose printing program 41 to support all the functions unique to various printers, and the supporting functions are limited to general-purpose ones.
  • the auxiliary program 42 is a program or a group of programs that executes processing based on an instruction from the OS 21 when the general-purpose printing program 41 is started, and is an application that supports 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.
  • the general-purpose printing program 41 is used to receive an instruction to cause the printer 2 to perform printing
  • the general-purpose program 42 is general-purpose. It is started from the print program 41.
  • the auxiliary program 42 is called, for example, a hardware support application (abbreviation, HSA).
  • the auxiliary program 42 receives a plurality of types of instructions from the general-purpose printing program 41, and executes various processes based on the received instructions.
  • the auxiliary program 42 can execute different processes depending on the content of the execution instruction from the general-purpose printing program 41.
  • the auxiliary program 42 may be a combination of a plurality of programs, each of which receives an execution instruction, or may be a single program that can execute different processes according to the instruction.
  • the auxiliary program may be a program prepared for each printer type by the printer vendor. For example, an auxiliary program for an inkjet printer and an auxiliary program for a laser printer are prepared.
  • the printer vendor registers the auxiliary program on the platform provided by the OS21 vendor according to the procedure specified by the OS21 vendor.
  • the OS21 downloads the auxiliary program from the server in which the auxiliary program is stored and incorporates the auxiliary program into the PC1.
  • the OS 21 associates the identification information of the incorporated auxiliary program with the printer information of the newly connected printer and stores it in the memory 12.
  • auxiliary database 44 is incorporated in a storage area for the auxiliary program 42 prepared in the memory 12 in association with the auxiliary program 42.
  • auxiliary DB 44 is a database that stores the model name, the transport method, and the sorting necessity information in association with each other for all the models that the auxiliary program 42 can handle.
  • the model name indicates the printer model.
  • the model name is an example of model information.
  • the transport method indicates a method in which the transport mechanism of the printer transports sheets. As the transfer method, for example, a one-sheet transfer method, a two-sheet simultaneous transfer method, and an interleave method are stored. These transport methods will be described later.
  • the transport method is an example of a transport mode.
  • the sort necessity information is information indicating the necessity of sorting the processing order, which is the order in which the images on the page are processed.
  • the sorting necessity information indicates that, for example, the processing order needs to be rearranged for a printer model in which the memory capacity is small and the printing order cannot be changed by the printer itself to realize double-sided printing. "Required" is stored in association with the model name.
  • the sorting necessity information indicates, for example, that it is not necessary to sort the processing order for a model that has a large memory capacity and can realize double-sided printing by changing the printing order by the printer itself. Is stored in association with the
  • the editing application 43 is, for example, an application for creating and editing image data and document data.
  • the editing application 43 is, for example, Microsoft Word (registered trademark) or PowerPoint (registered trademark).
  • the editing application 43 may be an application provided by a vendor such as the printer 2.
  • the editing application 43 accepts a user operation including an instruction to cause the printer 2 to perform a predetermined operation. Specifically, the editing application 43 receives, for example, a printing instruction for the printer 2 to execute printing via the UI 20.
  • each processing step of the processing and the flowchart in the embodiment basically indicates the processing of the CPU 11 according to the instruction described in the program such as the auxiliary program 42. That is, the processing of "judgment”, “extraction”, “selection”, “calculation”, “decision”, “specification”, “acquisition”, “acceptance”, “control”, etc. in the following description is the processing of the CPU 11. Represents.
  • the processing by the CPU 11 also includes hardware control using the API of the OS 21.
  • the operation of each program will be described by omitting the detailed description of the OS 21. That is, in the following description, the description to the effect that "program B controls hardware C” may refer to “program B controls hardware C using the API of OS21".
  • the processing of the CPU 11 according to the instructions described in the program may be described in abbreviated terms.
  • the program may be omitted, such as "CPU 11 performs”.
  • the processing of the CPU 11 according to the instruction described in the program may be described by a wording that omits the CPU, such as "program A performs”.
  • acquisition is used as a concept that does not require a request. That is, the process of receiving data without the CPU 11 requesting is also included in the concept of "the CPU 11 acquires the data".
  • data in the present specification is represented by a bit string that can be read by a computer. Then, data having the same substantial meaning and contents but different formats are treated as the same data. The same applies to "information” in the present specification.
  • requesting and “instructing” are concepts indicating that information indicating that a request is being made or information indicating that an instruction is being given is output to the other party. In addition, the information indicating that the request is made or the information indicating that the instruction is given is simply described as "request” or "instruction”.
  • the process of determining whether or not the information A indicates that the information A is the matter B by the CPU 11 is conceptually described as "determining whether or not the information A is the matter B from the information A". There is.
  • the process of determining whether the information A indicates that the information A is the matter B or the matter C by the CPU 11 is "determined from the information A whether the information A is the matter B or the matter C.” It may be described conceptually as.
  • Double-sided printing is a printing mode in which printing is performed on two sides, one on the front side and the other on the back side of the sheet.
  • the printer 2 conveys the sheet pulled out from the paper feed tray along the printing path, and prints an image on the back surface of the sheet (the lower surface when stored in the paper feed tray) by the printing unit.
  • Print The printer reverses the transport direction of the sheet and prints an image on the front surface of the sheet before the sheet printed on the back surface is ejected to the output tray.
  • the sheet ejected to the output tray is printed on both sides with the sheet inverted upside down by reversing the transport direction, so that the image printed on the front surface is printed on the back surface. It becomes a state inverted by 180 °.
  • the one-sheet transfer method is a transfer method used in a printing procedure for starting printing on the next sheet after printing on both sides of one sheet.
  • the printer feeds the next sheet after printing on both sides of one sheet is completed. That is, in the one-sheet transfer method, the printer does not transfer another sheet along the printing path while one sheet is being conveyed.
  • the printer prints from the back surface (second page) first, and prints the front surface (first page).
  • one side of the first sheet (page 2) ⁇ the other side of the first sheet (page 1) ⁇ one side of the second sheet (page 4). ⁇ Perform double-sided printing in the order of the other side of the second sheet (page 3).
  • the two-sheet simultaneous transfer method is used in a printing procedure for starting printing on the next sheet after printing on one side (back side) of the sheet and before starting printing on the other side (front side). It is a transport method.
  • double-sided printing by the two-sheet simultaneous transfer method the printer transfers the first sheet to the printing path and prints the back surface of the sheet. Then, the printer reverses the transport direction of the first sheet and prints the back surface of the second sheet before printing the front surface of the first sheet. The printer then prints the surface of the first sheet and ejects the first sheet to the output tray. After that, the printer prints the surface of the second sheet and ejects the second sheet to the output tray in the same manner as the first sheet. Therefore, in the two-sheet simultaneous transfer method, there is a timing in which two sheets that have not been printed are transferred at the same time.
  • the printer prints on the next third sheet after the double-sided printing on both the first sheet and the second sheet is completed. Specifically, when the printer performs double-sided printing by transporting two sheets at the same time, one side of the first sheet (second page) ⁇ one side of the second sheet (fourth page) ⁇ 1 Printing is executed in the order of the other side of the first sheet (first page) ⁇ the other side of the second sheet (third page) ⁇ one side of the third sheet (sixth page).
  • the printer may use, for example, one side of the first sheet (second page) ⁇ one side of the second sheet (fourth page) ⁇ the other side of the first sheet. (1st page) ⁇ 3rd one side (6th page) ⁇ 2nd other side (3rd page) ⁇ 4th one side (8th page) ⁇ 3rd other side Printing is executed in the order of the side (page 5).
  • the PC 1 of this embodiment can realize double-sided printing on the printer 2 by using the auxiliary program 42.
  • the general-purpose printing program 41 of this embodiment does not have to support double-sided printing.
  • the editing application 43 receives the designation of the image to be printed and the input of the instruction for printing execution via the UI 20 (arrow A).
  • the editing application 43 receives an instruction to set an image to be printed, for example, a document edited by the editing application 43 or a photo read by the editing application 43.
  • the editing application 43 that has received the print instruction passes a print execution notification indicating the content of the received print instruction to the OS 21.
  • the operation of OS 21 is omitted.
  • the OS 21 executes the general-purpose print program 41 and passes the print execution notification to the general-purpose print program 41 (arrow B).
  • the general-purpose print program 41 includes various information included in the print instruction, for example, information indicating a printer to be printed, information indicating print settings set by the editing application 43, and image data to be printed. Information indicating that can be obtained.
  • the general-purpose printing program 41 identifies a printer designated as a device for executing printing based on the information included in the print execution notification. If the designated printer is the printer 2, since the auxiliary program 42 corresponding to the printer 2 is stored in the memory 12, the general-purpose print program 41 outputs an execution command for processing of the auxiliary program 42 and assists.
  • the program 42 is operated (arrow C). That is, when the general-purpose print program 41 detects the print execution notification, the general-purpose print program 41 outputs an execution command to the auxiliary program 42.
  • the auxiliary program 42 executes various processes based on the content of the execution instruction from the general-purpose print program 41.
  • the general-purpose print program 41 passes the print settings received by the editing application 43 to the auxiliary program 42, and requests verification of the print settings.
  • the auxiliary program 42 verifies the print settings based on the execution command of arrow C (arrow D). The auxiliary program 42 determines whether or not the received print setting conforms to the function of the printer 2, and the print setting that does not conform, for example, a paper having a size not set in the printer 2 is selected, is set. If it is included, disable its print settings.
  • the auxiliary program 42 of this embodiment can accept changes in print settings and additional settings during the execution of the process indicated by the arrow D.
  • a case where the auxiliary program 42 accepts the setting of double-sided printing by arrow D will be described. That is, the print setting passed by the arrow C does not include the double-sided printing setting, and the print setting at the end of the processing of the arrow D includes the double-sided printing setting.
  • the double-sided printing setting may be included in the print setting passed to the auxiliary program 42 in the process of the arrow C.
  • the printing settings including the double-sided printing setting may be passed to the auxiliary program 42 by the arrow C.
  • the general-purpose printing program 41 does not support double-sided printing, for example, from the editing application 43 to the auxiliary program 42 via a storage area that can be commonly used by the editing application 43 and the auxiliary program 42.
  • Settings for double-sided printing may be passed.
  • the auxiliary program 42 uses the UI 20 to display a print setting screen according to the function of the printer 2.
  • the auxiliary program 42 accepts settings related to double-sided printing via the print setting screen.
  • the print setting screen includes, as basic setting items, a paper type, a paper size, a print orientation, a selection of double-sided printing, a selection of booklet printing, and the like.
  • the auxiliary program 42 When double-sided printing is selected, the auxiliary program 42 further displays an item for setting the binding method and an item for setting the binding allowance using the UI 20.
  • the binding method for example, the print orientation is set to "vertical" as shown in FIG. 6 (a), and the print orientation is set to "horizontal” as shown in FIG. 7 (a).
  • Long-side binding is a method of binding on the long side of a sheet as shown in FIG. 6 (b) and FIG. 7 (b).
  • Short-edge binding is a method of binding on the short edges of a sheet, as shown in FIG. 6 (c) and FIG. 7 (c).
  • the binding allowance is a margin for binding a double-sided printed sheet.
  • the amount X of the binding allowance can be arbitrarily set within a predetermined range.
  • the auxiliary program 42 edits the print setting attached to the execution command so as to include the received setting related to double-sided printing.
  • the auxiliary program 42 can be used to set double-sided printing suitable for the printer 2.
  • the auxiliary program 42 When the auxiliary program 42 finishes the verification of the print settings, the auxiliary program 42 passes the end notification to the general-purpose print program 41 (arrow E).
  • the end notification has edited print settings, including double-sided print settings.
  • the general-purpose print program 41 generates intermediate data by converting the image data format included in the print execution notification into the intermediate data format, and generates a print job including the intermediate data (arrow F).
  • the image data included in the editing application 43 is of various types, and the general-purpose printing program 41 converts the received image data into intermediate data suitable for generating print data. If the image data included in the print execution notification is data suitable for generating print data, the generation of intermediate data may be omitted and the intermediate data may be used as it is.
  • the intermediate data is, for example, XPS data.
  • the intermediate data is an example of intermediate data for printing. For example, as shown in FIG. 5A, the page order of the intermediate data generated by the process of the arrow F is the same as the page order of the image data attached to the print execution instruction.
  • the general-purpose printing program 41 that has received the end notification passes an execution instruction for executing the editing of the intermediate data to the auxiliary program 42 (arrow G). Edited print settings and intermediate data generated by the processing of arrow F are attached to the execution instruction.
  • the intermediate data received by the auxiliary program 42 from the general-purpose printing program 41 by the arrow G is an example of the first data.
  • the auxiliary program 42 determines whether or not it is necessary to rotate the image data of the page included in the print job (arrow H). For example, the auxiliary program 42 determines whether or not rotation of the image data is necessary based on the edited print setting. That is, as shown in FIG. 6B, when the printing orientation is “vertical” and the binding method is “long-edge binding", the image printed on the front surface and the image printed on the back surface of each sheet are It is better to have the same orientation. Further, as shown in FIG. 7C, when the printing orientation is "vertical” and the binding method is “short edge binding", the image printed on the front surface and the image printed on the back surface of each sheet are It is better to have the same orientation.
  • the auxiliary program 42 determines that the image data needs to be rotated.
  • the auxiliary program 42 performs rotation processing when it is determined that the image data needs to be rotated (arrow I).
  • the processing of the arrow I is an example of the rotation processing.
  • the auxiliary program 42 edits the intermediate data by rotating the even-numbered page intermediate data by 180 °, as shown in FIG. 5 (b).
  • the rotation target may be image data of odd-numbered pages.
  • the auxiliary program 42 that has executed the rotation process attaches the edited print setting and the edited intermediate data that has undergone the rotation process to the end notification, and outputs the end notification to the general-purpose print program 41. (Arrow J).
  • the auxiliary program 42 determines that the rotation of the image data is not necessary, the auxiliary program 42 does not perform the rotation process indicated by the arrow I, and outputs the end notification to the general-purpose print program (arrow J). In this case, the edited intermediate data that has not been rotated is attached to the end notification.
  • the general-purpose print program 41 that has received the end notification rasterizes the edited print settings and the edited intermediate data attached to the end notification to generate print data (arrow K).
  • the print data generated by the general-purpose print program 41 is print data in a format that can be used for printing by various printers.
  • the print data is, for example, PWGRaster data or PDF data.
  • the general-purpose printing program 41 receives the intermediate data obtained by rotating an even page by 180 ° from the auxiliary program 42 as shown in FIG. 5 (b)
  • the general-purpose printing program 41 receives the intermediate data from the auxiliary program 42 as shown in FIG. 5 (c).
  • the generated print data becomes print data obtained by rotating even pages by 180 °.
  • the general-purpose print program 41 outputs an execution command for executing a process of editing the generated print data (arrow L). Print data is attached to this execution instruction.
  • the print data received by the auxiliary program 42 from the general-purpose print program indicated by the arrow L is an example of the second data.
  • the auxiliary program 42 acquires the model name (arrow N). That is, the auxiliary program 42 inquires the OS 21 of the model name of the printer 2, for example, and acquires the model name of the printer 2 from the OS 21.
  • the model name may be obtained by directly contacting the printer 2.
  • the arrow N is an example of the model acquisition process.
  • the model name may be acquired when the auxiliary program 42 is started.
  • the auxiliary program 42 determines whether or not it is necessary to sort the image data based on the acquired model name (arrow O). That is, for example, as shown in FIG. 2, when the model name acquired by the processing of the arrow N is “M1”, the auxiliary program 42 needs to be rearranged in association with the model name “M1” of the auxiliary DB 44. Since "necessary" is stored in the negative information, it is determined that the image data needs to be rearranged.
  • the auxiliary program 42 that determines that sorting is necessary executes the sorting process (arrow P). That is, the auxiliary program 42 refers to the auxiliary DB 44, specifies the transfer method based on the model name acquired in the process of the arrow N, and rearranges the processing order of the image data according to the specified transfer method. After that, the auxiliary program 42 processes the arrow Q.
  • the auxiliary program 42 when the model name acquired by the processing of the arrow N is "M1", the auxiliary program 42 describes the sorting process from the auxiliary DB 44 to the "single sheet transfer method" associated with the model name "M1". Is extracted. Therefore, as shown in FIG. 5D, the auxiliary program 42 sets the processing order "1 page, 2 pages, 3 pages " defined by the page order of the print job in the print order of the above-mentioned one-sheet transfer method. Sort according to "2 pages, 1 page, 4 pages, 3 pages ". When the specified transfer method is the "two-sheet simultaneous transfer method", the auxiliary program 42 describes the processing order defined by the page order of the print job as shown in FIG. 5 (e). Sort in the print order of the two-sheet simultaneous transfer method "2 pages, 4 pages, 1 page, 3 pages !.
  • the auxiliary program 42 determines that the sorting of the image data is not necessary, and performs the processing of the arrow Q without performing the sorting processing of the arrow I.
  • the auxiliary program 42 determines whether or not there is an offset setting. For example, if the binding margin is set by the processing of arrow D, it is determined that there is an offset setting, and if the binding margin is not set by the processing of arrow D, it is determined that the offset is not set. ..
  • the auxiliary program 42 assigns a shift command to the print data (arrow R).
  • the shift command is a command for shifting the image data of the image to be printed on the sheet to the side opposite to the side to be bound.
  • the shift command includes the binding allowance amount X.
  • the auxiliary program 42 outputs a completion notification when the printing data editing process is completed (arrow S). Edited print data to which sorting processing and shift commands have been added is attached to the end notification.
  • the general-purpose print program 41 that has received the end notification transmits a print command related to the print job to the printer 2 specified in the print instruction (arrow T). Edited print data related to the print job is attached to the print instruction.
  • the processing of the arrow S and the arrow T is an example of the output processing.
  • the printer 2 that has received the print command performs double-sided printing according to the edited print data.
  • the edited print data is rearranged in the image processing order according to the single-sheet transfer method of the printer 2. Therefore, the printer 2 can realize double-sided printing without storing the print data in the memory and rearranging the image data.
  • the printer 2 shifts the print position of the image data according to the amount X of the binding allowance included in the shift command and prints.
  • the printer 2 for example, when the print orientation is "vertical" and the binding method is "long side binding", the image data of even pages is rotated by 180 °, so that the printer 2 itself does not perform the rotation process. However, the orientation of the images printed on the front and back surfaces can be aligned.
  • the auxiliary program 42 of the present embodiment prints by the auxiliary program 42 when the general-purpose printing program 41 (OS21) has a print instruction and the printer 2 executes double-sided printing in a job based on the print instruction.
  • the general-purpose printing program 41 supports double-sided printing by rotating the image data of the intermediate data for printing and rearranging the image data of the print data so that the printing order is adjusted according to the sheet transport mode of the printer 2. Even if you don't have it, you can support double-sided printing.
  • the auxiliary program 42 acquires the model name, determines the necessity of sorting, and arranges the model name after receiving the intermediate data indicated by the arrow G in FIG. 3 and before receiving the print data indicated by the arrow L in FIG.
  • the replacement process (arrow N, arrow O, arrow P) may be performed. That is, the auxiliary program 42 may perform the sorting process on the intermediate data. Then, the auxiliary program 42 may execute the rotation necessity determination (arrow H) and the rotation process (arrow I) after receiving the print data indicated by the arrow L in FIG. That is, the auxiliary program 42 may perform rotation processing on the print data.
  • the intermediate data received by the auxiliary program 42 by the arrow G is an example of the second data
  • the print data received by the auxiliary program 42 by the arrow L is an example of the first data. ..
  • the auxiliary program 42 of this embodiment first executes the processes of arrows A to I. Before the print data is generated by the arrow Ka, the model name is acquired (arrow N), and when it is determined that sorting is necessary (arrow O), the sorting process is performed (arrow Pa). The processing of the arrow Pa is different from the processing of the arrow P of the first form in that the target of sorting is the intermediate data, and the processing content is the same as that of the arrow P.
  • the auxiliary program 42 passes the edited intermediate data that has undergone rotation processing and sorting processing as necessary and the end notification to the general-purpose printing program 41 (arrow J).
  • the processing of arrows N to Pa may be performed before the processing of arrows H.
  • the general-purpose print program 41 generates print data by rasterizing the edited intermediate data in which the image is rotated or the page order is rearranged by the auxiliary program 42 (arrow Ka), and the print data and the execution command are auxiliary programs. Pass it to 42 (arrow L).
  • the auxiliary program 42 When the auxiliary program 42 receives the print data, it attaches a shift command as needed (arrow R). Then, the auxiliary program 42 outputs a print instruction with the edited print data to the printer 2. That is, the auxiliary program 42 directly transmits the edited print data related to the print job to the printer 2 without going through the general-purpose print program 41 (arrow U).
  • the auxiliary program 42 may receive a response notification (arrow V) including information such as success of data transmission, printing completion, and error notification from the printer 2 and pass it to the general-purpose printing program 41 (arrow W).
  • the general-purpose print program 41 may pass the print result to the editing application 43 based on the response notification (arrow X).
  • the processing of arrows V to X may be omitted.
  • the auxiliary program 42 of the second form transmits the print data based on the intermediate data obtained by the auxiliary program 42 of the rotation process and the rearrangement process to the printer 2, and thus has the same effect as that of the first form. ..
  • the arrow Pa in FIG. 8 is an example of the rearrangement process
  • the arrow I is an example of the rotation process
  • the process of the arrow U is an example of the output process.
  • the intermediate data received by the auxiliary program 42 from the general-purpose printing program 41 by the arrow G is an example of the intermediate data for printing.
  • the auxiliary program 42 of this embodiment first executes the processes of arrows A to F.
  • the general-purpose printing program 41 rasterizes the intermediate data generated by the arrow F to generate print data (arrow Kb), and passes it to the auxiliary program 42 (arrow L). That is, the auxiliary program 42 receives the print data that has not been subjected to the rotation process or the rearrangement process from the general-purpose print program 41.
  • the auxiliary program 42 determines whether or not rotation is necessary based on the edited print settings included in the received print data (arrow H). When the auxiliary program 42 determines that rotation is necessary based on the edited print settings included in the print data, the auxiliary program 42 performs rotation processing on the print data (arrow Ib).
  • the processing of the arrow Ib is different from the processing of the arrow I of the first form in that the target of the rotation processing is the print data, and the processing content is the same as that of the arrow I.
  • the auxiliary program 42 further executes the processing of the arrows N to T.
  • the auxiliary program 42 of the third form transmits the print data based on the intermediate data obtained by the auxiliary program 42 of the rotation process and the rearrangement process to the printer 2, and thus has the same effect as that of the first form. ..
  • the arrow P in FIG. 9 is an example of the sorting process
  • the arrow Ib is an example of the rotation process
  • the processes of the arrows S and T are examples of the output process.
  • the auxiliary program 42 rasterizes the intermediate data received from the general-purpose printing program 41 to generate print data (arrow Kc).
  • the print data generated by the arrow Kc is data in a format that can be printed by the printer 2, and is, for example, PDL data dedicated to the model of the printer 2.
  • the print data generated by the arrow Kc may be data in a format that can be used for printing with a printer other than the model of the printer 2.
  • the auxiliary program 42 edits the print data by performing the processes of arrows Hc to R on the print data generated by the auxiliary program 42 itself without using the general-purpose print program 41.
  • the auxiliary program 42 performs a rotation process (arrow Ic) and a rearrangement process (arrow Pc) on the print data generated by the auxiliary program 42 as needed indicated by the arrows Hc and O.
  • the auxiliary program 42 After editing the print data, the auxiliary program 42 directly transmits the edited print data to the printer 2 (arrow U). Since the processing of the arrows U to X has been described in the second embodiment with reference to FIG. 8, the description is omitted.
  • the processing of the arrow G is an example of the acquisition processing
  • the processing of the arrow Kc is an example of the rasterization processing
  • the processing of the arrow Ic is an example of the rotation processing
  • the processing of the arrow Pc is an example of the sorting processing
  • the arrow U. Processing is an example of output processing.
  • the auxiliary program 42 of the fourth form performs rotation processing and rearrangement processing on the print data generated by the auxiliary program 42, and transmits the print data to the printer 2, so that the operation is the same as that of the first form. It works.
  • the auxiliary program 42 performs the processing of the arrow Kc between the arrow Ic and the arrow N, executes the rotation processing on the intermediate data, generates the print data, and then sorts the generated print data. The process may be executed. Further, for example, the auxiliary program 42 executes various processes in the order of arrows N to Pc, arrows Kc, and arrows Hc to Ic, sorts the intermediate data, and then generates print data. After that, the generated print data may be subjected to rotation processing.
  • FIGS. 11, 12 and the following description differs from the first form in that rotation processing, sorting processing, and output processing are performed in units of N pages.
  • FIGS. 11, 12 and the following description the same processing as in the first embodiment is designated by the same reference numerals and the description thereof will be omitted as appropriate. Further, the same processing as in the first form, but different processing will be described as a reference with a lowercase subscript to explain the difference from the first form.
  • the general-purpose print program 41 when the general-purpose print program 41 receives the print execution notification from the editing application 43 (arrow B), the general-purpose print program 41 outputs an execution command (arrow b1).
  • the print setting attached to the print execution notification is attached to the execution command.
  • the auxiliary program 42 verifies the print settings (arrow D), it acquires the model name (arrow N) and specifies the number N of page units during sheet transfer (arrow b3).
  • the auxiliary program 42 that specifies the number N of page units during sheet transfer requests the general-purpose printing program 41 to transmit intermediate data for N pages (arrow b4). Then, the auxiliary program 42 outputs the end notification with the edited print setting to the general-purpose print program 41 (arrow b5).
  • the processing of the arrow b4 and the arrow b5 may be reversed.
  • the general-purpose printing program 41 When the general-purpose printing program 41 receives the end notification, it generates intermediate data (arrow F). Then, the general-purpose printing program 41 outputs an execution command (arrow b6). In this case, the general-purpose printing program 41 passes the intermediate data for N pages in order from the beginning to the auxiliary program 42 (arrow b6). Edited print settings are also attached to the execution instruction.
  • the auxiliary program 42 When the auxiliary program 42 receives the execution instruction, it performs rotation processing on the intermediate data for N pages if it is necessary to rotate (arrow H, arrow I). Then, the auxiliary program 42 rasterizes the intermediate data to generate print data (arrow Kd). The arrow Kd generates print data in the same manner as the arrow Kc in FIG. Then, the auxiliary program 42 executes a sorting process (arrow O, arrow P) if sorting is required for the generated print data, or prints a shift command if an offset is set. (Arrow Q, arrow R). The processing of the arrow Kd may be performed before the processing of the arrow H or after the processing of the arrow P.
  • the auxiliary program 42 receives the intermediate data for N pages from the general-purpose printing program 41 without receiving the intermediate data for all the pages of the image data collectively from the general-purpose printing program 41, and performs rotation processing and sorting. Processing can be applied to intermediate data and print data.
  • the auxiliary program 42 When the print data is edited in this way, the auxiliary program 42 outputs a print command with the edited print data to the printer 2 (arrow Ud), and receives a response notification from the printer to which the print command is output (arrow). Vd).
  • the arrow Ud and the arrow Vd are processed in the same manner as the arrow U and the arrow V in FIG. 8 except that the print data is output in units of N pages and the result is received.
  • the processing of the arrow Ud is an example of the output processing.
  • the auxiliary program 42 When the auxiliary program 42 receives the response end notification, it outputs the end notification to the general-purpose printing program 41 (arrow b7). Further, the auxiliary program 42 passes the same N-page request as the arrow b4 to the general-purpose printing program 41 at the arrow b7. Further, the auxiliary program 42 passes an execution instruction output request requesting the general-purpose printing program 41 to output an execution instruction.
  • the general-purpose print program 41 that has received the end notification has not passed the intermediate data for all pages to the auxiliary program 42, it returns to the process of arrow b6 and passes the intermediate data for the next N pages to the auxiliary program 42. Since the processing after the arrow b6 is the same as the above, the description thereof will be omitted.
  • the general-purpose printing program 41 passes the intermediate data for all pages to the auxiliary program 42. That's what I did. In this case, even if the general-purpose printing program 41 receives the end notification from the auxiliary program 42, the intermediate data cannot be passed to the auxiliary program 42. Therefore, as shown in FIG. 12, the transmission of the intermediate data for all pages is completed. An execution command with an all-page transmission completion notification indicating the above is output to the auxiliary program 42 (arrow b11).
  • the auxiliary program 42 determines that the print job has been completed based on the all-page transmission completion notification, and outputs a completion notification with a completion notification (arrow b12).
  • the general-purpose print program 41 receives the end notification, it outputs a print result notification indicating the print result to the editing application 43 (arrow b13). As a result, double-sided printing based on the print instruction from the editing application 43 is completed.
  • the auxiliary program 42 of the fifth form has the same effect as the auxiliary program 42 of the first form.
  • the auxiliary program 42 of the fifth form further sorts and transmits print data in units of N pages.
  • the printer 2 starts printing, all pages are collectively acquired with intermediate data, the sorting of all pages is completed, and then the transmission of print data is started (see, for example, FIGS. 3 to 4).
  • the printer 2 is a model corresponding to the "simultaneous transfer method of two sheets" and the printer 2 prints 100 pages of originals on both sides of the printer 2
  • the auxiliary program 42 is for 100 pages from the general-purpose printing program 41.
  • the user can receive the intermediate data of pages 41 to 4 of the general-purpose print program at any time and output the edited print data that has undergone rotation processing and sorting processing to the printer 2.
  • the time from when the print instruction is input to the editing application 43 until the printer 2 starts printing is shortened.
  • the auxiliary program 42 When the auxiliary program 42 is prepared for each model, for example, the auxiliary DB 44 shown in FIG. 1, the process of acquiring the model name shown in FIG. 4 (arrow N), and whether or not sorting is necessary are determined based on the model name.
  • the determination process (arrow O) may be omitted.
  • the auxiliary program 42 acquires the model name, specifies the transport method based on the auxiliary DB 44, and rearranges the processing order for each model, so that the auxiliary program 42 can correspond to a plurality of models and is easy to use.
  • the auxiliary DB 44 does not have to store the sorting necessity information in association with the model name. Further, the auxiliary program 42 may omit the processing of the arrows Q and R. However, by processing the arrows Q and R, the auxiliary program 42 can support offset printing, and the usability is improved.
  • the processing of arrows H and I shown in FIGS. 3, 9, 10 and 11 may be omitted. Further, when the printer is a model capable of rearranging image data, the processing of arrows O and P shown in FIGS. 3, 9, 10 and 11 may be omitted.
  • the processing of the arrows S and T shown in FIGS. 4 and 9 may be omitted, and the auxiliary program 42 may directly send the edited print data to the printer 2.
  • the processing of the arrows U to X shown in FIGS. 8 and 10 and the processing of the arrows Ud and Vd of FIG. 11 may be omitted, and the print data may be transmitted to the printer via the general-purpose printing program 41.
  • the general-purpose printing program 41 may perform the process of generating the intermediate data shown by the arrow F in FIGS. 3, 9 and 10 after the process of the arrow B and before the process of the arrow C.
  • the plurality of processes in the arbitrary plurality of steps can be arbitrarily changed in the execution order or executed in parallel as long as the processing contents do not conflict with each other.
  • the process disclosed in the embodiment may be executed by a single CPU, a plurality of CPUs, hardware such as an ASIC, or a combination thereof.
  • the process disclosed in the embodiment can be realized in various aspects such as a recording medium or a method in which a program for executing the process is recorded.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

OS標準の印刷プログラムが組み込まれた情報処理装置において、両面印刷をプリンタに行わせること。PC1と接続するプリンタ2に対応する補助プログラム42は、PC1に組み込まれている編集アプリ43から出力された印刷指示に基づいて、両面印刷をプリンタ2に実行させる場合、汎用印刷プログラム41から受け取った中間データに対し、回転が必要となるページの画像を180度回転させる回転処理を行い、汎用印刷プログラム41から受け取った印刷データに対し、プリンタ2のシートの搬送方式に合わせて、処理順をページ順から印刷順に並べ替える並べ替え処理を行い、回転処理および並べ替え処理を経た印刷データを、PC1からプリンタ2に送信させる。

Description

サポートプログラム、情報処理装置、および印刷方法
 本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラム、情報処理装置、および印刷方法に関する。
 パーソナルコンピュータ等の情報処理装置からプリンタを制御する技術として、例えば特許文献1に開示されているように、プリンタドライバによって、1枚のシートの表面と裏面との両面に印刷する両面印刷が設定されたジョブを、プリンタに入力する構成が知られている。
特開2006-224328号公報
 近年、前述したプリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
 しかしながら、OS標準の汎用印刷プログラムによる印刷では、印刷パラメータの選択の際、選択可能な設定項目がOS標準の印刷プログラムに登録されている一般的なものになる。そのため、両面印刷がサポートされない可能性があり、ユーザに不便を強いる。
 本明細書は、OS標準の印刷プログラムが組み込まれた情報処理装置において、両面印刷をプリンタに行わせる技術を開示する。
 上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データと、前記印刷用中間データに基づいて前記汎用印刷プログラムによってラスタライズされた印刷データと、の一方である第1のデータを受け取り、受け取った前記第1のデータに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記汎用印刷プログラムから、前記印刷用中間データと前記印刷データとの他方である第2のデータを受け取り、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替える並べ替え処理と、前記回転処理および前記並べ替え処理を経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する出力処理と、を実行させる、ことを特徴とする。
 上記構成のサポートプログラムは、汎用印刷プログラム(OS)に印刷指示があり、その印刷指示に基づくジョブにおいて両面印刷をプリンタに実行させる場合に、サポートプログラムによって印刷用中間データあるいは印刷データの画像に回転および並べ替えを行って、プリンタのシートの搬送態様に合わせた印刷順序にする。これにより、汎用刷プログラムが両面印刷をサポートしていない場合であっても、両面印刷をサポートできる。
 本発明の別態様は、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データを受け取り、受け取った前記印刷用中間データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替え処理と、を実行させ、さらに、前記回転処理および前記並べ替え処理を経た前記ジョブにかかる印刷データが前記プリンタを送信先として前記情報処理装置から送信されるように、前記回転処理および前記並べ替え処理がなされた前記印刷用中間データを前記汎用印刷プログラムに渡す出力処理を実行させる、ことを特徴とする。
 本発明の別態様は、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、前記汎用印刷プログラムから、前記汎用印刷プログラムによってラスタライズされた印刷データを受け取り、受け取った前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替え処理と、を実行させ、さらに、前記回転処理および前記並べ替え処理を経た前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように出力する出力処理と、を実行させる、ことを特徴とする。
 本発明の別態様は、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データを取得する取得処理と、前記取得処理にて取得した前記印刷用中間データをラスタライズして印刷データを取得するラスタライズ処理と、前記印刷用中間データあるいは前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記印刷用中間データあるいは前記印刷データに対し、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替える並べ替え処理と、前記回転処理および前記並べ替え処理を経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する出力処理と、を実行させる、ことを特徴とする。
 上記サポートプログラムの機能を実現するための制御方法、および、当該サポートプログラムを格納するコンピュータにて読取可能な記憶媒体や情報処理装置も、新規で有用である。
 本明細書に開示される技術によれば、OS標準の印刷プログラムが組み込まれた情報処理装置において、両面印刷をプリンタに行わせることができる。
PCの電気的構成を示すブロック図である。 補助DBの構成の一例を示す図である。 第1の形態の動作の順序の例を説明するシーケンス図である。 第1の形態の動作の順序の例を説明するシーケンス図である。 データの取り扱いを説明する図である。 回転条件を説明する図である。 回転条件を説明する図である。 第2の形態の動作の順序の例を説明するシーケンス図である。 第3の形態の動作の順序の別の例を示すシーケンス図である。 第4の形態の動作の順序の例を説明するシーケンス図である。 第5の形態の動作の順序の例を説明するシーケンス図である。 第5の形態の動作の順序の例を説明するシーケンス図である。
 以下、第1の形態のプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本形態は、印刷機能を有するプリンタに接続されるPCにて実行されるプログラムを具体化した実施の形態を開示するものである。
 本形態のPC1は、例えば、図1に示すように、コントローラ10と、ユーザインタフェース(以下、「UI」とする)20と、通信インタフェース(以下、「通信IF」とする)30と、を備えている。UI20及び通信IF30は、コントローラ10に電気的に接続されている。PC1は、情報処理装置の一例である。プリンタ2は、印刷機能を有する装置であり、ローカル通信またはネットワーク通信を介してPC1と接続されている。本形態のプリンタ2は、自動で両面印刷を行う機能を有する。両面印刷については後述する。
 UI20は、各種の表示を行い、ユーザの指示入力を受け付けるハードウェアを含む。UI20は、表示機能と入力受付機能との両方の機能を有するタッチパネルであっても良いし、表示機能を有するディスプレイと入力受付機能を有するキーボードやマウス等との組合せであっても良い。
 通信IF30は、プリンタ2などの外部装置との通信を行うためのハードウェアや、インターネットへのアクセスを行うためのハードウェアを含む。通信IF30は、通信方式の異なる複数のインタフェースを含んでいても良い。通信方式としては、例えば、ネットワーク通信、USB通信がある。また、有線通信であっても無線通信であってもよい。
 コントローラ10は、CPU11と、メモリ12と、を含む。CPU11は、コンピュータの一例である。メモリ12は、ROMと、RAMと、不揮発性メモリと、を含み、各種のアプリケーションプログラム(以下、「アプリ」とする)などのプログラムや各種のデータなどを記憶する。CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの指示に基づいて、各種の処理を実行する。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
 メモリ12の一例は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
 メモリ12には、例えば、図1に示すように、汎用印刷プログラム41を含むOS21と、補助プログラム42と、編集アプリ43と、が記憶されている。補助プログラム42は、サポートプログラムの一例である。編集アプリ43は、アプリケーションプログラムの一例である。OS21は、例えば、マイクロソフトウィンドウズ(登録商標)、MacOS(登録商標)、Linux(登録商標)である。なお、メモリ12には、図示したもの以外にも、接続されているプリンタ2の情報を含む各種のデータや、ブラウザ等の各種のプログラムが記憶されている。
 汎用印刷プログラム41は、PC1からの指示によってプリンタ2等の各種のプリンタで印刷を実行させるためのOS標準のプログラムである。本形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、対応するプリンタが印刷に用いる印刷データを生成する機能を含むプログラムである。
 汎用印刷プログラム41は、各種のプリンタのベンダによって提供される複数種類のモデルのプリンタが共通に利用できる機能をサポートしている。汎用印刷プログラム41は、各種プリンタが固有に備える機能の全てに対応するのは困難であり、サポートする機能は汎用的なものに限られる。
 補助プログラム42は、汎用印刷プログラム41の起動に付随してOS21からの指示に基づいて処理を実行するプログラム又はプログラム群であり、対象のハードウェアの制御をサポートするアプリである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、汎用印刷プログラム41を使用してプリンタ2に印刷を実行させる指示を受け付けた場合に、汎用印刷プログラム41から起動される。補助プログラム42は、例えば、ハードウェアサポートアプリ(略称、HSA)と呼ばれる。
 補助プログラム42は、汎用印刷プログラム41から複数種の命令を受け付け、受け付けた命令に基づいて、各種の処理を実行する。補助プログラム42は、汎用印刷プログラム41からの実行命令の内容に応じて異なる処理を実行できる。なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであってもよいし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。
 なお、補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであって良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが用意される。プリンタのベンダは、OS21のベンダが指定する手順に従って、補助プログラムをOS21のベンダが提供するプラットフォームに登録する。OS21は、PC1に新たにプリンタが接続され、そのプリンタに対応する補助プログラムがプラットフォームに登録されている場合には、当該補助プログラムを格納されているサーバからダウンロードしてPC1に組み込む。そして、OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
 OS21には、補助プログラム42に付随して、メモリ12に準備されている補助プログラム42用の記憶領域に補助データベース(以下、「補助DB」とする)44が組み込まれている。補助DB44の構成の一例を、図2を参照して説明する。補助DB44は、補助プログラム42が対応可能な全てのモデルについて、モデル名と、搬送方式と、並べ替え要否情報とを関連付けて記憶するデータベースである。
 モデル名は、プリンタのモデルを示す。モデル名は、モデル情報の一例である。搬送方式は、プリンタの搬送機構がシートを搬送する方法を示す。搬送方式には、例えば、1枚搬送方式、2枚同時搬送方式、インターリーブ方式が記憶される。これらの搬送方式については後述する。なお、搬送方式は、搬送態様の一例である。並べ替え要否情報は、ページの画像を処理する順番である処理順の並べ替えの要否を示す情報である。例えば、並べ替え要否情報は、例えば、メモリ容量が少なく、プリンタ自身で印刷順を変更して両面印刷を実現できないプリンタのモデルに対しては、処理順の並べ替えが必要であることを示す「要」がモデル名に関連付けて記憶される。一方、並べ替え要否情報は、例えば、メモリの容量が多く、プリンタ自身で印刷順を変更して両面印刷を実現できるモデルに対しては、処理順の並べ替えが必要でないことを示す「不要」が、モデル名に関連付けて記憶される。
 図1に戻り、編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト ワード(登録商標)、パワーポイント(登録商標)である。編集アプリ43は、プリンタ2等のベンダから提供されるアプリであってもよい。編集アプリ43は、プリンタ2に所定の動作を行わせる指示を含むユーザ操作を受け付ける。具体的には、編集アプリ43は、UI20を介して、例えば、プリンタ2に印刷を実行させる印刷指示を受け付ける。
 なお、実施の形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、CPU11の処理を表している。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記載は、「プログラムBがOS21のAPIを用いてハードウェアCを制御する」ことを指してもよい。また、プログラムに記述された命令に従ったCPU11の処理を、省略した文言で記載することがある。例えば、「CPU11が行う」のようにプログラムを省略して記載することがある。また、プログラムに記述された命令に従ったCPU11の処理を、「プログラムAが行う」のようにCPUを省略した文言で記載することがある。
 なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU11が要求することなくデータを受信するという処理も、「CPU11がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「要求する」、「指示する」とは、要求していることを示す情報や、指示していることを示す情報を相手に出力することを示す概念である。また、要求していることを示す情報や指示していることを示す情報のことを、単に、「要求」、「指示」とも記載する。
 また、CPU11による、情報Aは事柄Bであることを示しているか否かを判断する処理を、「情報Aから、事柄Bであるか否かを判断する」のように概念的に記載することがある。CPU11による、情報Aが事柄Bであることを示しているか、事柄Cであることを示しているか、を判断する処理を、「情報Aから、事柄Bであるか事柄Cであるかを判断する」のように概念的に記載することがある。
 続いて、両面印刷について説明する。両面印刷は、シートの表面と裏面との2面に印刷する印刷態様である。プリンタ2は、自動で両面印刷を行う場合、給紙トレイから引き出したシートを印刷経路に沿って搬送し、印刷部によりシートの裏面(給紙トレイに収納されていたときの下面)に画像を印刷する。プリンタは、裏面に印刷済みのシートが排紙トレイに排紙される前に、シートの搬送方向を反転し、シートの表面に画像を印刷する。排紙トレイに排出されたシートは、搬送方向が反転されることにより、シートの上下を反転させた状態で両面印刷されるので、表面に印刷される画像が裏面に印刷される画像に対して180°反転した状態になる。
 続いて、上述した1枚搬送方式、2枚同時搬送方式、インターリーブ方式について説明する。1枚搬送方式は、1枚のシートの両面への印刷後に、次のシートへの印刷を開始する印刷手順にて用いられる搬送方式である。1枚搬送方式では、プリンタは、1枚のシートの両面への印刷が完了した後、次のシートを給紙する。つまり、1枚搬送方式では、プリンタは、1枚のシートを搬送している間に、他のシートを印刷経路にて搬送しない。また、プリンタは、裏面(2ページ目)から先に印刷し、表面(1ページ目)を印刷する。よって、1枚搬送方式を採用するプリンタは、1枚目の一方の面(第2ページ)→1枚目
の他方の面(第1ページ)→2枚目の一方の面(第4ページ)→2枚目の他方の面(第3ページ)の順で両面印刷を実行する。
 2枚同時搬送方式は、シートの一方の面(裏面)への印刷後であって他方の面(表面)への印刷開始前に、次のシートへの印刷を開始する印刷手順にて用いられる搬送方式である。2枚同時搬送方式による両面印刷では、プリンタは、1枚目のシートを印刷経路に搬送して、シートの裏面を印刷する。そして、プリンタは、1枚目のシートの搬送方向を反転し、1枚目のシートの表面を印刷する前に、2枚目のシートの裏面を印刷する。それから、プリンタは、1枚目のシートの表面を印刷し、1枚目のシートを排紙トレイに排紙する。その後、プリンタは、2枚目のシートの表面を印刷し、1枚目と同様にして2枚目のシートを排紙トレイに排紙する。よって2枚同時搬送方式では、印刷が終了していないシートが2枚同時に搬送されるタイミングがある。
 2枚同時搬送方式では、プリンタは、1枚目のシートと2枚目のシートとの両方への両面印刷が終了した後、次の3枚目のシートへの印刷を行う。具体的には、プリンタは、2枚同時搬送方式での搬送によって両面印刷を行う場合、1枚目の一方の面(第2ページ)→2枚目の一方の面(第4ページ)→1枚目の他方の面(第1ページ)→2枚目の他方の面(第3ページ)→3枚目の一方の面(第6ページ)の順で、印刷を実行する。
 なお、インターリーブ方式は、搬送方向を反転させて2枚目のシートを搬送する間に、1枚目のシートと3枚目のシートとを印刷経路にて搬送する点を除き、2枚同時搬送方式と同様にシートを搬送する。インターリーブ方式での搬送によって両面印刷を行う場合、プリンタは、例えば、1枚目の一方の面(第2ページ)→2枚目の一方の面(第4ページ)→1枚目の他方の面(第1ページ)→3枚目の一方の面(第6ページ)→2枚目の他方の面(第3ページ)→4枚目の一方の面(第8ページ)→3枚目の他方の面(第5ページ)の順で、印刷を実行する。
 次に、本形態の補助プログラム42の動作を含む印刷手順の一例について、図3のシーケンス図を参照して説明する。本形態のPC1は、補助プログラム42を使用することで、プリンタ2に両面印刷を実現させることができる。本形態の汎用印刷プログラム41は、両面印刷に対応していなくても良い。
 まず、編集アプリ43は、UI20を介して、印刷対象の画像の指定と、印刷実行の指示入力を受け付ける(矢印A)。編集アプリ43は、例えば、編集アプリ43にて編集された文書や編集アプリ43にて読み込んだ写真などを、印刷対象の画像とする指示を受け付ける。そして、印刷指示を受け付けた編集アプリ43は、受け付けた印刷指示の内容を示す印刷実行通知をOS21に渡す。なお、図3では、OS21の動作を省略して示している。
 OS21は、汎用印刷プログラム41を使用する印刷実行通知を受け付けた場合、汎用印刷プログラム41を実行させ、汎用印刷プログラム41に印刷実行通知を渡す(矢印B)。汎用印刷プログラム41は、印刷実行通知にて、印刷指示に含まれる各種の情報、例えば、印刷させるプリンタを示す情報、編集アプリ43にて設定された印刷設定を示す情報、印刷対象となる画像データを示す情報を、取得できる。
 汎用印刷プログラム41は、印刷実行通知に含まれる情報に基づいて、印刷を実行させる装置として指定されているプリンタを特定する。指定されているプリンタがプリンタ2であれば、プリンタ2に対応する補助プログラム42がメモリ12に記憶されていることから、汎用印刷プログラム41は、補助プログラム42の処理の実行命令を出力し、補助プログラム42を動作させる(矢印C)。すなわち、汎用印刷プログラム41が印刷実行通知を検知したことを契機に、補助プログラム42への実行命令が汎用印刷プログラム41から出力される。
 補助プログラム42は、汎用印刷プログラム41からの実行命令の内容に基づいて各種の処理を実行する。矢印Cの実行命令では、汎用印刷プログラム41は、編集アプリ43にて受け付けた印刷設定を補助プログラム42に渡し、印刷設定の検証を要求する。
 補助プログラム42は、矢印Cの実行命令に基づいて、印刷設定の検証を行う(矢印D)。補助プログラム42は、受け付けた印刷設定がプリンタ2の機能に適合しているか否かを判断し、例えば、プリンタ2にセットされていないサイズの用紙が選択されているなど適合していない印刷設定が含まれている場合、その印刷設定を無効にする。
 本形態の補助プログラム42は、矢印Dでの処理の実行中に印刷設定の変更や追加での設定を受け付けることができる。以下では、矢印Dにて補助プログラム42が両面印刷の設定を受け付けた場合について説明する。つまり、矢印Cにて渡される印刷設定には、両面印刷の設定が含まれておらず、矢印Dの処理の終了時における印刷設定には、両面印刷の設定が含まれる。
 なお、編集アプリ43にて両面印刷の設定を受け付けることができる場合には、矢印Cの処理にて補助プログラム42に渡される印刷設定に両面印刷の設定が含まれていても良い。例えば、汎用印刷プログラム41が両面印刷に対応している場合には、矢印Cにて両面印刷の設定を含む印刷設定が補助プログラム42に渡されてもよい。あるいは、汎用印刷プログラム41が両面印刷に対応していない場合であっても、例えば、編集アプリ43と補助プログラム42とで共通して使用できる記憶領域を介して、編集アプリ43から補助プログラム42へ両面印刷の設定が渡されてもよい。
 例えば、補助プログラム42は、UI20を用いて、プリンタ2の機能に応じた印刷設定画面を表示する。補助プログラム42は、この印刷設定画面を介して、両面印刷に関する設定を受け付ける。例えば、印刷設定画面には、基本設定項目として、用紙種類、用紙サイズ、印刷の向き、両面印刷の選択、冊子印刷の選択などが含まれる。
 両面印刷が選択されると、補助プログラム42は、さらに、綴じ方を設定する項目と、綴じ代を設定する項目を、UI20を用いて表示する。綴じ方には、例えば、図6(a)に示すように、印刷の向きを「縦」に設定した場合と、図7(a)に示すように、印刷の向きを「横」に設定した場合との各々について、長辺綴じと短辺綴じとがある。長辺綴じは、図6の(b)及び図7の(b)に示すように、シートの長い辺で綴じる方法である。短辺綴じは、図6の(c)及び図7の(c)に示すように、シートの短い辺で綴じる方法である。綴じ代は、両面印刷したシートを綴じるための余白である。綴じ代の量Xは、所定範囲で任意に設定できる。補助プログラム42は、綴じ方と綴じ代を設定した状態でUI20に表示されるOKボタンが操作されると、両面印刷に関する設定を受け付ける。
 図3に示すように、補助プログラム42は、両面印刷に関する設定を受け付けると、実行命令に付された印刷設定を、受け付けた両面印刷に関する設定を含むように編集する。これにより、例えば、編集アプリ43にて両面印刷の設定ができない場合でも、補助プログラム42にてプリンタ2に適した両面印刷の設定を行うことができるようになる。
 補助プログラム42は、印刷設定の検証を終了したら、終了通知を汎用印刷プログラム41に渡す(矢印E)。終了通知には、両面印刷の設定を含む編集済み印刷設定が付されている。
 汎用印刷プログラム41は、印刷実行通知に含まれる画像データの形式を中間データの形式に変換することで中間データを生成し、中間データを含む印刷ジョブを生成する(矢印F)。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間データに変換する。なお、印刷実行通知に含まれる画像データが印刷データの生成に適したデータであれば、中間データの生成を省略し、そのまま中間データとしても良い。中間データは、例えば、XPSデータである。なお、中間データは、印刷用中間データの一例である。なお、例えば図5(a)に示すように、矢印Fの処理で生成された中間データのページ順は、印刷実行指示に付された画像データのページ順と同じである。
 終了通知を受け取った汎用印刷プログラム41は、中間データの編集を実行させる実行命令を補助プログラム42に渡す(矢印G)。実行命令には、編集済み印刷設定と、矢印Fの処理にて生成された中間データが付されている。なお、矢印Gにて、補助プログラム42が汎用印刷プログラム41から受け取った中間データは、第1のデータの一例である。
 補助プログラム42は、印刷ジョブに含まれるページの画像データの回転が必要か否かを判断する(矢印H)。例えば、補助プログラム42は、編集済み印刷設定に基づいて、画像データの回転が必要か否かを判断する。すなわち、図6(b)に示すように、印刷の向きが「縦」、綴じ方が「長辺綴じ」である場合、各シートの表面に印刷される画像と裏面に印刷される画像は、向きを揃っている方がよい。また、図7(c)に示すように、印刷の向きが「縦」、綴じ方が「短辺綴じ」である場合、各シートの表面に印刷される画像と裏面に印刷される画像は、向きを揃っている方がよい。上述したように、シートを反転させて両面印刷を行う場合、シートは、表面に印刷される画像と、裏面に印刷される画像とが、180°反転する。よって、綴じ方が上記設定の場合、補助プログラム42は、画像データの回転が必要と判断する。
 これに対して、図6(c)に示すように、印刷の向きが「縦」、綴じ方が「短辺綴じ」である場合、各シートの表面に印刷される画像と裏面に印刷される画像は、向きが180°反転している方がよい。また、例えば、図7(b)に示すように、印刷の向きが「横」、綴じ方が「長辺綴じ」である場合、各シートの表面に印刷される画像と裏面に印刷される画像は、向きが180°反転している方がよい。よって、綴じ方がこのような設置の場合、補助プログラム42は、画像データの回転が必要でないと判断する。
 図3に示すように、補助プログラム42は、画像データの回転が必要であると判断した場合、回転処理を行う(矢印I)。矢印Iの処理は、回転処理の一例である。例えば、補助プログラム42は、図5(b)に示すように、偶数ページの中間データを180°回転
させて、中間データを編集する。なお、回転対象は、奇数ページの画像データであってもよい。
 図3に示すように、回転処理を実行した補助プログラム42は、編集済み印刷設定と、回転処理を施した編集済み中間データを終了通知に付し、その終了通知を汎用印刷プログラム41に出力する(矢印J)。
 なお、補助プログラム42は、画像データの回転が必要でないと判断した場合、矢印Iに示す回転処理を行わず、終了通知を汎用印刷プログラムに出力する(矢印J)。この場合、終了通知には、回転処理が施されていない編集済み中間データが付される。
 終了通知を受け付けた汎用印刷プログラム41は、終了通知に付された編集済み印刷設定と編集済み中間データをラスタライズして印刷データを生成する(矢印K)。汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データである。印刷データは、例えば、PWGRasterデータまたはPDFデータである。汎用印刷プログラム41が、図5(b)に示すように、偶数ページを180°回転させた中間データを補助プログラム42から受け付けた場合、図5(c)に示すように、汎用印刷プログラム41が生成した印刷データは、偶数ページを180°回転
させた印刷データになる。
 図3に示すように、印刷データの生成後、汎用印刷プログラム41は、生成した印刷データを編集する処理を実行させる実行命令を出力する(矢印L)。この実行命令には、印刷データが付される。なお、矢印Lにて、補助プログラム42が汎用印刷プログラムから受け取る印刷データは、第2のデータの一例である。
 矢印Lの処理の後、図4に示すように、補助プログラム42は、モデル名を取得する(矢印N)。すなわち、補助プログラム42は、例えば、プリンタ2のモデル名をOS21に問い合わせ、OS21からプリンタ2のモデル名を取得する。モデル名はプリンタ2に直接問い合わせて取得してもよい。矢印Nは、モデル取得処理の一例である。なお、モデル名は補助プログラム42の起動時に取得してもよい。
 補助プログラム42は、取得したモデル名に基づいて、画像データの並べ替えが必要か否かを判断する(矢印O)。すなわち、補助プログラム42は、例えば、図2に示したように、矢印Nの処理にて取得したモデル名が「M1」である場合、補助DB44のモデル名「M1」に関連付けられた並べ替え要否情報に「要」が記憶されていることから、画像データの並べ替えが必要であると判断する。
 並べ替えが必要と判断した補助プログラム42は、並べ替え処理を実行する(矢印P)。すなわち、補助プログラム42は、補助DB44を参照し、矢印Nの処理で取得したモデル名に基づいて搬送方式を特定し、特定した搬送方式に従って、画像データの処理順を並べ替える。その後、補助プログラム42は、矢印Qの処理を行う。
 並べ替え処理について具体的に説明すると、補助プログラム42は、矢印Nの処理で取得したモデル名が「M1」である場合、補助DB44から、モデル名「M1」に関連付けられた「1枚搬送方式」を抽出する。そこで、補助プログラム42は、図5(d)に示すように、印刷ジョブのページ順によって規定された処理順「1ページ、2ページ、3ページ…」を、上述した1枚搬送方式の印刷順に応じて「2ページ、1ページ、4ページ、3ページ…」に並べ替える。なお、特定された搬送方式が「2枚同時搬送方式」である場合には、補助プログラム42は、印刷ジョブのページ順によって規定された処理順を、図5(e)に示すように、上述した2枚同時搬送方式の印刷順「2ページ、4ページ、1ページ、3ページ…」に並べ替える。
 これに対して、補助プログラム42は、矢印Nの処理にて取得したモデル名が「M3」である場合、並べ替え要否情報が「不要」である。この場合、プリンタ2によって並べ替えが行われるため、補助プログラム42は、画像データの並べ替えが必要でないと判断し、矢印Iの並べ替え処理を行わずに、矢印Qの処理を行う。
 矢印Qの処理において、補助プログラム42は、オフセット設定があるか否かを判断する。例えば、矢印Dの処理にて綴じ代の設定が行われた場合、オフセット設定があると判断し、矢印Dの処理にて綴じ代の設定が行われない場合、オフセットの設定がないと判断する。補助プログラム42は、オフセット設定があると判断する場合、補助プログラム42は、シフトコマンドを印刷データに付与する(矢印R)。シフトコマンドは、シートに印刷する画像の画像データを、綴じられる側と反対側へずらすコマンドである。シフトコマンドには、綴じ代の量Xが含まれる。
 補助プログラム42は、印刷データの編集処理が終了したら、終了通知を出力する(矢印S)。終了通知には、並べ替え処理やシフトコマンドの付与などが行われた編集済み印刷データが付される。終了通知を受け付けた汎用印刷プログラム41は、印刷指示にて指定されたプリンタ2に、印刷ジョブにかかる印刷命令を送信する(矢印T)。印刷命令には、印刷ジョブにかかる編集済み印刷データが付されている。なお、矢印Sと矢印Tの処理は、出力処理の一例である。
 印刷命令を受信したプリンタ2は、編集済み印刷データに従って、両面印刷を行う。編集済み印刷データは、図5(d)に示すように、プリンタ2の1枚搬送方式に応じて画像の処理順が並べ替えられている。よって、プリンタ2は、メモリに印刷データを保存して画像データを並べ替えなくても、両面印刷を実現することができる。また、プリンタ2は、編集積み印刷データがシフトコマンドを含む場合、シフトコマンドに含まれる綴じ代の量Xに応じて画像データの印刷位置をずらし、印刷を行う。さらに、プリンタ2は、例えば、印刷の向きが「縦」で綴じ方が「長辺綴じ」の場合、偶数ページの画像データが180°回転されているので、プリンタ2自身で回転処理をしなくても、表面と裏面に印刷される画像の向きを揃えることができる。
 以上説明したように、本形態の補助プログラム42は、汎用印刷プログラム41(OS21)に印刷指示があり、その印刷指示に基づくジョブにおいて両面印刷をプリンタ2に実行させる場合に、補助プログラム42によって印刷用中間データの画像データの回転や、印刷データの画像データの並べ替えを行って、プリンタ2のシートの搬送態様に合わせた印刷順序にすることで、汎用印刷プログラム41が両面印刷をサポートしていない場合であっても、両面印刷をサポートできる。
 なお、補助プログラム42は、図3の矢印Gに示す中間データの受け取り後であって、図3の矢印Lに示す印刷データの受け取り前に、モデル名の取得、並べ替えの要否判断、並べ替え処理(矢印N、矢印O、矢印P)を行ってもよい。つまり、補助プログラム42は、中間データに並べ替え処理を行ってもよい。そして、補助プログラム42は、図3の矢印Lに示す印刷データの受け取り後に、回転の要否判断(矢印H)、回転処理(矢印I)を実行してもよい。つまり、補助プログラム42は、印刷データに回転処理を行ってもよい。なお、この場合、矢印Gにて補助プログラム42が受け取った中間データは、第2のデータの一例であり、矢印Lにて補助プログラム42が受け取った印刷データは、第1のデータの一例である。
 次に、第2の形態の補助プログラム42の動作を含む印刷手順について、図8のシーケンス図を参照して説明する。本形態は、中間データに対して回転処理と並べ替え処理の両方を実行する点や印刷データの出力処理が第1の形態と異なる。図8および以下の説明では、第1の形態と同じ処理については、同じ符号を付して説明を適宜省略する。また、第1の形態の処理と同様であって、異なる処理については、小文字の添え字を付けた符号として、第1の形態との違いを説明する。
 本形態の補助プログラム42は、まず、矢印A~Iの処理を実行する。矢印Kaにて印刷データが生成される前に、モデル名を取得し(矢印N)、並べ替えが必要と判断する場合(矢印O)、並べ替え処理を行う(矢印Pa)。矢印Paの処理は、並べ替えの対象が、中間データである点が第1の形態の矢印Pの処理と異なり、処理内容は矢印Pと同じである。補助プログラム42は、必要に応じて回転処理や並べ替え処理を施した編集済み中間データと、終了通知を、汎用印刷プログラム41に渡す(矢印J)。なお、矢印N~Paの処理は、矢印Hの処理の前に、行ってもよい。
 汎用印刷プログラム41は、補助プログラム42によって画像が回転されたり、ページ順が並べ替えられたりした編集済み中間データをラスタライズして印刷データを生成し(矢印Ka)、印刷データと実行命令を補助プログラム42に渡す(矢印L)。
 補助プログラム42は、印刷データを受け取ると、必要に応じてシフトコマンドを付す(矢印R)。そして、補助プログラム42は、編集済み印刷データを付した印刷命令をプリンタ2に出力する。つまり、補助プログラム42は、汎用印刷プログラム41を介さずに、印刷ジョブにかかる編集済み印刷データをプリンタ2に直接送信する(矢印U)。
 補助プログラム42は、プリンタ2から、データ送信の成功、印刷完了、エラー通知などの情報を含む応答通知を受信(矢印V)し、汎用印刷プログラム41に渡してもよい(矢印W)。この場合、汎用印刷プログラム41は、応答通知に基づいて印刷結果を編集アプリ43に渡してもよい(矢印X)。なお、矢印V~矢印Xの処理は、省略してもよい。
 よって、第2の形態の補助プログラム42は、補助プログラム42が回転処理や並べ替え処理を行った中間データに基づく印刷データをプリンタ2に送信するので、第1の形態と同様の作用効果を奏する。なお、図8の矢印Paが並べ替え処理の一例、矢印Iが回転処理の一例、矢印Uの処理が出力処理の一例である。矢印Gにて補助プログラム42が汎用印刷プログラム41から受け取る中間データは、印刷用中間データの一例である。
 次に、第3の形態の補助プログラム42の動作を含む印刷手順について、図9のシーケンス図を参照して説明する。本形態は、汎用印刷プログラム41が生成した印刷データに対して回転処理と並べ替え処理の両方を実行する点が第1の形態と異なる。図9および以下の説明では、第1の形態と同じ処理については、同じ符号を付して説明を適宜省略する。また、第1の形態の処理と同様であって、異なる処理については、小文字の添え字を付けた符号として、第1の形態との違いを説明する。
 本形態の補助プログラム42は、まず、矢印A~Fの処理を実行する。汎用印刷プログラム41は、矢印Fにて生成した中間データをラスタライズして印刷データを生成し(矢印Kb)、補助プログラム42に渡す(矢印L)。つまり、補助プログラム42は、回転処理も並べ替え処理も施されていない印刷データを汎用印刷プログラム41から受け取る。補助プログラム42は、受け取った印刷データに含まれる編集済み印刷設定に基づいて回転が必要か否かを判断する(矢印H)。補助プログラム42は、印刷データに含まれる編集済み印刷設定に基づいて回転が必要であると判断した場合、印刷データに対して回転処理を行う(矢印Ib)。矢印Ibの処理は、回転処理の対象が、印刷データである点が第1の形態の矢印Iの処理と異なり、処理内容は矢印Iを同じである。補助プログラム42は、さらに、矢印N~Tの処理を実行する。
 よって、第3の形態の補助プログラム42は、補助プログラム42が回転処理や並べ替え処理を行った中間データに基づく印刷データをプリンタ2に送信するので、第1の形態と同様の作用効果を奏する。なお、図9の矢印Pが並べ替え処理の一例、矢印Ibが回転処理の一例、矢印Sと矢印Tの処理が出力処理の一例である。
 次に、第4の形態の補助プログラム42の動作を含む印刷手順について、図10のシーケンス図を参照して説明する。本形態は、補助プログラムが印刷データを生成する点が第1の形態と異なる。図10および以下の説明では、第1の形態と同じ処理については、同じ符号を付して説明を適宜省略する。また、第1の形態の処理と同様であって、異なる処理については、小文字の添え字を付けた符号として、第1の形態との違いを説明する。
 図10に示すように、矢印A~矢印Gが実行されると、補助プログラム42は、汎用印刷プログラム41から受け取った中間データをラスタライズして印刷データを生成する(矢印Kc)。矢印Kcにて生成される印刷データは、プリンタ2にて印刷できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。補助プログラム42にてラスタライズすることで、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高い。なお、矢印Kcにて生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであってもよい。
 補助プログラム42は、汎用印刷プログラム41を使用せずに補助プログラム42自身で生成した印刷データに対して、矢印Hc~矢印Rの処理を施し、印刷データを編集する。例えば、補助プログラム42は、矢印Hc、矢印Oに示す必要に応じて、自身が生成した印刷データに対して回転処理(矢印Ic)や並べ替え処理(矢印Pc)を施す。
 補助プログラム42は、印刷データを編集したら、編集済み印刷データをプリンタ2に直接送信する(矢印U)。矢印U~矢印Xの処理は、図8を用いて第2の形態で説明したので、説明を割愛する。なお、図10において、矢印Gの処理が取得処理の一例、矢印Kcの処理がラスタライズ処理の一例、矢印Icの処理が回転処理の一例、矢印Pcの処理が並べ替え処理の一例、矢印Uの処理が出力処理の一例である。
 よって、第4の形態の補助プログラム42は、補助プログラム42が生成した印刷データに対して回転処理や並べ替え処理を行い、印刷データをプリンタ2に送信するので、第1の形態と同様の作用効果を奏する。
 なお、補助プログラム42は、矢印Kcの処理を矢印Icと矢印Nとの間に行い、中間データに回転処理を実行した後、印刷データを生成し、その後、生成した印刷データに対して並べ替え処理を実行してもよい。また例えば、補助プログラム42は、矢印N~Pcの処理、矢印Kcの処理、矢印Hc~Icの順に、各種処理を実行し、中間データに並べ替え処理を実行した後、印刷データを生成し、その後、生成した印刷データに対して回転処理を行ってもよい。
 次に、第5の形態の補助プログラム42の動作を含む印刷手順について、図11、図12のシーケンス図を参照して説明する。本形態は、Nページ単位で回転処理や並べ替え処理や出力処理を行う点が第1の形態と異なる。図11、図12および以下の説明では、第1の形態と同じ処理については、同じ符号を付して説明を適宜省略する。また、第1の形態の処理と同様であって、異なる処理については、小文字の添え字を付けた符号として、第1の形態との違いを説明する。
 図11に示すように、汎用印刷プログラム41は、編集アプリ43から印刷実行通知を受け付けると(矢印B)、実行命令を出力する(矢印b1)。実行命令には、印刷実行通知に付された印刷設定が付されている。
 補助プログラム42は、印刷設定の検証を行うと(矢印D)、モデル名を取得し(矢印N)、シート搬送時のページ単位の数Nを特定する(矢印b3)。例えば、シート搬送時のページ単位の数Nは、各搬送方式において、両面印刷時に搬送経路に存在するシートの枚数を2倍した値になる。各シートには、表面と裏面に1ページずつ印刷画像が形成されるからである。すなわち、搬送方式が「1枚搬送方式」であれば、N=2となり、「2枚同時搬送方式」であれば、N=4となる。
 シート搬送時のページ単位の数Nを特定した補助プログラム42は、Nページ分の中間データの送信を、汎用印刷プログラム41に要求する(矢印b4)。そして、補助プログラム42は、編集済み印刷設定を付した終了通知を汎用印刷プログラム41に出力する(矢印b5)。なお、矢印b4と矢印b5の処理は逆でもよい。
 汎用印刷プログラム41は、終了通知を受け付けると、中間データを生成する(矢印F)。そして、汎用印刷プログラム41は、実行命令を出力する(矢印b6)。この場合、汎用印刷プログラム41は、先頭から順番にNページ分の中間データを、補助プログラム42に渡す(矢印b6)。なお、実行命令には、編集済み印刷設定も付される。
 補助プログラム42は、実行命令を受け付けると、Nページ分の中間データに対して、回転の必要があれば、回転処理を施す(矢印H、矢印I)。そして、補助プログラム42は、中間データをラスタライズして印刷データを生成する(矢印Kd)。矢印Kdは、図10の矢印Kcと同様に印刷データを生成する。そして、補助プログラム42は、生成した印刷データに対して、並べ替えが必要であれば、並べ替え処理を実行したり(矢印O、矢印P)、オフセット設定されていれば、シフトコマンドを印刷データに付与したりする(矢印Q、矢印R)。なお、矢印Kdの処理は、矢印Hの処理前に行ってもよいし、矢印Pの処理後に行ってもよい。
 よって、補助プログラム42は、全ページ分の画像データについての中間データをまとめて汎用印刷プログラム41から受信しなくても、Nページ分の中間データを汎用印刷プログラム41から受け取り、回転処理や並べ替え処理を中間データや印刷データに施すことができる。
 このようにして印刷データを編集すると、補助プログラム42は、編集済み印刷データを付した印刷命令をプリンタ2に出力し(矢印Ud)、印刷命令の出力先となるプリンタから応答通知を受け取る(矢印Vd)。矢印Udと矢印Vdは、Nページ単位で印刷データを出力し、その結果を受信する点を除き、図8の矢印Uと矢印Vと同様に処理される。なお、矢印Udの処理は出力処理の一例である。
 補助プログラム42は、応答終了通知を受け取ると、汎用印刷プログラム41に終了通知を出力する(矢印b7)。また、補助プログラム42は、矢印b7にて、矢印b4と同様のNページ要求を汎用印刷プログラム41に渡す。さらに、補助プログラム42は、汎用印刷プログラム41に対して実行命令を出力することを要求する実行命令出力要求を渡す。
 終了通知を受け付けた汎用印刷プログラム41は、全ページ分の中間データを補助プログラム42に渡していない場合、矢印b6の処理に戻り、次のNページ分の中間データを補助プログラム42に渡す。矢印b6以降の処理は上記と同様なので説明を省略する。
 印刷指示に含まれる画像データの全ページ数をNで割った回数だけ、矢印b6~矢印b7の処理が実行されると、汎用印刷プログラム41は、全ページ分の中間データを補助プログラム42に渡したことになる。この場合、汎用印刷プログラム41は、補助プログラム42から終了通知を受け付けても、中間データを補助プログラム42に渡せないので、図12に示すように、全ページ分の中間データの送信が完了したことを示す全頁送信完了通知を付した実行命令を、補助プログラム42に出力する(矢印b11)。
 補助プログラム42は、全頁送信完了通知により、印刷ジョブが完了したと判断し、完了通知を付した終了通知を出力する(矢印b12)。汎用印刷プログラム41は、終了通知を受け付けると、印刷結果を示す印刷結果通知を編集アプリ43に出力する(矢印b13)。これにより、編集アプリ43からの印刷指示に基づく両面印刷が完了する。
 よって、第5の形態の補助プログラム42は、第1の形態の補助プログラム42と同様の効果を奏する。第5の形態の補助プログラム42は、さらに、Nページ単位で印刷データの並べ替えおよび送信を行う。これにより、プリンタ2が印刷を開始するタイミングが、全ページまとめて中間データを取得して全ページの並べ替えを終わらせてから印刷データの送信を開始する場合(例えば図3~図4参照)と比較して、早くなる。例えば、プリンタ2が「2枚同時搬送方式」に対応するモデルであり、プリンタ2に100ページ分の原稿をプリンタ2に両面印刷させる場合、補助プログラム42は、汎用印刷プログラム41から100ページ分の中間データを受信するのを待たなくても、汎用印刷プログラム41から4ページの中間データを随時受信して回転処理や並べ替え処理を施した編集済み印刷データをプリンタ2に出力するので、ユーザが編集アプリ43に印刷指示を入力してから、プリンタ2が印刷を開始するまでの時間が短くなる。
 なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本発明は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。
 補助プログラム42をモデル毎に用意する場合、例えば、図1に示す補助DB44、図4に示すモデル名を取得する処理(矢印N)、並べ替えが必要であるか否かをモデル名に基づいて判断する処理(矢印O)を省略してもよい。但し、補助プログラム42がモデル名を取得し、補助DB44に基づいて搬送方式を特定し、モデルごとに処理順を並べ替えることで、補助プログラム42が、複数のモデルに対応でき、使い勝手がよくなる。
 補助DB44は、モデル名に関連付けて並べ替え要否情報を記憶していなくてもよい。また、補助プログラム42は、矢印Q、矢印Rの処理を省略してもよい。但し、矢印Q、矢印Rの処理を行うことで、補助プログラム42がオフセット印刷に対応できるようになり、使い勝手がよくなる。
 プリンタが画像データの回転を行えるモデルである場合には、図3、図9、図10、図11に示す矢印H,矢印Iの処理を省略してもよい。また、プリンタが画像データの並べ替えを行えるモデルである場合には、図3、図9、図10、図11に示す矢印O,矢印Pの処理を省略してもよい。
 図4、図9に示す矢印S、矢印Tの処理を省略し、補助プログラム42が、編集済み印刷データを直接プリンタ2に送信してもよい。図8、図10に示す矢印U~Xの処理や図11の矢印Ud、矢印Vdの処理を省略し、汎用印刷プログラム41を介して印刷データをプリンタに送信してもよい。
 汎用印刷プログラム41は、図3や図9や図10の矢印Fに示す中間データを生成する処理を、矢印Bの処理の後、矢印Cの処理前に行ってもよい。
 また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
 また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
1 PC
1,3,4 プリンタ
11 CPU
21 OS
41 汎用印刷プログラム
42 補助プログラム
43 編集アプリ

Claims (18)

  1.  情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
     前記コンピュータに、
      前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、   前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データと、前記印刷用中間データに基づいて前記汎用印刷プログラムによってラスタライズされた印刷データと、の一方である第1のデータを受け取り、受け取った前記第1のデータに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、
       前記汎用印刷プログラムから、前記印刷用中間データと前記印刷データとの他方である第2のデータを受け取り、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替える並べ替え処理と、
       前記回転処理および前記並べ替え処理を経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する出力処理と、
      を実行させる、
     ことを特徴とするサポートプログラム。
  2.  情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
     前記コンピュータに、
      前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、   前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データを受け取り、受け取った前記印刷用中間データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替え処理と、を実行させ、   さらに、前記回転処理および前記並べ替え処理を経た前記ジョブにかかる印刷データが前記プリンタを送信先として前記情報処理装置から送信されるように、前記回転処理および前記並べ替え処理がなされた前記印刷用中間データを前記汎用印刷プログラムに渡す出力処理を実行させる、
     ことを特徴とするサポートプログラム。
  3.  情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
     前記コンピュータに、
      前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、   前記汎用印刷プログラムから、前記汎用印刷プログラムによってラスタライズされた印刷データを受け取り、受け取った前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替え処理と、を実行させ、   さらに、前記回転処理および前記並べ替え処理を経た前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように出力する出力処理と、
      を実行させる、
     ことを特徴とするサポートプログラム。
  4. 請求項1から請求項3のいずれか1つに記載するサポートプログラムにおいて、 プリンタのモデルを示すモデル情報とそのプリンタのシートの搬送態様とを関連付けたデータベースを含み、
     前記コンピュータに、
      前記情報処理装置と接続する前記プリンタのモデル情報を取得するモデル取得処理を実行させ、
      前記並べ替え処理では、
       前記データベースを参照し、前記モデル取得処理にて取得した前記モデル情報に基づいて前記シートの搬送態様を特定し、特定された前記シートの搬送態様に従って、処理順を並べ替える、
     ことを特徴とするサポートプログラム。
  5. 請求項4に記載するサポートプログラムにおいて、
     前記データベースには、さらに前記モデル情報と、処理順の並べ替えの要否を示す情報とが関連付けられており、
     前記コンピュータに、
      前記データベースを参照し、前記モデル取得処理にて取得した前記モデル情報に基づいて処理順の並べ替えの要否を特定し、
      処理順の並べ替えが必要なモデルの場合、前記並べ替え処理を実行させ、
      処理順の並べ替えが不要なモデルの場合、前記並べ替え処理を実行させず、前記出力処理では、処理順を並べ替えずに、前記ジョブにかかる前記印刷データを前記プリンタを送信先として出力させ、前記ジョブにかかる前記印刷データを受信した前記プリンタは、受信した前記印刷データのページ順から印刷順を判断して両面印刷を行う、
     ことを特徴とするサポートプログラム。
  6. 請求項4または請求項5に記載するサポートプログラムにおいて、
     前記並べ替え処理では、
      前記プリンタが両面印刷においてN(Nは2以上の自然数)ページ単位でシートを搬送するモデルあった場合に、前記Nページごとに前記印刷用中間データまたは前記印刷データを取得し、前記Nページ単位で処理順を並べ替える、
     ことを特徴とするサポートプログラム。
  7.  情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
     前記コンピュータに、
      前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、   前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データを取得する取得処理と、
       前記取得処理にて取得した前記印刷用中間データをラスタライズして印刷データを取得するラスタライズ処理と、
       前記印刷用中間データあるいは前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、
       前記印刷用中間データあるいは前記印刷データに対し、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替える並べ替え処理と、   前記回転処理および前記並べ替え処理を経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する出力処理と、
      を実行させる、
     ことを特徴とするサポートプログラム。
  8. 請求項1から請求項7のいずれか1つに記載するサポートプログラムにおいて、 前記コンピュータに、
      前記印刷指示に基づく前記ジョブにおいて、オフセットを伴う両面印刷を前記プリンタに実行させる場合、前記印刷データに前記画像をシフトさせるシフトコマンドを付与する付与処理を実行させ、前記プリンタは、前記シフトコマンドが付与された前記印刷データを受信した場合、前記シフトコマンドに従ってシフトさせた前記画像を印刷する、 ことを特徴とするサポートプログラム。
  9. 請求項1から請求項8のいずれか1つに記載するサポートプログラムにおいて、 前記出力処理では、
      前記ジョブにかかる前記印刷データを、前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記印刷データを、前記プリンタに送信する、
     ことを特徴とするサポートプログラム。
  10. 請求項1から請求項8のいずれか1つに記載するサポートプログラムにおいて、 前記出力処理では、
      前記ジョブにかかる前記印刷データを、前記プリンタに送信する、
     ことを特徴とするサポートプログラム。
  11.  コンピュータを備える情報処理装置であって、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記コンピュータは、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データと、前記印刷用中間データに基づいて前記汎用印刷プログラムによってラスタライズされた印刷データと、の一方である第1のデータを受け取り、受け取った前記第1のデータに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、
       前記サポートプログラムによって、前記汎用印刷プログラムから、前記印刷用中間データと前記印刷データとの他方である第2のデータを受け取り、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替える並べ替え処理と、   前記サポートプログラムによって、前記回転処理および前記並べ替え処理を経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する出力処理と、
      を実行する、
     ことを特徴とする情報処理装置。
  12.  コンピュータを備える情報処理装置であって、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記コンピュータは、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記ジョブにかかる複数ページの画像の印刷用中間データを受け取り、受け取った前記印刷用中間データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替え処理と、を実行し、
       さらに、前記サポートプログラムによって、前記回転処理および前記並べ替え処理を経た前記ジョブにかかる印刷データが前記プリンタを送信先として前記情報処理装置から送信されるように、前記回転処理および前記並べ替え処理がなされた前記印刷用中間データを前記汎用印刷プログラムに渡す出力処理を実行する、
     ことを特徴とする情報処理装置。
  13.  コンピュータを備える情報処理装置であって、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記コンピュータは、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記汎用印刷プログラムによってラスタライズされた印刷データを受け取り、受け取った前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替え処理と、を実行し、
       さらに、前記サポートプログラムによって、前記回転処理および前記並べ替え処理を経た前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように出力する出力処理を実行する、
     ことを特徴とする情報処理装置。
  14.  コンピュータを備える情報処理装置であって、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記コンピュータは、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データを取得する取得処理と、
       前記サポートプログラムによって、前記取得処理にて取得した前記印刷用中間データをラスタライズして印刷データを取得するラスタライズ処理と、
       前記サポートプログラムによって、前記印刷用中間データあるいは前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行う回転処理と、
       前記サポートプログラムによって、前記印刷用中間データあるいは前記印刷データに対し、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替える並べ替え処理と、
       前記サポートプログラムによって、前記回転処理および前記並べ替え処理を経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する出力処理と、
      を実行する、
     ことを特徴とする情報処理装置。
  15.  情報処理装置にプリンタが接続され、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続する前記プリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データと、前記印刷用中間データに基づいて前記汎用印刷プログラムによってラスタライズされた印刷データと、の一方である第1のデータを受け取り、受け取った前記第1のデータに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行い、
       前記サポートプログラムによって、前記汎用印刷プログラムから、前記印刷用中間データと前記印刷データとの他方である第2のデータを受け取り、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替え、
       前記サポートプログラムによって、前記画像処理および処理順の並べ替えを経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する、
     ことを特徴とする印刷方法。
  16.  情報処理装置にプリンタが接続され、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続する前記プリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記ジョブにかかる複数ページの画像の印刷用中間データを受け取り、受け取った前記印刷用中間データに対し、回転が必要となるページの前記画像を180度回転させる画像処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替えとを行い、
       さらに、前記サポートプログラムによって、前記画像処理および前記並べ替えを経た前記ジョブにかかる前記印刷データが前記プリンタを送信先として前記情報処理装置から送信されるように、前記画像処理および前記並べ替え処理がなされた前記印刷用中間データを前記汎用印刷プログラムに渡す、
     ことを特徴とする印刷方法。
  17.  情報処理装置にプリンタが接続され、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続する前記プリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記汎用印刷プログラムによってラスタライズされた印刷データを受け取り、受け取った前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理と、前記プリンタのシートの搬送態様に合わせて処理順をページ順から印刷順に並べ替える並べ替えとを行い、
       さらに、前記サポートプログラムによって、前記画像処理および前記並べ替えを経た前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように出力する、
     ことを特徴とする印刷方法。
  18.  情報処理装置にプリンタが接続され、
     前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
     前記情報処理装置には、前記情報処理装置と接続する前記プリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
     前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
      前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、両面印刷を前記プリンタに実行させる場合、
       前記サポートプログラムによって、前記汎用印刷プログラムから、前記ジョブにかかる複数ページの画像の印刷用中間データを取得し、
       前記サポートプログラムによって、取得した前記印刷用中間データをラスタライズして印刷データを取得し、
       前記サポートプログラムによって、前記印刷用中間データあるいは前記印刷データに対し、回転が必要となるページの前記画像を180度回転させる画像処理を行い、   前記サポートプログラムによって、前記印刷用中間データあるいは前記印刷データに対し、前記プリンタのシートの搬送態様に合わせて、処理順をページ順から印刷順に並べ替え、
       前記サポートプログラムによって、前記画像処理および処理順の並べ替えを経た後、前記ジョブにかかる前記印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、出力する、
     ことを特徴とする印刷方法。
PCT/JP2020/025799 2019-09-27 2020-07-01 サポートプログラム、情報処理装置、および印刷方法 WO2021059649A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202080066549.4A CN114503069B (zh) 2019-09-27 2020-07-01 存储有支持程序的存储介质、信息处理装置及打印方法
US17/211,195 US11244213B2 (en) 2019-09-27 2021-03-24 Non-transitory computer readable storage medium, information processing device and printing method for controlling a printer
US17/591,224 US11687751B2 (en) 2019-09-27 2022-02-02 Non-transitory computer readable storage medium, information processing device and printing method storing program to support duplex printing

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019177592A JP7354731B2 (ja) 2019-09-27 2019-09-27 サポートプログラム、情報処理装置、および印刷方法
JP2019-177592 2019-09-27

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/211,195 Continuation US11244213B2 (en) 2019-09-27 2021-03-24 Non-transitory computer readable storage medium, information processing device and printing method for controlling a printer

Publications (1)

Publication Number Publication Date
WO2021059649A1 true WO2021059649A1 (ja) 2021-04-01

Family

ID=75165986

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/025799 WO2021059649A1 (ja) 2019-09-27 2020-07-01 サポートプログラム、情報処理装置、および印刷方法

Country Status (4)

Country Link
US (2) US11244213B2 (ja)
JP (1) JP7354731B2 (ja)
CN (1) CN114503069B (ja)
WO (1) WO2021059649A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7354731B2 (ja) * 2019-09-27 2023-10-03 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法
CN117389488A (zh) * 2023-09-26 2024-01-12 珠海横琴奔图信息技术有限公司 一种双面打印控制方法、装置、存储介质及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004347627A (ja) * 2003-05-19 2004-12-09 Ricoh Co Ltd 画像形成装置
JP2007098724A (ja) * 2005-10-03 2007-04-19 Seiko Epson Corp 印刷装置
JP2017207993A (ja) * 2016-05-20 2017-11-24 富士ゼロックス株式会社 面付け処理装置、印刷システム、および面付け処理プログラム
JP2018028817A (ja) * 2016-08-18 2018-02-22 キヤノン株式会社 情報処理装置、方法およびプログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4834256B2 (ja) * 2000-09-12 2011-12-14 キヤノン株式会社 情報処理装置および印刷データ生成方法および印刷制御プログラムおよび記憶媒体
JP3809389B2 (ja) * 2001-04-19 2006-08-16 キヤノン株式会社 印刷制御装置、情報処理装置、印刷制御方法、情報処理装置の方法及びプログラム
JP2006224328A (ja) 2005-02-15 2006-08-31 Canon Inc プリンタシステム
JP4537252B2 (ja) * 2005-04-26 2010-09-01 キヤノン株式会社 情報処理装置及びその制御方法と印刷システム
JP4557823B2 (ja) * 2005-06-30 2010-10-06 キヤノン株式会社 画像形成方法、画像形成システム、画像形成装置、ドライバプログラム、及び情報処理装置
JP6115062B2 (ja) * 2012-03-21 2017-04-19 株式会社リコー 印刷制御プログラム、情報処理装置及び記録媒体
JP6397164B2 (ja) * 2012-07-17 2018-09-26 キヤノン株式会社 印刷装置、印刷装置の制御方法、及びプログラム
JP6051722B2 (ja) * 2012-09-20 2016-12-27 ブラザー工業株式会社 プログラムおよび情報処理装置
JP5841633B2 (ja) * 2014-04-15 2016-01-13 キヤノン株式会社 印刷装置、その制御方法、及びプログラム
JP2017098724A (ja) * 2015-11-24 2017-06-01 キヤノン株式会社 デジタル放送における簡易リアルタイム信号送受信システム
JP6604834B2 (ja) * 2015-12-04 2019-11-13 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP6631248B2 (ja) * 2015-12-25 2020-01-15 ブラザー工業株式会社 プリンタ
JP6671989B2 (ja) * 2016-01-29 2020-03-25 キヤノン株式会社 画像データを回転する印刷装置、印刷方法、プログラム。
JP6597343B2 (ja) * 2016-01-29 2019-10-30 ブラザー工業株式会社 ドライバプログラム、及びドライバプログラムとプリンタとのセット
JP6992496B2 (ja) * 2017-12-26 2022-01-13 ブラザー工業株式会社 制御プログラム及び、情報処理装置
JP7186528B2 (ja) * 2018-07-06 2022-12-09 キヤノン株式会社 プログラム、情報処理装置およびその制御方法
JP2020095535A (ja) 2018-12-13 2020-06-18 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
JP7354731B2 (ja) * 2019-09-27 2023-10-03 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004347627A (ja) * 2003-05-19 2004-12-09 Ricoh Co Ltd 画像形成装置
JP2007098724A (ja) * 2005-10-03 2007-04-19 Seiko Epson Corp 印刷装置
JP2017207993A (ja) * 2016-05-20 2017-11-24 富士ゼロックス株式会社 面付け処理装置、印刷システム、および面付け処理プログラム
JP2018028817A (ja) * 2016-08-18 2018-02-22 キヤノン株式会社 情報処理装置、方法およびプログラム

Also Published As

Publication number Publication date
US11687751B2 (en) 2023-06-27
CN114503069A (zh) 2022-05-13
CN114503069B (zh) 2024-05-28
JP2021056642A (ja) 2021-04-08
US20220156538A1 (en) 2022-05-19
US11244213B2 (en) 2022-02-08
JP7354731B2 (ja) 2023-10-03
US20210209429A1 (en) 2021-07-08

Similar Documents

Publication Publication Date Title
US20070146789A1 (en) Printing apparatus and printing method
JP6051722B2 (ja) プログラムおよび情報処理装置
JP5147822B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP2010160617A (ja) プリンタサーバ、画像形成装置およびこれらを用いた印刷システムとその制御方法ならびにプログラムおよび記録媒体
JP2007034846A (ja) 印刷システム、情報処理装置、印刷装置及びそれらの制御方法、プログラム
JP2009214406A (ja) 印刷装置、印刷装置の制御方法、記憶媒体及びコンピュータプログラム
US20090257088A1 (en) Image processing system, image processing method and storage medium
JP5489481B2 (ja) 印刷制御装置、印刷制御方法、及びプログラム
WO2021059649A1 (ja) サポートプログラム、情報処理装置、および印刷方法
KR100734978B1 (ko) 정보 처리 방법 및 정보 처리 장치
JP2016052766A (ja) 印刷装置、印刷方法およびプログラム、並びに、印刷システム
JP6594632B2 (ja) 画像処理システム
JP6341811B2 (ja) 印刷システム、画像処理装置、印刷制御方法、およびコンピュータプログラム
WO2021065126A1 (ja) サポートプログラム、情報処理装置、および印刷方法
US8823955B2 (en) Automatic image inverting for book copying
JP2001031326A (ja) 印刷制御装置及びその方法、及び画像処理システム
WO2021065124A1 (ja) サポートプログラム、情報処理装置、および印刷方法
CN114424159A (zh) 支援程序、信息处理装置及打印方法
JP2007111935A (ja) 印刷制御装置および印刷制御プログラム
JP7119409B2 (ja) 情報処理装置、配信システム、プログラム、配信方法
JP5705193B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP2010117780A (ja) 情報処理装置、ならびに情報処理プログラム
JP2009119722A (ja) 画像形成装置およびプログラム
JP5644995B2 (ja) 画像形成装置および整列プログラム
JP5678425B2 (ja) 画像形成装置とデータ処理方法とプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20869644

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20869644

Country of ref document: EP

Kind code of ref document: A1