US20010043359A1 - Print layout device, print layout method, and storage medium - Google Patents

Print layout device, print layout method, and storage medium Download PDF

Info

Publication number
US20010043359A1
US20010043359A1 US09/123,365 US12336598A US2001043359A1 US 20010043359 A1 US20010043359 A1 US 20010043359A1 US 12336598 A US12336598 A US 12336598A US 2001043359 A1 US2001043359 A1 US 2001043359A1
Authority
US
United States
Prior art keywords
data
layout
printed
sheet
print
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
US09/123,365
Other versions
US6417931B2 (en
Inventor
Yasuo Mori
Koji Nakagiri
Satoshi Nishikawa
Yasuhiro Kujirai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Individual
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 Individual filed Critical Individual
Assigned to CANON KABUSHIKI KAISHA reassignment CANON KABUSHIKI KAISHA ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KUJIRAI, YASUHIRO, MORI, YASUO, NAKAGIRI, KOJI, NISHIKAWA, SATOSHI
Priority to US09/863,462 priority Critical patent/US7084995B2/en
Publication of US20010043359A1 publication Critical patent/US20010043359A1/en
Application granted granted Critical
Publication of US6417931B2 publication Critical patent/US6417931B2/en
Adjusted expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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
    • 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
    • G06F3/1252Page layout or assigning input pages onto output media, e.g. imposition for sheet based media
    • 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/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • 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/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0011Accepting output data; Preparing data for the controlling system characterised by a particular command or data flow, e.g. Page Description Language, configuration commands

Definitions

  • the present invention relates to a print layout device, a print layout method and a storage medium, and in particular to a print layout device, a print layout method and a storage medium that are appropriate for a system constituted by an information processing apparatus, such as a personal computer, and a printer for printing data for which an optimal margin is set.
  • a binding margin is set simply by shifting a print position horizontally or vertically a distance equivalent to the binding margin. Therefore, when a specific binding margin has been set, data to be printed may extend out beyond the limits of the printable area on a sheet. And when a binding margin is located in the center of a sheet, as is a margin for bookbinding, setting the margin is not possible.
  • a margin is generally set that it is shifted to the right and down (a compound directional movement to the right and down).
  • margins can be set only vertically and horizontally (along the long side and the short side of a sheet).
  • a binding margin can not be set for that portion of a sheet that is folded once for bookbinding.
  • a print layout device a print layout method and a storage medium therefor with which all data can always be printed by ensuring that data to be printed do not extend out beyond the limits of a printable area, as may occur when the conventional margin setting process is used; with which a margin can be set by employing in addition a special print method, such as an N-up print method; and with which a binding margin can be set for bookbinding.
  • an information processing apparatus such as a host
  • PDL Peage Description Language
  • DDI Device Driver Interface
  • GDI Graphical Device Interface
  • a print layout device for providing a layout for a recording sheet comprises:
  • determination means for ascertaining the size of a printable area based on the margin that is set
  • enlargement/reduction means for enlarging or reducing data to be printed in consonance with the printable area
  • layout means for providing a layout for the margin for the sheet and for the data to be printed that are enlarged or reduced, and for employing the layout to control the printing.
  • the setting means is capable of independently setting vertical and horizontal margins for a sheet.
  • the setting means is capable of setting a binding margin adjacent to the line of the fold in a sheet that is folded once.
  • the setting means is capable of setting margins that are equidistant from the line of the fold in the center of a sheet that is folded once.
  • the enlargement/reduction means enlarges or reduces data to be printed using an enlargement/reduction ratio that provides a maximum inclusive area that does not exceed the limits of a printable area.
  • the enlargement/reduction means employs a designated, arbitrary enlargement/reduction ratio to enlarge or reduce the data to be printed.
  • the enlargement/reduction means so enlarges or reduces the data to be printed that the ratio of the length and the width of the data, after being enlarged or reduced, to that of the original data is not changed.
  • the layout means centers the enlarged or reduced data to be printed in an area on a sheet that excludes the binding margins, and performs the layout process.
  • a print layout device further comprises storage means for storing size information for data to be printed that is used for the determination of an enlargement/reduction ratio.
  • the enlargement/reduction means employs the size of the data to be printed and the sheet size to obtain an enlargement/reduction ratio for providing the binding margin
  • the layout means performs a layout process for a sheet based on the enlargement/reduction ratio that is obtained and, in accordance with the layout, prints out the data to be printed.
  • the layout means prints data for a plurality of pages on one sheet using a layout for a sheet for which a margin has been set.
  • the layout means is capable of adjusting the position of binding margins on the obverse and the reverse sides of a sheet, so that for double-sided printing the binding margin will be located at the same position on the sheet.
  • the present invention can be applied for a system by which the data to be printed can be transmitted by an upper-level device, such as a computer, to a printing device, such as a printer.
  • the present invention comprises:
  • saving means for temporarily saving data in an intermediate code form that differs from that for the data to be printed
  • preparation means for preparing data to be printed based on the data that are temporarily saved.
  • a print layout device for performing a layout process for a recording sheet comprises:
  • dispatcher means for receiving, from drawing means and depending on which OS is used, common print information that is generated and is based on drawing data prepared by an arbitrary application;
  • intermediate data conversion means for converting into intermediate data the print information received by the dispatcher means and for storing the intermediate data in spooling means
  • processing means for processing the intermediate data stored in the spooling means in consonance with a printable area based on the margin that is acquired, and for outputting the processed intermediate data in the drawing data form to the drawing means;
  • print data generation means for converting the print information received by the dispatcher means into print data consisting of a control command and for outputting the print data to an external device.
  • the processing means changes the size of the intermediate data to a maximum size that is available in the printable area and for which the ratio of the width and the length of the drawing data is not changed.
  • the drawing data are GDI (Graphical Device Interface) data.
  • the print information is DDI (Device Driver Interface) information.
  • the data to be printed are written in a page description language.
  • FIG. 1 is a block diagram illustrating the general arrangement of a printer control system according to a first and a second embodiments of the present invention.
  • FIG. 2 is a block diagram illustrating an arrangement for a typical printing process performed by a host computer according to the first and the second embodiments of the present invention
  • FIG. 3 is a block diagram illustrating a configuration according to the first and the second embodiments of the present invention for temporarily spooling a print command issued by an application as intermediate code before the print command is converted into a printer control command;
  • FIG. 4 is a flowchart showing despooler processing performed according to the first embodiment of the present invention.
  • FIG. 5 is an explanatory diagram showing the concept, according to the first embodiment of the present invention, for the performance of a margin setting method for calculating an enlargement/reduction ratio and a binding margin based on a sheet size;
  • FIG. 6 is a flowchart showing the margin setting process according to the first embodiment of the present invention.
  • FIG. 7 is an explanatory diagram illustrating an example margin parameter acquisition means, according to the first embodiment of the present invention, for designating margin parameters for the width and the length;
  • FIG. 8 is an explanatory diagram, according to the first embodiment of the present invention, showing example margin settings for bookbinding
  • FIG. 9 is a flowchart showing the processing, according to the second embodiment of the present invention, when N-up printing and margin setting are combined;
  • FIG. 10 is an explanatory diagram showing an example output, according to the second embodiment of the present invention, when N-up printing and margin setting are combined.
  • FIG. 11 is a cross-sectional view of the internal arrangement of a printer according to the first and the second embodiment of the present invention.
  • FIG. 1 The arrangement of a printer control system according to the first embodiment of the present invention will now be described while referring to the block diagram in FIG. 1. So long as the function of the present invention can be implemented, the present invention can be applied for a single apparatus, for a system constituted by a plurality of apparatuses, or for a system for performing processing across a network, such as a LAN (Local Area Network) or a WAN (Wide Area Network).
  • LAN Local Area Network
  • WAN Wide Area Network
  • the present invention can be applied for an FD (a Floppy Disk), a CD-ROM (a Compact Disk ROM), an Internet Web site, or a BBS (a Bulletin Board System: a message exchange system using computers), such as Nifty Serve. That is, a program according to the present invention can be supplied to the printer control system on an FD or a CD-ROM, or the printer control system can be connected to the Internet or to Nifty Serve.
  • FD a Floppy Disk
  • CD-ROM Compact Disk ROM
  • BBS Bulletin Board System: a message exchange system using computers
  • the printer control system is constituted by a host computer 3000 and a printer 1500 .
  • the host computer 3000 comprises: a CPU 1 ; a RAM 2 ; a ROM 3 ; a keyboard controller (KBC) 5 , a CRT controller (CRTC) 6 ; a disk controller (DKC) 7 ; a printer controller (PRTC) 8 ; a keyboard (KB) 9 ; a CRT display (CRT) 10 ; and an external memory 11 .
  • the printer 1500 comprises: a CPU 12 ; a RAM 19 ; a ROM 13 ; an input section 18 ; an engine interface (I/F) 16 ; a memory controller (MC) 20 ; a printer engine 17 ; an operating unit 1501 ; and an external memory 14 .
  • the CPU 1 is a central processing unit for the overall control of those devices that are connected to a system bus 4 .
  • the CPU 1 employs a document processing program stored in a program ROM 3 b (which will be described later) in the ROM 3 , or in an external memory 11 , to process documents consisting of mixtures of graphics, images, characters and charts (including table calculations).
  • the CPU 1 performs development (rasterization) for an outline font into, for example, a display data RAM set in the RAM 2 to enable WYSIWY (What You See Is What You Get: a function for printing data having the sizes and the shapes seen on the CRT display screen) for the CRT display 10 .
  • the CRT 10 opens various registered windows in response to a command designated using a mouse cursor (not shown) on the CRT display 10 , and performs various data processes.
  • a user prints data using the printer 1500
  • he or she can open a window for the setup for printing, and can set a printing method for a printer driver, including the reference for the printer 1500 and the selection of a print mode.
  • the RAM 2 serves as the main memory or as a work area for the CPU 1 .
  • the ROM 3 includes a font ROM 3 a , a program ROM 3 b and a data ROM 3 c .
  • font ROM 3 a or the external memory 11 are stored font data that are used for the document process.
  • program ROM 3 b or the external memory 11 is stored an operating system (hereinafter referred to as an OS), which is a control program for the CPU 1 .
  • an OS operating system
  • the data ROM 3 c or the external memory are stored various data used for the document process, etc.
  • the keyboard controller (KBC) 5 controls the entry of data at the keyboard 9 or a pointing device (not shown).
  • the CRT controller (CRTC) 6 controls the display on the CRT display 10 .
  • the disk controller (DKC) 7 controls the access of the external memory 11 .
  • the printer controller (PRTC) 8 is connected to the printer 1500 , via the bidirectional interface 21 , for communication with the printer 1500 .
  • Provided for the keyboard 9 are a variety of keys.
  • the CRT display (CRT) 10 displays graphics, images, characters and charts.
  • the external memory 11 includes a hard disk (HD) and a floppy disk (FD), and is used to store a boot program, various application programs, font data, a user file, an editing file, and a printer control command generation program (hereinafter referred to as a printer driver).
  • HD hard disk
  • FD floppy disk
  • printer driver printer control command generation program
  • the CPU 12 is a central processing unit that controls all the devices connected to the system bus 15 , and that employs a control program stored in a program ROM 13 b (which will be described later) in the ROM 13 , or a control program stored in the external memory 14 , to output an image signal as output data to the printer engine 17 .
  • the CPU 12 can communicate with the host computer 3000 via the input section 18 and can transmit data available at the printer 1500 to the host computer 3000 .
  • the RAM 19 serves as a main memory or a work area for the CPU 12 , and its memory capacity can be expanded using an optional RAM (not shown) that is connected to an expansion port.
  • the RAM 19 is employed as an output data development area, an environmental data storage area, an NVRAM, etc.
  • the ROM 13 includes a font ROM 13 a , a program ROM 13 b , and a data ROM 13 c .
  • In the font ROM 13 a are stored font data used to generate the output data: in the program ROM 13 b is stored a control program for the CPU 12 ; and in the data ROM 13 c is stored information used by the host computer 3000 when no external memory 14 , such as a hard disk, is connected to the printer 1500 .
  • the input section 18 is used for the exchange of data, via the bidirectional interface 21 , by the printer 1500 and the host computer 3000 : the engine interface (IF) 16 is used for the exchange of data by the CPU 12 and the printer engine 17 ; the memory controller (MC) 20 controls access to the external memory 14 ; the printer engine 17 conducts printing under the control of the CPU 12 ; and the operating unit 1501 includes various operating switches and display means (e.g., an LED display).
  • the external memory 14 is constituted by a hard disk (HD) and an IC card, and is optionally connected to the printer 1500 .
  • the external memory 14 is used to store font data, emulation data and form data, and access to it is controlled by the memory controller (MC) 20 .
  • MC memory controller
  • more than one external memory 14 can be provided.
  • a plurality of external memories in which are stored not only built-in fonts but also an option card and a program for interpreting different printer control languages, may be connected to the printer 1500 .
  • the external memory 14 may include NVRAM (not shown) and may be used to store printer mode setup data entered via the operating unit 1501 .
  • FIG. 2 is a block diagram showing a typical configuration for printing processing performed by the host computer 3000 for which printers and other printing devices are connected in series or across a network.
  • an application 201 a graphic engine 202 , a printer driver 203 , and a system spooler 204 exist as files saved in the external memory 11 in FIG. 1, and are loaded into the RAM 2 and are executed by the OS or by corresponding modules.
  • the application 201 and the printer driver 203 can supplement the HD of the external memory 11 by employing an FD or a CD-ROM available in the external memory or across a network (none of them is shown).
  • the application 201 which is stored in the external memory 11 , is loaded into the RAM 2 and executed; however, in order to use the printer 1500 to perform printing upon the execution of the application 201 , the graphic engine 202 , which is also loaded into the RAM 2 , is employed to output data (graphic data).
  • the graphic engine 202 also transfers the printer driver 203 that is prepared for each printing device from the external memory 11 to the RAM 2 , and directs the output of the application 201 to the printer driver 203 .
  • the graphic engine 202 then transforms a GDI (Graphic Device Interface) function received from the application 201 into a DDI (Device Driver Interface) function, which is output to the printer driver 203 .
  • the printer driver 203 transforms the DDI function received from the graphic engine 202 into a control command that the printer 1500 can recognize, such as a PDL (Page Description Language).
  • the obtained printer control command is transmitted as print data from the system spooler 204 , which is loaded into the RAM 2 by the OS, through the interface 21 to the printer 1500 .
  • the printer control system includes the arrangement shown in FIG. 3 in which print data provided by an application are temporarily spooled using intermediate code data.
  • FIG. 3 is shown an expansion of the system in FIG. 2 wherein a spool file 303 consisting of intermediate code is generated before a print command is transmitted from the graphic engine 202 to the printer driver 203 .
  • the application 201 is released from the printing process when the printer driver 203 has converted all the print commands received from the graphic engine 202 into control commands for the printer 1500 .
  • the application 201 is released from the printing process when the spooler 302 has converted all the print commands into intermediate code data and has output them to the spool file 303 .
  • the latter system requires a shorter processing time.
  • the system in FIG. 3 can process the contents of the spool file 303 .
  • the functions that are not provided by the application such as an enlargement/reduction function and N-up printing for reducing to one page a plurality of pages to be printed, can be performed for print data received from the application.
  • the system in FIG. 2 is expanded so that print data are spooled using intermediate code data, as is shown in FIG. 3.
  • the data is set in a window that is provided by the printer driver 203 , and the printer driver 203 stores the setup contents in the RAM 2 or the external memory 11 .
  • a dispatcher 301 receives a print command from the graphic engine 202 .
  • the print command that the dispatcher 301 has received from the graphic engine 202 is a print command issued by the application 201 to the graphic engine 202
  • the dispatcher 301 loads into the RAM 2 the spooler 302 stored in the external memory 11 , and transmits the print command to the spooler 302 , not to the printer driver 203 .
  • the spooler 302 converts the received print command into intermediate code and outputs the code to the spool file 303 . Subsequently, the spooler 302 obtains from the printer driver 203 the processing setup for the print data for the printer driver 203 , and stores the setup data in the spool file 303 . It should be noted that the spool file 303 is generated as a file in the external memory, but may rather be generated in the RAM 2 . The spooler 302 also loads into the RAM 2 a spool file manager 304 , which is stored in the external memory 11 , and notifies this spool file manager 304 of the generation condition of the spool file 303 .
  • the spool file manager 304 examines the contents of the print data processing setup that is stored in the spool file 303 to determine whether the printer driver 203 can prepare print data.
  • the spool file 303 manages intermediate code for each logical page that is output by the application, and as was previously mentioned, manages processing reference material that the user designates for the printer driver 203 , e.g., the setup of marginal printing (the direct printing of drawing data on one page, or the printing of data while the data size is reduced and shifted).
  • the spool file manager 304 employs the graphic engine 202 to determine that the print driver 203 can create print data, the spool file manager 304 loads into the RAM 2 a despooler 305 stored in the external memory 11 , and instructs the despooler 305 to print intermediate data that are described in the spool file 303 .
  • the spool file manager 304 also instructs the despooler 305 to process information for the effect given on a logical page that is accompanied by the processing reference.
  • the spool file manager 304 calculates position information designating a location on a physical page at which a logical page is to be printed and size information specifying the size of a logical page relative to a physical page, and instructs the despooler 305 to calculate the effect information for each physical page, including the position information and the size information. The calculation of the position information will be described later while referring to FIGS. 5 and 6.
  • the despooler 305 processes the intermediate code included in the spool file 303 in accordance with the contents of the effect information instructed by the spool file manager 304 , transforms the processed intermediate code into a GDI function, and outputs the function to the graphic engine 202 .
  • the despooler 305 then employs the logical page obtained from the spool file 303 and the effect information obtained from the spool file manager 304 to re-calculate the location and the size, on a physical page, of character data that are drawn on the logical page. Specifically, the data size is changed by a variable magnification in accordance with the setup of the margin.
  • the despooler 305 identifies the location on the physical page of a logical page that is assigned by using the position information for the logical page, and acquires the location of the data on the logical page by multiplying the distance by a variable magnification.
  • the despooler 305 transforms the thus obtained intermediate data into a GDI function, and outputs the function to the graphic engine 202 .
  • the graphic engine 202 generates a DDI function by using the GDI function received from the despooler 305 , and outputs to the dispatcher 301 a print command constituting a DDI function.
  • the dispatcher 301 transmits the print command to the printer driver 203 , not to the spooler 302 .
  • the printer driver 203 then employs the received print command to generate print data consisting of a printer control command, and outputs the data to the printer 1500 via the system spooler 204 .
  • FIG. 11 is a cross-sectional view of the internal structure of a laser beam printer (hereinafter referred to as an LBP), which is one example of the printer 1500 according to the first embodiment.
  • the printer 1500 which is the LBP, can print data for an input character pattern on a recording sheet.
  • an LBP body 740 which forms an image on a recording sheet based on a received printer control command, comprises: a printer control unit 1000 ; an operation unit 1501 ; a laser driver 702 ; a semiconductor layer 703 ; a rotary polyhedric mirror 705 ; an electrostatic drum 706 ; a developing unit 707 ; a sheet cassette 708 ; a paper feed roller 709 ; a delivery roller 710 ; an external memory 711 ; a fixing unit 712 ; a switching wedge 713 ; a face-up discharging unit 714 ; a face-down discharging unit 715 ; and a discharging tray 716 .
  • the printer control unit 1000 controls the entire LBP body 740 , and analyses character pattern information, mainly converting a printer control command into a video signal and outputting it to the laser driver 702 .
  • the printer control unit 1000 can be connected to the external memory 711 in which are stored font data and an emulation program for a page description language.
  • Operating switches and display means e.g., an LED display
  • the laser driver 702 consists of a circuit for driving the semiconductor laser 703 , and in consonance with a received video signal, changes the ON/OFF state of a laser beam 704 that is emitted by the semiconductor laser 703 .
  • the semiconductor laser 703 emits the laser beam 704 which strikes the rotary polyhedric mirror 705 .
  • the rotary polyhedric mirror 705 split the laser beam 704 into a right and a left portion for scanning the electrostatic drum 706 .
  • an electrostatic latent image corresponding to a character pattern is formed on the surface of the drum 706 .
  • the developing unit 707 is arranged around the electrostatic drum 706 and develops an electrostatic latent image that is thereafter transferred to a recording sheet.
  • the sheet cassette 708 is used, for example, to store cut-sheet recording paper.
  • the paper feed roller 709 and the delivery roller 710 feed the cut-sheet paper from the sheet cassette 708 into the LBP body 740 , and supply it to the electrostatic drum 706 .
  • the cut-sheet recording paper can be fed from a manual feed tray (not shown) that is provided above the cover of the sheet cassette 708 .
  • the fixing unit 712 heats a toner image that has been transferred to the cut-sheet recording paper and fixes it thereon.
  • the switching wedge 713 is displaced upward, the cut-sheet recording paper on which the image is formed is discharged to the discharging tray 716 by the discharging unit 714 with the recording face up.
  • the switching wedge 713 is displaced downward, the cut-sheet recording paper is discharged by the face-down discharging unit 715 with the recording face down.
  • FIG. 4 is a flowchart showing the processing performed by the despooler 305 when the margin process is designated at step S 402 in FIG. 4.
  • step S 401 intermediate code included in the spool file 303 is read.
  • step S 402 the intermediate code that is read is processed to obtain print data consonant with the contents of the processing setup that is included in the spool file 303 .
  • step S 403 a drawing command is again output to the graphic engine 202 .
  • step S 404 the processing is terminated at step S 404 , but when some intermediate code remains, program control returns to step S 401 , whereat the processing for outputting the intermediate code is repeated.
  • step S 601 the parameter for margins designated by the user is read from the spool file 303 .
  • step S 602 the size of an area, excluding the margins obtained at step S 601 , is acquired as a printable area using the size of a sheet that is currently being employed.
  • step S 603 the size of the printable area obtained at step S 602 is compared with the size of the data to be printed, and the maximum enlargement/reduction ratio that does not effect the length/breadth ratio is calculated so that as much data as possible can be printed in the printable area without distortion.
  • step S 604 the data to be printed are enlarged/reduced according to the enlargement/reduction ratio, and at step S 605 the data to be printed are shifted and printed while taking the margin values into account. Since at step S 605 the data to be printed are so enlarged/reduced that the length/breadth ratio of the original data is not changed, the data to be printed are not simply shifted a distance that is equivalent to the margin value, but, depending on the margin value, more blank space is acquired so that the print position can be determined while taking this extra space into account.
  • the size of the printable area at step S 602 there are two printable area sizes: the physical size of a sheet and the effective printing area of the printer. Accordingly, two methods are employed to calculate the size of the printable area at step S 602 : a method according to which margins are simply subtracted from a sheet, and a method according to which margins are subtracted from an effective printing area. Similarly, to calculate an enlargement/reduction ratio, either the size of a sheet or the effective printing area is employed as the size of the data to be printed. Further, the smallest circumscribed rectangle in which can be included all of the data to be printed can be regarded as the data size.
  • FIG. 5 is a diagram showing the concept of the margin setting method according to the first embodiment whereby the enlargement/reduction ratio and the binding margins are calculated based on the size of the sheet. Specifically shown is an example where both the size of the printing area and the size of print data are calculated based on the size of the sheet. That is, data to be printed are reduced at the greatest reduction ratio possible so that all the data fit in the printable area without the length/breadth ratio of the size of the sheet being changed, and so that the reduced size data are centered and do not extend outside the limits of the printable area.
  • the size of a sheet to be output differs from the sheet size for the data to be printed, as in fixed enlargement/reduction, it may be difficult to obtain the sheet size for the data during the printing process.
  • the sheet size for the data to be printed is held in the spool file 303 and is used at step S 603 to calculate the enlargement/reduction ratio, or a database for the sheet size is prepared and an examination of the size is performed based on the database.
  • FIG. 7 is a diagram showing an example margin parameter acquisition means for designating length and breadth margin parameters according to the first embodiment.
  • the check box for the margin setting is selected, the length and breadth margin values can be entered.
  • FIG. 8 is a diagram showing a margin setup example for bookbinding according to the first embodiment. Margins are not set at the edges of the sheet but in the center of the sheet. When the layout control for the above described margin setting process is performed, a conventional defect can be resolved that prevents the setting of a margin for bookbinding when a binding margin is located in the center of a sheet, and a binding margin can be set for bookbinding.
  • the printer control system has the despooler 305 , which calculates the size of the printable area based on the margin parameters set by the user, enlarges/reduces the size of data to be printed in consonance with the obtained printable area, prepares a layout for the enlarged/reduced data to be printed and the margins on a sheet, and employs the layout to print the data. Therefore, the margins are not simply set by shifting the data to be printed vertically or horizontally, but instead the size of the data is enlarged or reduced while taking into account the reduction in the size of the printing area due to the setting of margins, and the loss of the data to be printed can be prevented.
  • the data to be printed are reduced at the greatest enlargement/reduction ratio available relative to the sheet. Therefore, all the print data can be printed, without any of the data extending outside the limits of the printable area and thus not being printed, as occurs with the conventional margin setting.
  • margins are not set only vertically or horizontally, but can be set for the vertical and horizontal directions. Furthermore, when a binding margin is required at the fold of a sheet that is folded once, a margin can be set at the position of the fold. Therefore, since a binding margin can be placed in the center instead of at the edges of the sheet, binding margins for bookbinding can be set.
  • a printer control system comprises: a host computer 3000 , which includes a CPU 1 , a RAM 2 , a ROM 3 , a keyboard controller (KBC) 5 , a CRT controller (CRTC) 6 , a disk controller (DKC) 7 , a printer controller (PRTC) 8 , a keyboard (KB) 9 , a CRT display (CRT) 10 and an external memory 11 ; and a printer 1500 , which includes a CPU 12 , a RAM 19 , a ROM 13 , an input section 18 , an engine interface (I/F) 16 , a memory controller (MC) 20 , a printer engine 17 , an operation unit 1501 and an external memory 14 (see FIG.
  • a host computer 3000 which includes a CPU 1 , a RAM 2 , a ROM 3 , a keyboard controller (KBC) 5 , a CRT controller (CRTC) 6 , a disk controller (DKC) 7 , a printer controller (PRTC) 8
  • the control configuration of the host computer 3000 for generating data to be printed according to the second embodiment (see FIG. 2), the control configuration expanded from FIG. 2 for generating data to be printed (see FIG. 3), and the internal structure of the printer 1500 (see FIG. 11) are also the same as those in the first embodiment and no explanation for them will be given.
  • FIG. 9 is a flowchart showing the margin setting process when N-up printing is to be performed. According to N-up printing, one sheet is divided into N areas, and a page is reduced and located in each of N areas to print data for N pages on a single sheet.
  • step S 602 the size of the printable area on a sheet, excluding the margins, is calculated. Then, at step S 901 in FIG. 9 the obtained printable area is divided into N areas for N-up printing. At step S 902 the N areas and an area for data to be printed are employed to calculate the maximum enlargement/reduction ratio for printing data without the length/breadth ratio of the data to be printed being unchanged. At step S 903 the data to be printed are enlarged/reduced according to the enlargement/reduction ratio. At step S 904 the layout process is performed to calculate the layout position while taking into account the margins for the common N-up printing layout.
  • FIG. 10 is a diagram showing output print examples when the N-up printing process and the margin setting process are combined according to the second embodiment. These are a standard four-page printing example and a four-page printing example with the binding margins for the width being set.
  • the margin can be set even when special printing, such as N-up printing, is performed.
  • the printer control system can calculate the size of the printable area, excluding the margins, of an output sheet, divide the printable area into N areas for N-up printing, employ the N areas and data to be printed to calculate the maximum enlargement/reduction ratio for printing the data without changing the length/breadth ratio, enlarge/reduce the print data at the length/breadth ratio, and calculate the layout for the standard N-up printing while taking the margins into account. Therefore, the margin can be set by employing a combined margin setting method and special printing method, such as N-up printing or fixed enlargement/reduction printing, that accompanies an enlarged/reduced layout.
  • the margins are not set simply by shifting them horizontally/vertically, and as the data to be printed are enlarged or reduced while taking into account a reduction in the size of the printing area due to the setting of the margins, the loss of data during printing can be prevented. That is, even when large margins are set, data to be printed are reduced at the maximum enlargement/reduction ratio so that the obtained size of the data does not exceed the size of the sheet. Thus, all the data can be constantly printed without the data extending outside the printable area and being lost, as occurs with the conventional margin setting.
  • the margins are not set only horizontally/vertically, but can be combined and set for the vertical and the horizontal directions.
  • a margin when a binding margin is required along the fold of a sheet that is folded once, a margin can be set at the position of the fold. Therefore, since a binding margin can be set in the center instead of at the edge of a sheet, binding margins for bookbinding can be set.
  • the present invention can be applied to a system that is constituted by a plurality of devices (e.g., a host computer, an interface device, a reader and a printer), or to an apparatus (e.g., a copier, a printer or a facsimile machine) that includes a single device.
  • a memory medium on which is stored software program code for implementing the functions in the previous embodiments is supplied to a system or to an apparatus, and the computer (or a CPU or an MPU) in the system or the apparatus reads the program code from the memory medium.
  • the program code read from the memory medium accomplishes the functions of the above described embodiments, and the memory medium on which such program code is recorded constitutes the present invention.
  • a memory medium for supplying such program code can be, for example, a floppy disk, a hard disk, an optical disk, a magneto optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, or a ROM.
  • the scope of the present invention includes not only a case where the functions in the previous embodiment can be performed when program code is read and executed by the computer, but also a case where, according to an instruction in the program code, an OS (Operating System) running on the computer, etc., performs one part, or all, of the actual processing to accomplish the functions included in the above embodiments.
  • an OS Operating System
  • the present invention includes a case where program code, read from a memory medium, is written in a memory that is mounted on a function expansion board inserted into a computer, or a function expansion unit connected to a computer, and in consonance with a program code instruction, a CPU mounted on the function expansion board, or the function expansion unit performs one part, or all, of the actual processing in order to implement the functions included in the above described embodiments.
  • a print layout device for providing a layout for a recording sheet comprises: setting means for setting a margin for a sheet; determination means for ascertaining the size of a printable area based on the margin that is set; enlargement/reduction means for enlarging or reducing data to be printed in consonance with the printable area; and layout means for providing a layout for the margin for the sheet and for the data to be printed that are enlarged or reduced and for employing the layout to control the printing. Therefore, even when large margins are set, all the data can consistently be printed without the size of the print data exceeding the size of the sheet, as occurs with the conventional margin setting method.
  • the setting means can set a binding margin adjacent to the line of the fold in a sheet that is folded once, a binding margin can be placed in the center of the sheet instead of along the edge.
  • a binding margin can be set for a print style for which a binding margin must be set at the position of the fold in a double folded sheet, i.e., for bookbinding.
  • the setting means can set margins that are equidistant from the line of the fold in the center of a sheet that is folded once, as well as the invention defined in claim 3, a binding margin can be set for bookbinding.
  • the enlargement/reduction means enlarges or reduces data to be printed using an enlargement/reduction ratio that provides a maximum inclusive area that does not exceed the limits of a printable area. Therefore, even when large margins are set, data to be printed are reduced at the maximum enlargement/reduction ratio so that the obtained size of the data does not exceed the size of the sheet, and all the data can consistently be printed without the data extending outside the printable area and not being printed, as occurs with the conventional margin setting method.
  • the enlargement/reduction means employs a designated, arbitrary enlargement/reduction ratio to enlarge or reduce the data to be printed
  • the print data can be enlarged/reduced not only at the maximum enlargement/reduction ratio that ensures the size of the data to be printed does not exceed the size of the sheet, but also at an arbitrary enlargement/reduction ratio.
  • the enlargement/reduction means so enlarges or reduces the data to be printed that the ratio of the length and the width of the data, after being enlarged or reduced, to that of the original data is not changed, the printing results are preferably well-balanced.
  • the layout means centers the enlarged or reduced data to be printed in an area on a sheet that excludes the binding margins, and performs the layout process, the printing results can fit within the printable area on the sheet, and appear well-balanced.
  • a print layout device further comprises storage means for storing size information for data to be printed that is used for the determination of an enlargement/reduction ratio, a precise enlargement/reduction ratio can be determined.
  • the enlargement/reduction means employs the size of the data to be printed and the sheet size to obtain an enlargement/reduction ratio for providing the binding margin
  • the layout means performs a layout process for a sheet based on the enlargement/reduction ratio that is obtained, and, in accordance with the layout, prints out the data to be printed.
  • a precise layout can also be used for bookbinding printing.
  • the layout means prints data for a plurality of pages on one sheet using a layout for a sheet for which a margin has been set. Therefore, the margin can be set by a combination of the margin setting method and a special printing method, such as the N-up printing method whereby data for a plurality of pages are printed on a single sheet.
  • the layout means can adjust the position of binding margins on the obverse and the reverse sides of a sheet, so that for double-sided printing the binding margin will be located at the same position on the sheet.
  • a precise binding margin can be set for double-sided printing.
  • the present invention can be applied for a system by which the data to be printed can be transmitted by an upper-level device, such as a computer, to a printing device, such as a printer. Therefore, in such a system, all the data can be printed without the data extending outside the printable area and not being printed, as occurred in the conventional margin setting. Further, a special printing method, such as N-up printing, can be also used to set the margin. And binding margins can be set for bookbinding.
  • a print layout device comprises: saving means for temporarily saving data in an intermediate code form that differs from that for the data to be printed; and preparation means for preparing data to be printed based on the data that are temporarily saved. Therefore, in a system wherein an upper-level device temporarily saves data in the intermediate code form and prepares and transmits print data to a print device, all the data to be printed can be printed without the data extending outside the printable area and not being printed, as occurs with the conventional margin setting. Further, a special printing method, such as N-up printing, can also be used to set a margin. And binding margins can be set for bookbinding.
  • the processing means changes the size of the intermediate data to a maximum size that is available in the printable area and for which the ratio of the width and the length of the drawing data is not changed.
  • the printed results are preferably well-balanced.
  • drawing data are GDI (Graphical Device Interface) data
  • the present invention can be applied for a system employing an application for outputting a GDI function.
  • the print information is DDI (Device Driver Interface) information
  • the present invention can be applied for a system employing a graphic engine for outputting a DDI.
  • the present invention can be applied for a system for generating print data in a page description language.

Abstract

Provided are a print layout device, a print layout method and a storage medium therefor with which all data can always be printed by ensuring that data to be printed do not extend out beyond the limits of a printable area, as may occur when the conventional margin setting process is used, with which a margin can be set by employing an additional special print method, such as an N-up print method, and with which a binding margin can be set for bookbinding. In addition, provided is a configuration for implementing those apparatuses and devices without modifying the conventional portions. A host computer comprises a despooler, which calculates a printable area using margin parameters set by a user, enlarges/reduces print data in consonance with the obtained printable area, performs a layout for the resultant data to be printed and margins on a sheet, and prints the data using that layout. The despooler outputs prepared drawing data to a graphic engine to provide a printer driver in a conventional manner.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention [0001]
  • The present invention relates to a print layout device, a print layout method and a storage medium, and in particular to a print layout device, a print layout method and a storage medium that are appropriate for a system constituted by an information processing apparatus, such as a personal computer, and a printer for printing data for which an optimal margin is set. [0002]
  • 2. Related Background Art [0003]
  • Conventionally, for printing, a binding margin is set simply by shifting a print position horizontally or vertically a distance equivalent to the binding margin. Therefore, when a specific binding margin has been set, data to be printed may extend out beyond the limits of the printable area on a sheet. And when a binding margin is located in the center of a sheet, as is a margin for bookbinding, setting the margin is not possible. [0004]
  • The following problems are inherent to the above prior art. Since, as is described above, the print position is simply shifted horizontally or vertically when setting a margin, for a specific margin, data to be printed extend out beyond the limits of a printable area when the print position has been shifted, and some data are not printed. [0005]
  • Furthermore, to staple the left upper corner of a sheet, for example, a margin is generally set that it is shifted to the right and down (a compound directional movement to the right and down). With the conventional margin setting process, however, margins can be set only vertically and horizontally (along the long side and the short side of a sheet). In addition, since only vertical and horizontal margins can be set, a binding margin can not be set for that portion of a sheet that is folded once for bookbinding. [0006]
  • SUMMARY OF THE INVENTION
  • To resolve the above shortcomings, it is one objective of the present invention to provide a print layout device, a print layout method and a storage medium therefor with which all data can always be printed by ensuring that data to be printed do not extend out beyond the limits of a printable area, as may occur when the conventional margin setting process is used; with which a margin can be set by employing in addition a special print method, such as an N-up print method; and with which a binding margin can be set for bookbinding. [0007]
  • It is another objective of the present invention to provide a system wherein, upon receiving from a user an instruction for the printing of a margin, an information processing apparatus, such as a host, can prepare data for margin printing, and can output to a printer the data that are to be printed. [0008]
  • It is an additional objective of the present invention to provide, without a new printer driver being prepared for a conventional printer that has no margin print function, a system that can instruct margin printing and obtain as an output a result desired by a user, i.e., a portion for preparing a PDL (Page Description Language) from a DDI (Device Driver Interface) function that is output by a graphic engine, or rather, a GDI (Graphical Device Interface). [0009]
  • To achieve the above objectives, according to the present invention, a print layout device for providing a layout for a recording sheet comprises: [0010]
  • setting means for setting a margin for a sheet; [0011]
  • determination means for ascertaining the size of a printable area based on the margin that is set; [0012]
  • enlargement/reduction means for enlarging or reducing data to be printed in consonance with the printable area; and [0013]
  • layout means for providing a layout for the margin for the sheet and for the data to be printed that are enlarged or reduced, and for employing the layout to control the printing. [0014]
  • To achieve the above objectives, according to the present invention, the setting means is capable of independently setting vertical and horizontal margins for a sheet. [0015]
  • To achieve the above objectives, according to the present invention, the setting means is capable of setting a binding margin adjacent to the line of the fold in a sheet that is folded once. [0016]
  • To achieve the above objectives, according to the present invention, the setting means is capable of setting margins that are equidistant from the line of the fold in the center of a sheet that is folded once. [0017]
  • To achieve the above objectives, according to the present invention, the enlargement/reduction means enlarges or reduces data to be printed using an enlargement/reduction ratio that provides a maximum inclusive area that does not exceed the limits of a printable area. [0018]
  • To achieve the above objectives, according to the present invention, the enlargement/reduction means employs a designated, arbitrary enlargement/reduction ratio to enlarge or reduce the data to be printed. [0019]
  • To achieve the above objectives, according to the present invention, the enlargement/reduction means so enlarges or reduces the data to be printed that the ratio of the length and the width of the data, after being enlarged or reduced, to that of the original data is not changed. [0020]
  • To achieve the above objectives, according to the present invention, the layout means centers the enlarged or reduced data to be printed in an area on a sheet that excludes the binding margins, and performs the layout process. [0021]
  • To achieve the above objectives, according to the present invention, a print layout device further comprises storage means for storing size information for data to be printed that is used for the determination of an enlargement/reduction ratio. [0022]
  • To achieve the above objectives, according to the present invention, when a size for data to be printed and a sheet size differ, the enlargement/reduction means employs the size of the data to be printed and the sheet size to obtain an enlargement/reduction ratio for providing the binding margin, and the layout means performs a layout process for a sheet based on the enlargement/reduction ratio that is obtained and, in accordance with the layout, prints out the data to be printed. [0023]
  • To achieve the above objectives, according to the present invention, the layout means prints data for a plurality of pages on one sheet using a layout for a sheet for which a margin has been set. [0024]
  • To achieve the above objectives, according to the present invention, the layout means is capable of adjusting the position of binding margins on the obverse and the reverse sides of a sheet, so that for double-sided printing the binding margin will be located at the same position on the sheet. [0025]
  • To achieve the above objectives, to perform a printing process the present invention can be applied for a system by which the data to be printed can be transmitted by an upper-level device, such as a computer, to a printing device, such as a printer. [0026]
  • To achieve the above objectives, the present invention comprises: [0027]
  • saving means for temporarily saving data in an intermediate code form that differs from that for the data to be printed; and [0028]
  • preparation means for preparing data to be printed based on the data that are temporarily saved. [0029]
  • To achieve the above objectives, according to the present invention, a print layout device for performing a layout process for a recording sheet comprises: [0030]
  • dispatcher means for receiving, from drawing means and depending on which OS is used, common print information that is generated and is based on drawing data prepared by an arbitrary application; [0031]
  • intermediate data conversion means for converting into intermediate data the print information received by the dispatcher means and for storing the intermediate data in spooling means; [0032]
  • setting means for setting a margin for the sheet; [0033]
  • processing means for processing the intermediate data stored in the spooling means in consonance with a printable area based on the margin that is acquired, and for outputting the processed intermediate data in the drawing data form to the drawing means; and [0034]
  • print data generation means for converting the print information received by the dispatcher means into print data consisting of a control command and for outputting the print data to an external device. [0035]
  • To achieve the above objectives, according to the present invention, the processing means changes the size of the intermediate data to a maximum size that is available in the printable area and for which the ratio of the width and the length of the drawing data is not changed. [0036]
  • To achieve the above objectives, according to the present invention, the drawing data are GDI (Graphical Device Interface) data. [0037]
  • To achieve the above objectives, according to the present invention, the print information is DDI (Device Driver Interface) information. [0038]
  • To achieve the above objectives, according to the present invention, the data to be printed are written in a page description language.[0039]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram illustrating the general arrangement of a printer control system according to a first and a second embodiments of the present invention. [0040]
  • FIG. 2 is a block diagram illustrating an arrangement for a typical printing process performed by a host computer according to the first and the second embodiments of the present invention; [0041]
  • FIG. 3 is a block diagram illustrating a configuration according to the first and the second embodiments of the present invention for temporarily spooling a print command issued by an application as intermediate code before the print command is converted into a printer control command; [0042]
  • FIG. 4 is a flowchart showing despooler processing performed according to the first embodiment of the present invention; [0043]
  • FIG. 5 is an explanatory diagram showing the concept, according to the first embodiment of the present invention, for the performance of a margin setting method for calculating an enlargement/reduction ratio and a binding margin based on a sheet size; [0044]
  • FIG. 6 is a flowchart showing the margin setting process according to the first embodiment of the present invention; [0045]
  • FIG. 7 is an explanatory diagram illustrating an example margin parameter acquisition means, according to the first embodiment of the present invention, for designating margin parameters for the width and the length; [0046]
  • FIG. 8 is an explanatory diagram, according to the first embodiment of the present invention, showing example margin settings for bookbinding; [0047]
  • FIG. 9 is a flowchart showing the processing, according to the second embodiment of the present invention, when N-up printing and margin setting are combined; [0048]
  • FIG. 10 is an explanatory diagram showing an example output, according to the second embodiment of the present invention, when N-up printing and margin setting are combined; and [0049]
  • FIG. 11 is a cross-sectional view of the internal arrangement of a printer according to the first and the second embodiment of the present invention.[0050]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • The preferred embodiments of the present invention will be described while referring to the drawings. [0051]
  • [1] First Embodiment [0052]
  • The arrangement of a printer control system according to the first embodiment of the present invention will now be described while referring to the block diagram in FIG. 1. So long as the function of the present invention can be implemented, the present invention can be applied for a single apparatus, for a system constituted by a plurality of apparatuses, or for a system for performing processing across a network, such as a LAN (Local Area Network) or a WAN (Wide Area Network). [0053]
  • The present invention can be applied for an FD (a Floppy Disk), a CD-ROM (a Compact Disk ROM), an Internet Web site, or a BBS (a Bulletin Board System: a message exchange system using computers), such as Nifty Serve. That is, a program according to the present invention can be supplied to the printer control system on an FD or a CD-ROM, or the printer control system can be connected to the Internet or to Nifty Serve. [0054]
  • The printer control system according to the first embodiment is constituted by a [0055] host computer 3000 and a printer 1500. The host computer 3000 comprises: a CPU 1; a RAM 2; a ROM 3; a keyboard controller (KBC) 5, a CRT controller (CRTC) 6; a disk controller (DKC) 7; a printer controller (PRTC) 8; a keyboard (KB) 9; a CRT display (CRT) 10; and an external memory 11. The printer 1500 comprises: a CPU 12; a RAM 19; a ROM 13; an input section 18; an engine interface (I/F) 16; a memory controller (MC) 20; a printer engine 17; an operating unit 1501; and an external memory 14.
  • First, the individual sections of the [0056] host computer 3000 will be described in detail. The CPU 1 is a central processing unit for the overall control of those devices that are connected to a system bus 4. The CPU 1 employs a document processing program stored in a program ROM 3 b (which will be described later) in the ROM 3, or in an external memory 11, to process documents consisting of mixtures of graphics, images, characters and charts (including table calculations). In addition, the CPU 1 performs development (rasterization) for an outline font into, for example, a display data RAM set in the RAM 2 to enable WYSIWY (What You See Is What You Get: a function for printing data having the sizes and the shapes seen on the CRT display screen) for the CRT display 10.
  • Furthermore, the [0057] CRT 10 opens various registered windows in response to a command designated using a mouse cursor (not shown) on the CRT display 10, and performs various data processes. When a user prints data using the printer 1500, he or she can open a window for the setup for printing, and can set a printing method for a printer driver, including the reference for the printer 1500 and the selection of a print mode.
  • The [0058] RAM 2 serves as the main memory or as a work area for the CPU 1. The ROM 3 includes a font ROM 3 a, a program ROM 3 b and a data ROM 3 c. In the font ROM 3 a or the external memory 11 are stored font data that are used for the document process. In the program ROM 3 b or the external memory 11 is stored an operating system (hereinafter referred to as an OS), which is a control program for the CPU 1. In the data ROM 3 c or the external memory are stored various data used for the document process, etc.
  • The keyboard controller (KBC) [0059] 5 controls the entry of data at the keyboard 9 or a pointing device (not shown). The CRT controller (CRTC) 6 controls the display on the CRT display 10. The disk controller (DKC) 7 controls the access of the external memory 11. The printer controller (PRTC) 8 is connected to the printer 1500, via the bidirectional interface 21, for communication with the printer 1500. Provided for the keyboard 9 are a variety of keys.
  • The CRT display (CRT) [0060] 10 displays graphics, images, characters and charts. The external memory 11 includes a hard disk (HD) and a floppy disk (FD), and is used to store a boot program, various application programs, font data, a user file, an editing file, and a printer control command generation program (hereinafter referred to as a printer driver).
  • The above described [0061] CPU 1, RAM 2, ROM 3, keyboard controller (KBC) 5, CRT controller (CRTC) 6, disk controller (DKC) 7, and printer controller (PRTC) 8 are arranged in the computer control unit 2000.
  • The individual sections of the [0062] printer 1500 will now be described in detail. The CPU 12 is a central processing unit that controls all the devices connected to the system bus 15, and that employs a control program stored in a program ROM 13 b (which will be described later) in the ROM 13, or a control program stored in the external memory 14, to output an image signal as output data to the printer engine 17. In addition, the CPU 12 can communicate with the host computer 3000 via the input section 18 and can transmit data available at the printer 1500 to the host computer 3000.
  • The [0063] RAM 19 serves as a main memory or a work area for the CPU 12, and its memory capacity can be expanded using an optional RAM (not shown) that is connected to an expansion port. The RAM 19 is employed as an output data development area, an environmental data storage area, an NVRAM, etc. The ROM 13 includes a font ROM 13 a, a program ROM 13 b, and a data ROM 13 c. In the font ROM 13 a are stored font data used to generate the output data: in the program ROM 13 b is stored a control program for the CPU 12; and in the data ROM 13 c is stored information used by the host computer 3000 when no external memory 14, such as a hard disk, is connected to the printer 1500.
  • The [0064] input section 18 is used for the exchange of data, via the bidirectional interface 21, by the printer 1500 and the host computer 3000: the engine interface (IF) 16 is used for the exchange of data by the CPU 12 and the printer engine 17; the memory controller (MC) 20 controls access to the external memory 14; the printer engine 17 conducts printing under the control of the CPU 12; and the operating unit 1501 includes various operating switches and display means (e.g., an LED display).
  • The [0065] external memory 14 is constituted by a hard disk (HD) and an IC card, and is optionally connected to the printer 1500. The external memory 14 is used to store font data, emulation data and form data, and access to it is controlled by the memory controller (MC) 20. It should be noted that more than one external memory 14 can be provided. In other words, a plurality of external memories, in which are stored not only built-in fonts but also an option card and a program for interpreting different printer control languages, may be connected to the printer 1500. In addition, the external memory 14 may include NVRAM (not shown) and may be used to store printer mode setup data entered via the operating unit 1501.
  • The above described [0066] CPU 12, RAM 19, ROM 13, input section 18, engine interface (I/F) 16, and memory controller (MC) 20 are arranged in the printer control unit 1000.
  • FIG. 2 is a block diagram showing a typical configuration for printing processing performed by the [0067] host computer 3000 for which printers and other printing devices are connected in series or across a network. In FIG. 2, an application 201, a graphic engine 202, a printer driver 203, and a system spooler 204 exist as files saved in the external memory 11 in FIG. 1, and are loaded into the RAM 2 and are executed by the OS or by corresponding modules.
  • The [0068] application 201 and the printer driver 203 can supplement the HD of the external memory 11 by employing an FD or a CD-ROM available in the external memory or across a network (none of them is shown). The application 201, which is stored in the external memory 11, is loaded into the RAM 2 and executed; however, in order to use the printer 1500 to perform printing upon the execution of the application 201, the graphic engine 202, which is also loaded into the RAM 2, is employed to output data (graphic data).
  • The [0069] graphic engine 202 also transfers the printer driver 203 that is prepared for each printing device from the external memory 11 to the RAM 2, and directs the output of the application 201 to the printer driver 203. The graphic engine 202 then transforms a GDI (Graphic Device Interface) function received from the application 201 into a DDI (Device Driver Interface) function, which is output to the printer driver 203. The printer driver 203 transforms the DDI function received from the graphic engine 202 into a control command that the printer 1500 can recognize, such as a PDL (Page Description Language). The obtained printer control command is transmitted as print data from the system spooler 204, which is loaded into the RAM 2 by the OS, through the interface 21 to the printer 1500.
  • In addition to the printing system constituted by the [0070] printer 1500 and the host computer 3000 shown in FIGS. 1 and 2, the printer control system according to the first embodiment includes the arrangement shown in FIG. 3 in which print data provided by an application are temporarily spooled using intermediate code data.
  • In FIG. 3 is shown an expansion of the system in FIG. 2 wherein a [0071] spool file 303 consisting of intermediate code is generated before a print command is transmitted from the graphic engine 202 to the printer driver 203. In the system in FIG. 2 the application 201 is released from the printing process when the printer driver 203 has converted all the print commands received from the graphic engine 202 into control commands for the printer 1500.
  • On the other hand, in the system in FIG. 3, the [0072] application 201 is released from the printing process when the spooler 302 has converted all the print commands into intermediate code data and has output them to the spool file 303. Usually, the latter system requires a shorter processing time. Furthermore, the system in FIG. 3 can process the contents of the spool file 303. As a result, the functions that are not provided by the application, such as an enlargement/reduction function and N-up printing for reducing to one page a plurality of pages to be printed, can be performed for print data received from the application.
  • In order to implement these functions, the system in FIG. 2 is expanded so that print data are spooled using intermediate code data, as is shown in FIG. 3. For processing the print data, generally, the data is set in a window that is provided by the [0073] printer driver 203, and the printer driver 203 stores the setup contents in the RAM 2 or the external memory 11.
  • A detailed explanation will be given for the system in FIG. 3. In the expanded processing system, a [0074] dispatcher 301 receives a print command from the graphic engine 202. When the print command that the dispatcher 301 has received from the graphic engine 202 is a print command issued by the application 201 to the graphic engine 202, the dispatcher 301 loads into the RAM 2 the spooler 302 stored in the external memory 11, and transmits the print command to the spooler 302, not to the printer driver 203.
  • The [0075] spooler 302 converts the received print command into intermediate code and outputs the code to the spool file 303. Subsequently, the spooler 302 obtains from the printer driver 203 the processing setup for the print data for the printer driver 203, and stores the setup data in the spool file 303. It should be noted that the spool file 303 is generated as a file in the external memory, but may rather be generated in the RAM 2. The spooler 302 also loads into the RAM 2 a spool file manager 304, which is stored in the external memory 11, and notifies this spool file manager 304 of the generation condition of the spool file 303.
  • The [0076] spool file manager 304 examines the contents of the print data processing setup that is stored in the spool file 303 to determine whether the printer driver 203 can prepare print data. The spool file 303 manages intermediate code for each logical page that is output by the application, and as was previously mentioned, manages processing reference material that the user designates for the printer driver 203, e.g., the setup of marginal printing (the direct printing of drawing data on one page, or the printing of data while the data size is reduced and shifted). Therefore, if logical pages that are required in accordance with the processing references stored in the spool file 303 are managed in the spool file 303, all the pages required for the preparation of print data are obtained, so that it can be ascertained that the printer driver 203 can prepare print data. When the spool file manager 304 employs the graphic engine 202 to determine that the print driver 203 can create print data, the spool file manager 304 loads into the RAM 2 a despooler 305 stored in the external memory 11, and instructs the despooler 305 to print intermediate data that are described in the spool file 303. At this time, the spool file manager 304 also instructs the despooler 305 to process information for the effect given on a logical page that is accompanied by the processing reference. When, for example, marginal printing is designated, the spool file manager 304 calculates position information designating a location on a physical page at which a logical page is to be printed and size information specifying the size of a logical page relative to a physical page, and instructs the despooler 305 to calculate the effect information for each physical page, including the position information and the size information. The calculation of the position information will be described later while referring to FIGS. 5 and 6.
  • The [0077] despooler 305 processes the intermediate code included in the spool file 303 in accordance with the contents of the effect information instructed by the spool file manager 304, transforms the processed intermediate code into a GDI function, and outputs the function to the graphic engine 202. The despooler 305 then employs the logical page obtained from the spool file 303 and the effect information obtained from the spool file manager 304 to re-calculate the location and the size, on a physical page, of character data that are drawn on the logical page. Specifically, the data size is changed by a variable magnification in accordance with the setup of the margin. When margins are provided at the right and the left, and at the top and the bottom, the size of the data is calculated so that on one of sides it occupies the maximum space available in the printable area. The despooler 305 identifies the location on the physical page of a logical page that is assigned by using the position information for the logical page, and acquires the location of the data on the logical page by multiplying the distance by a variable magnification. The despooler 305 transforms the thus obtained intermediate data into a GDI function, and outputs the function to the graphic engine 202. The graphic engine 202 generates a DDI function by using the GDI function received from the despooler 305, and outputs to the dispatcher 301 a print command constituting a DDI function. When the DDI function print command transmitted by the graphic engine 202 to the dispatcher 301 is one consisting of the GDI function issued by the despooler 305 to the graphic engine 202, the dispatcher 301 transmits the print command to the printer driver 203, not to the spooler 302. The printer driver 203 then employs the received print command to generate print data consisting of a printer control command, and outputs the data to the printer 1500 via the system spooler 204.
  • FIG. 11 is a cross-sectional view of the internal structure of a laser beam printer (hereinafter referred to as an LBP), which is one example of the [0078] printer 1500 according to the first embodiment. The printer 1500, which is the LBP, can print data for an input character pattern on a recording sheet. In the printer 1500, an LBP body 740, which forms an image on a recording sheet based on a received printer control command, comprises: a printer control unit 1000; an operation unit 1501; a laser driver 702; a semiconductor layer 703; a rotary polyhedric mirror 705; an electrostatic drum 706; a developing unit 707; a sheet cassette 708; a paper feed roller 709; a delivery roller 710; an external memory 711; a fixing unit 712; a switching wedge 713; a face-up discharging unit 714; a face-down discharging unit 715; and a discharging tray 716.
  • The structures and the operations of the individual sections will now be described in detail. The [0079] printer control unit 1000 controls the entire LBP body 740, and analyses character pattern information, mainly converting a printer control command into a video signal and outputting it to the laser driver 702. The printer control unit 1000 can be connected to the external memory 711 in which are stored font data and an emulation program for a page description language. Operating switches and display means (e.g., an LED display) are arranged for the operating unit 1501, as is described above.
  • The [0080] laser driver 702 consists of a circuit for driving the semiconductor laser 703, and in consonance with a received video signal, changes the ON/OFF state of a laser beam 704 that is emitted by the semiconductor laser 703. The semiconductor laser 703 emits the laser beam 704 which strikes the rotary polyhedric mirror 705. The rotary polyhedric mirror 705 split the laser beam 704 into a right and a left portion for scanning the electrostatic drum 706. When the electrostatic drum 706 is scanned by the laser beam 704, an electrostatic latent image corresponding to a character pattern is formed on the surface of the drum 706.
  • The developing [0081] unit 707 is arranged around the electrostatic drum 706 and develops an electrostatic latent image that is thereafter transferred to a recording sheet. The sheet cassette 708 is used, for example, to store cut-sheet recording paper. The paper feed roller 709 and the delivery roller 710 feed the cut-sheet paper from the sheet cassette 708 into the LBP body 740, and supply it to the electrostatic drum 706. In this case, the cut-sheet recording paper can be fed from a manual feed tray (not shown) that is provided above the cover of the sheet cassette 708.
  • The [0082] fixing unit 712 heats a toner image that has been transferred to the cut-sheet recording paper and fixes it thereon. When the switching wedge 713 is displaced upward, the cut-sheet recording paper on which the image is formed is discharged to the discharging tray 716 by the discharging unit 714 with the recording face up. When the switching wedge 713 is displaced downward, the cut-sheet recording paper is discharged by the face-down discharging unit 715 with the recording face down.
  • The general processing performed by the [0083] despooler 305 of the thus structured printer control system according to the first embodiment will now be described in detail while referring to the flowcharts in FIGS. 4 and 6. FIG. 4 is a flowchart showing the processing performed by the despooler 305 when the margin process is designated at step S402 in FIG. 4.
  • In FIG. 4, at step S[0084] 401 intermediate code included in the spool file 303 is read. At step S402 the intermediate code that is read is processed to obtain print data consonant with the contents of the processing setup that is included in the spool file 303. At step S403, a drawing command is again output to the graphic engine 202. When all the intermediate code has been output, the processing is terminated at step S404, but when some intermediate code remains, program control returns to step S401, whereat the processing for outputting the intermediate code is repeated.
  • In FIG. 6, at step S[0085] 601 the parameter for margins designated by the user is read from the spool file 303. At step S602 the size of an area, excluding the margins obtained at step S601, is acquired as a printable area using the size of a sheet that is currently being employed. At step S603 the size of the printable area obtained at step S602 is compared with the size of the data to be printed, and the maximum enlargement/reduction ratio that does not effect the length/breadth ratio is calculated so that as much data as possible can be printed in the printable area without distortion.
  • At step S[0086] 604 the data to be printed are enlarged/reduced according to the enlargement/reduction ratio, and at step S605 the data to be printed are shifted and printed while taking the margin values into account. Since at step S605 the data to be printed are so enlarged/reduced that the length/breadth ratio of the original data is not changed, the data to be printed are not simply shifted a distance that is equivalent to the margin value, but, depending on the margin value, more blank space is acquired so that the print position can be determined while taking this extra space into account.
  • In the common printing process, there are two printable area sizes: the physical size of a sheet and the effective printing area of the printer. Accordingly, two methods are employed to calculate the size of the printable area at step S[0087] 602: a method according to which margins are simply subtracted from a sheet, and a method according to which margins are subtracted from an effective printing area. Similarly, to calculate an enlargement/reduction ratio, either the size of a sheet or the effective printing area is employed as the size of the data to be printed. Further, the smallest circumscribed rectangle in which can be included all of the data to be printed can be regarded as the data size.
  • FIG. 5 is a diagram showing the concept of the margin setting method according to the first embodiment whereby the enlargement/reduction ratio and the binding margins are calculated based on the size of the sheet. Specifically shown is an example where both the size of the printing area and the size of print data are calculated based on the size of the sheet. That is, data to be printed are reduced at the greatest reduction ratio possible so that all the data fit in the printable area without the length/breadth ratio of the size of the sheet being changed, and so that the reduced size data are centered and do not extend outside the limits of the printable area. [0088]
  • When the size of a sheet to be output differs from the sheet size for the data to be printed, as in fixed enlargement/reduction, it may be difficult to obtain the sheet size for the data during the printing process. In this case, either the sheet size for the data to be printed is held in the [0089] spool file 303 and is used at step S603 to calculate the enlargement/reduction ratio, or a database for the sheet size is prepared and an examination of the size is performed based on the database.
  • FIG. 7 is a diagram showing an example margin parameter acquisition means for designating length and breadth margin parameters according to the first embodiment. In this example, when the check box for the margin setting is selected, the length and breadth margin values can be entered. [0090]
  • FIG. 8 is a diagram showing a margin setup example for bookbinding according to the first embodiment. Margins are not set at the edges of the sheet but in the center of the sheet. When the layout control for the above described margin setting process is performed, a conventional defect can be resolved that prevents the setting of a margin for bookbinding when a binding margin is located in the center of a sheet, and a binding margin can be set for bookbinding. [0091]
  • As is described above, according to the first embodiment, the printer control system has the [0092] despooler 305, which calculates the size of the printable area based on the margin parameters set by the user, enlarges/reduces the size of data to be printed in consonance with the obtained printable area, prepares a layout for the enlarged/reduced data to be printed and the margins on a sheet, and employs the layout to print the data. Therefore, the margins are not simply set by shifting the data to be printed vertically or horizontally, but instead the size of the data is enlarged or reduced while taking into account the reduction in the size of the printing area due to the setting of margins, and the loss of the data to be printed can be prevented. That is, even when large margins are set, the data to be printed are reduced at the greatest enlargement/reduction ratio available relative to the sheet. Therefore, all the print data can be printed, without any of the data extending outside the limits of the printable area and thus not being printed, as occurs with the conventional margin setting.
  • In addition, margins are not set only vertically or horizontally, but can be set for the vertical and horizontal directions. Furthermore, when a binding margin is required at the fold of a sheet that is folded once, a margin can be set at the position of the fold. Therefore, since a binding margin can be placed in the center instead of at the edges of the sheet, binding margins for bookbinding can be set. [0093]
  • [2] Second Embodiment [0094]
  • A printer control system according to a second embodiment, as in the first embodiment, comprises: a [0095] host computer 3000, which includes a CPU 1, a RAM 2, a ROM 3, a keyboard controller (KBC) 5, a CRT controller (CRTC) 6, a disk controller (DKC) 7, a printer controller (PRTC) 8, a keyboard (KB) 9, a CRT display (CRT) 10 and an external memory 11; and a printer 1500, which includes a CPU 12, a RAM 19, a ROM 13, an input section 18, an engine interface (I/F) 16, a memory controller (MC) 20, a printer engine 17, an operation unit 1501 and an external memory 14 (see FIG. 1). The control configuration of the host computer 3000 for generating data to be printed according to the second embodiment (see FIG. 2), the control configuration expanded from FIG. 2 for generating data to be printed (see FIG. 3), and the internal structure of the printer 1500 (see FIG. 11) are also the same as those in the first embodiment and no explanation for them will be given.
  • The processing performed by the thus structured printer control system according to the second embodiment, which employs N-up printing and margin setting, will be explained while referring to the flowchart in FIGS. 9 and 6. FIG. 9 is a flowchart showing the margin setting process when N-up printing is to be performed. According to N-up printing, one sheet is divided into N areas, and a page is reduced and located in each of N areas to print data for N pages on a single sheet. [0096]
  • First, in FIG. 6 at step S[0097] 602 the size of the printable area on a sheet, excluding the margins, is calculated. Then, at step S901 in FIG. 9 the obtained printable area is divided into N areas for N-up printing. At step S902 the N areas and an area for data to be printed are employed to calculate the maximum enlargement/reduction ratio for printing data without the length/breadth ratio of the data to be printed being unchanged. At step S903 the data to be printed are enlarged/reduced according to the enlargement/reduction ratio. At step S904 the layout process is performed to calculate the layout position while taking into account the margins for the common N-up printing layout.
  • FIG. 10 is a diagram showing output print examples when the N-up printing process and the margin setting process are combined according to the second embodiment. These are a standard four-page printing example and a four-page printing example with the binding margins for the width being set. When the layout control is performed during the N-up printing and margin setting process, the margin can be set even when special printing, such as N-up printing, is performed. [0098]
  • As is described above, according to the second embodiment, the printer control system can calculate the size of the printable area, excluding the margins, of an output sheet, divide the printable area into N areas for N-up printing, employ the N areas and data to be printed to calculate the maximum enlargement/reduction ratio for printing the data without changing the length/breadth ratio, enlarge/reduce the print data at the length/breadth ratio, and calculate the layout for the standard N-up printing while taking the margins into account. Therefore, the margin can be set by employing a combined margin setting method and special printing method, such as N-up printing or fixed enlargement/reduction printing, that accompanies an enlarged/reduced layout. [0099]
  • In addition, as in the first embodiment, the margins are not set simply by shifting them horizontally/vertically, and as the data to be printed are enlarged or reduced while taking into account a reduction in the size of the printing area due to the setting of the margins, the loss of data during printing can be prevented. That is, even when large margins are set, data to be printed are reduced at the maximum enlargement/reduction ratio so that the obtained size of the data does not exceed the size of the sheet. Thus, all the data can be constantly printed without the data extending outside the printable area and being lost, as occurs with the conventional margin setting. In addition, the margins are not set only horizontally/vertically, but can be combined and set for the vertical and the horizontal directions. Furthermore, when a binding margin is required along the fold of a sheet that is folded once, a margin can be set at the position of the fold. Therefore, since a binding margin can be set in the center instead of at the edge of a sheet, binding margins for bookbinding can be set. [0100]
  • The present invention can be applied to a system that is constituted by a plurality of devices (e.g., a host computer, an interface device, a reader and a printer), or to an apparatus (e.g., a copier, a printer or a facsimile machine) that includes a single device. The objectives of the present invention are also achieved as follows: a memory medium on which is stored software program code for implementing the functions in the previous embodiments is supplied to a system or to an apparatus, and the computer (or a CPU or an MPU) in the system or the apparatus reads the program code from the memory medium. [0101]
  • In this case, the program code read from the memory medium accomplishes the functions of the above described embodiments, and the memory medium on which such program code is recorded constitutes the present invention. [0102]
  • A memory medium for supplying such program code can be, for example, a floppy disk, a hard disk, an optical disk, a magneto optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, or a ROM. [0103]
  • In addition, the scope of the present invention includes not only a case where the functions in the previous embodiment can be performed when program code is read and executed by the computer, but also a case where, according to an instruction in the program code, an OS (Operating System) running on the computer, etc., performs one part, or all, of the actual processing to accomplish the functions included in the above embodiments. [0104]
  • Furthermore, the present invention includes a case where program code, read from a memory medium, is written in a memory that is mounted on a function expansion board inserted into a computer, or a function expansion unit connected to a computer, and in consonance with a program code instruction, a CPU mounted on the function expansion board, or the function expansion unit performs one part, or all, of the actual processing in order to implement the functions included in the above described embodiments. [0105]
  • As is described above, according to the present invention, a print layout device for providing a layout for a recording sheet comprises: setting means for setting a margin for a sheet; determination means for ascertaining the size of a printable area based on the margin that is set; enlargement/reduction means for enlarging or reducing data to be printed in consonance with the printable area; and layout means for providing a layout for the margin for the sheet and for the data to be printed that are enlarged or reduced and for employing the layout to control the printing. Therefore, even when large margins are set, all the data can consistently be printed without the size of the print data exceeding the size of the sheet, as occurs with the conventional margin setting method. [0106]
  • In addition, according to the present invention, since with the setting means vertical and horizontal margins can be independently set for a sheet, as well as in the invention defined in [0107] claim 1, all the data can consistently be printed without the size of the data to be printed exceeding the size of the sheet, as occurs with the conventional margin setting method.
  • According to the present invention, since the setting means can set a binding margin adjacent to the line of the fold in a sheet that is folded once, a binding margin can be placed in the center of the sheet instead of along the edge. As a result, a binding margin can be set for a print style for which a binding margin must be set at the position of the fold in a double folded sheet, i.e., for bookbinding. [0108]
  • According to the present invention, since the setting means can set margins that are equidistant from the line of the fold in the center of a sheet that is folded once, as well as the invention defined in [0109] claim 3, a binding margin can be set for bookbinding.
  • According to the present invention, the enlargement/reduction means enlarges or reduces data to be printed using an enlargement/reduction ratio that provides a maximum inclusive area that does not exceed the limits of a printable area. Therefore, even when large margins are set, data to be printed are reduced at the maximum enlargement/reduction ratio so that the obtained size of the data does not exceed the size of the sheet, and all the data can consistently be printed without the data extending outside the printable area and not being printed, as occurs with the conventional margin setting method. [0110]
  • Furthermore, according to the present invention, since the enlargement/reduction means employs a designated, arbitrary enlargement/reduction ratio to enlarge or reduce the data to be printed, the print data can be enlarged/reduced not only at the maximum enlargement/reduction ratio that ensures the size of the data to be printed does not exceed the size of the sheet, but also at an arbitrary enlargement/reduction ratio. [0111]
  • According to the present invention, since the enlargement/reduction means so enlarges or reduces the data to be printed that the ratio of the length and the width of the data, after being enlarged or reduced, to that of the original data is not changed, the printing results are preferably well-balanced. [0112]
  • According to the present invention, since the layout means centers the enlarged or reduced data to be printed in an area on a sheet that excludes the binding margins, and performs the layout process, the printing results can fit within the printable area on the sheet, and appear well-balanced. [0113]
  • Further, according to the present invention, since a print layout device further comprises storage means for storing size information for data to be printed that is used for the determination of an enlargement/reduction ratio, a precise enlargement/reduction ratio can be determined. [0114]
  • According to the present invention, when a size for data to be printed and a sheet size differ, the enlargement/reduction means employs the size of the data to be printed and the sheet size to obtain an enlargement/reduction ratio for providing the binding margin, and the layout means performs a layout process for a sheet based on the enlargement/reduction ratio that is obtained, and, in accordance with the layout, prints out the data to be printed. A precise layout can also be used for bookbinding printing. [0115]
  • According to the present invention, the layout means prints data for a plurality of pages on one sheet using a layout for a sheet for which a margin has been set. Therefore, the margin can be set by a combination of the margin setting method and a special printing method, such as the N-up printing method whereby data for a plurality of pages are printed on a single sheet. [0116]
  • Moreover, according to the present invention, the layout means can adjust the position of binding margins on the obverse and the reverse sides of a sheet, so that for double-sided printing the binding margin will be located at the same position on the sheet. Thus, a precise binding margin can be set for double-sided printing. [0117]
  • In addition, to perform a printing process the present invention can be applied for a system by which the data to be printed can be transmitted by an upper-level device, such as a computer, to a printing device, such as a printer. Therefore, in such a system, all the data can be printed without the data extending outside the printable area and not being printed, as occurred in the conventional margin setting. Further, a special printing method, such as N-up printing, can be also used to set the margin. And binding margins can be set for bookbinding. [0118]
  • According to the present invention, a print layout device comprises: saving means for temporarily saving data in an intermediate code form that differs from that for the data to be printed; and preparation means for preparing data to be printed based on the data that are temporarily saved. Therefore, in a system wherein an upper-level device temporarily saves data in the intermediate code form and prepares and transmits print data to a print device, all the data to be printed can be printed without the data extending outside the printable area and not being printed, as occurs with the conventional margin setting. Further, a special printing method, such as N-up printing, can also be used to set a margin. And binding margins can be set for bookbinding. [0119]
  • According to the present invention, a print layout device for performing a layout for a recording sheet comprises: dispatcher means for receiving, from drawing means, and depending on which OS is used, common print information that is generated and is based on drawing data prepared by an arbitrary application; intermediate data conversion means for converting into intermediate data the print information received by the dispatcher means and for storing the intermediate data in spooling means; setting means for setting a margin for the sheet; processing means for processing the intermediate data stored in the spooling means in consonance with a printable area based on the margin that is acquired, and for outputting to the drawing means the processed intermediate data in the drawing data form; and print data generation means for converting the print information received by the dispatcher means into data constituted by a control command and for outputting the print data to an external device. Therefore, even when large margins are set, all the data can be printed without the data to be printed extending outside the printable area and not being printed, as occurs with the conventional margin setting method. [0120]
  • According to the present invention, the processing means changes the size of the intermediate data to a maximum size that is available in the printable area and for which the ratio of the width and the length of the drawing data is not changed. The printed results are preferably well-balanced. [0121]
  • Further, since according to the present invention the drawing data are GDI (Graphical Device Interface) data, the present invention can be applied for a system employing an application for outputting a GDI function. [0122]
  • In addition, since according to the present invention the print information is DDI (Device Driver Interface) information, the present invention can be applied for a system employing a graphic engine for outputting a DDI. [0123]
  • Since according to the present invention the data to be printed are written in a page description language, the present invention can be applied for a system for generating print data in a page description language. [0124]

Claims (57)

What is claimed is:
1. A print layout device for providing a layout for a recording sheet comprising:
setting means for setting a margin for a sheet;
determination means for ascertaining the size of a printable area based on said margin that is set;
enlargement/reduction means for enlarging or reducing data to be printed in consonance with said printable area; and
layout means for providing a layout for said margin for said sheet and for said data to be printed that are enlarged or reduced, and for employing said layout to control the printing.
2. A print layout device according to
claim 1
, wherein said setting means is capable of independently setting vertical and horizontal margins for a sheet.
3. A print layout device according to
claim 1
, wherein said setting means is capable of setting a binding margin adjacent to the line of the fold in a sheet that is folded once.
4. A print layout device according to
claim 3
, wherein said setting means is capable of setting margins that are equidistant from the line of the fold in the center of a sheet that is folded once.
5. A print layout device according to
claim 1
, wherein said enlargement/reduction means enlarges or reduces data to be printed using an enlargement/reduction ratio that provides a maximum inclusive area that does not exceed the limits of a printable area.
6. A print layout device according to
claim 1
, wherein said enlargement/reduction means employs a designated, arbitrary enlargement/reduction ratio to enlarge or reduce said data to be printed.
7. A print layout device according to
claim 1
, wherein said enlargement/reduction means so enlarges or reduces said data to be printed that the ratio of the length and the width of said data, after being enlarged or reduced, to that of the original data is not changed.
8. A print layout device according to
claim 1
, wherein said layout means centers said enlarged or reduced data to be printed in an area on a sheet that excludes the binding margins, and performs the layout process.
9. A print layout device according to
claim 1
, further comprising: storage means for storing size information for data to be printed that is used for the determination of an enlargement/reduction ratio.
10. A print layout device according to
claim 1
, wherein, when a size for data to be printed and a sheet size differ, said enlargement/reduction means employs said size of said data to be printed and said sheet size to obtain an enlargement/reduction ratio for providing said binding margin, and said layout means performs a layout process for a sheet based on said enlargement/reduction ratio that is obtained and, in accordance with said layout, prints out said data to be printed.
11. A print layout device according to
claim 1
, wherein said layout means prints data for a plurality of pages on one sheet using a layout for a sheet for which a margin has been set.
12. A print layout device according to
claim 1
, wherein said layout means is capable of adjusting the position of binding margins on the obverse and the reverse sides of a sheet, so that for double-sided printing said binding margin will be located at the same position on said sheet.
13. A print layout device according to
claim 1
, which is applicable for a system by which said data to be printed are transmitted by an upper-level device, such as a computer, to a printing device, such as a printer to perform a printing process.
14. A print layout device according to
claim 13
, further comprising:
saving means for temporarily saving data in an intermediate code form that differs from that for said data to be printed; and
preparation means for preparing data to be printed based on said data that are temporarily saved.
15. A print layout method for providing a layout for a recording sheet comprising:
a setting step of setting a margin for a sheet;
a determination step of ascertaining the size of a printable area based on said margin that is set;
an enlargement/reduction step of enlarging or reducing data to be printed in consonance with said printable area; and
a layout step of providing a layout for said margin for said sheet and for said data to be printed that are enlarged or reduced, and of employing said layout to control the printing.
16. A print layout method according to
claim 15
, wherein at said setting step, vertical and horizontal margins are capable of being independently set for a sheet.
17. A print layout method according to
claim 15
, wherein at said setting step a binding margin is capable of being set adjacent to the line of the fold in a sheet that is folded once.
18. A print layout method according to
claim 17
, wherein at said setting step margins that are equidistant from the line of the fold are capable of being set in the center of a sheet that is folded once.
19. A print layout method according to
claim 15
, wherein at said enlargement/reduction step data to be printed are enlarged or reduced using an enlargement/reduction ratio that provides a maximum inclusive area that does not exceed the limits of a printable area.
20. A print layout method according to
claim 15
, wherein, at said enlargement/reduction step, a designated, arbitrary enlargement/reduction ratio is employed to enlarge or reduce said data to be printed.
21. A print layout method according to
claim 15
, wherein at said enlargement/reduction step said data to be printed are so enlarged or reduced that the ratio of the length and the width of said data, after being enlarged or reduced, to that of the original data is not changed.
22. A print layout method according to
claim 15
, wherein at said layout step said enlarged or reduced data to be printed are centered in an area on a sheet that excludes the binding margins, and the layout process is performed.
23. A print layout method according to
claim 15
, further comprising: storage means for storing size information for data to be printed that is used for the determination of an enlargement/reduction ratio.
24. A print layout method according to
claim 15
, wherein, when a size for data to be printed and a sheet size differ, at said enlargement/reduction step, said size of said data to be printed and said sheet size are employed to obtain an enlargement/reduction ratio for providing said binding margin, and wherein at said layout step a layout process is performed for a sheet based on said enlargement/reduction ratio that is obtained and, in accordance with said layout, said data to be printed are printed out.
25. A print layout method according to
claim 15
, wherein at said layout step data for a plurality of pages are printed on one sheet using a layout for a sheet for which a margin has been set.
26. A print layout method according to
claim 15
, wherein at said layout step the position of binding margins is capable of being adjusted on the obverse and the reverse sides of a sheet, so that for double-sided printing said binding margin is located at the same position on said sheet.
27. A print layout method according to
claim 15
, which is applicable for a system by which said data to be printed are transmitted by an upper-level device, such as a computer, to a printing device, such as a printer to perform a printing process.
28. A print layout method according to
claim 27
, further comprising:
a saving step of temporarily saving data in an intermediate code form that differs from that for said data to be printed; and
a preparation step of preparing data to be printed based on said data that are temporarily saved.
29. A memory medium on which is stored a program for providing a layout for a recording sheet, said program comprising:
a setting step of setting a margin for a sheet;
a determination step of ascertaining the size of a printable area based on said margin that is set;
an enlargement/reduction step of enlarging or reducing data to be printed in consonance with said printable area; and
a layout step of providing a layout for said margin for said sheet and for said data to be printed that are enlarged or reduced, and of employing said layout to control the printing.
30. A memory medium according to
claim 29
, wherein at said setting step, vertical and horizontal margins are capable of being independently set for a sheet.
31. A memory medium according to
claim 29
, wherein at said setting step a binding margin is capable of being set adjacent to the line of the fold in a sheet that is folded once.
32. A memory medium according to
claim 29
, wherein at said setting step margins that are equidistant from the line of the fold are capable of being set in the center of a sheet that is folded once.
33. A memory medium according to
claim 29
, wherein at said enlargement/reduction step data to be printed are enlarged or reduced using an enlargement/reduction ratio that provides a maximum inclusive area that does not exceed the limits of a printable area.
34. A memory medium according to
claim 29
, wherein, at said enlargement/reduction step, a designated, arbitrary enlargement/reduction ratio is employed to enlarge or reduce said data to be printed.
35. A memory medium according to
claim 29
, wherein at said enlargement/reduction step said data to be printed are so enlarged or reduced that the ratio of the length and the width of said data, after being enlarged or reduced, to that of the original data is not changed.
36. A memory medium according to
claim 29
, wherein at said layout step said enlarged or reduced data to be printed are centered in an area on a sheet that excludes the binding margins, and the layout process is performed.
37. A memory medium according to
claim 29
, further comprising: storage means for storing size information for data to be printed that is used for the determination of an enlargement/reduction ratio.
38. A memory medium according to
claim 29
, wherein, when a size for data to be printed and a sheet size differ, at said enlargement/reduction step, said size of said data to be printed and said sheet size are employed to obtain an enlargement/reduction ratio for providing said binding margin, and wherein at said layout step a layout process is performed for a sheet based on said enlargement/reduction ratio that is obtained and, in accordance with said layout, said data to be printed are printed out.
39. A memory medium according to
claim 29
, wherein at said layout step data for a plurality of pages are printed on one sheet using a layout for a sheet for which a margin has been set.
40. A memory medium according to
claim 29
, wherein at said layout step the position of binding margins is capable of being adjusted on the obverse and the reverse sides of a sheet, so that for double-sided printing said binding margin is located at the same position on said sheet.
41. A memory medium according to
claim 29
, which is applicable for a system by which said data to be printed are transmitted by an upper-level device, such as a computer, to a printing device, such as a printer to perform a printing process.
42. A memory medium according to
claim 29
, in which is stored a program that further comprises:
a saving step of temporarily saving data in an intermediate code form that differs from that for said data to be printed; and
a preparation step of preparing data to be printed based on said data that are temporarily saved.
43. A print layout device for performing a layout process for a recording sheet comprising:
dispatcher means for receiving, from drawing means and depending on which OS is used, common print information that is generated and is based on drawing data prepared by an arbitrary application;
intermediate data conversion means for converting into intermediate data said print information received by said dispatcher means and for storing said intermediate data in spooling means;
setting means for setting a margin for said sheet;
processing means for processing said intermediate data stored in said spooling means in consonance with a printable area based on said margin that is acquired, and for outputting said processed intermediate data in said drawing data form to said drawing means; and
print data generation means for converting said print information received by said dispatcher means into print data consisting of a control command and for outputting said print data to an external device.
44. A print layout device according to
claim 43
, wherein said processing means changes the size of said intermediate data to a maximum size that is available in said printable area and for which the ratio of the width and the length of said drawing data is not changed.
45. A print layout device according to
claim 43
, wherein said drawing data are GDI (Graphical Device Interface) data.
46. A print layout device according to
claim 43
, wherein said print information is DDI (Device Driver Interface) information.
47. A print layout device according to
claim 43
, wherein said data to be printed are written in a page description language.
48. A print layout method for performing a layout process for a recording sheet comprising:
a reception step of receiving, from drawing means and depending on which OS is used, common print information that is generated and is based on drawing data prepared by an arbitrary application;
an intermediate data conversion step of converting into intermediate data said print information received at said reception step, and of storing said intermediate data in spooling means;
a setting step of setting a margin for said sheet;
a processing step of processing said intermediate data stored in said spooling means in consonance with a printable area based on said margin that is acquired, and of outputting said processed intermediate data in said drawing data form to said drawing means; and
a print data generation step of converting said print information received at said reception step into print data consisting of a control command and for outputting said print data to an external device.
49. A print layout method according to
claim 48
, wherein at said processing step the size of said intermediate data is changed to a maximum size that is available in said printable area and for which the ratio of the width and the length of said drawing data is not changed.
50. A print layout method according to
claim 48
, wherein said drawing data are GDI (Graphical Device Interface) data.
51. A print layout method according to
claim 48
, wherein said print information is DDI (Device Driver Interface) information.
52. A print layout method according to
claim 48
, wherein said data to be printed are written in a page description language.
53. A memory medium on which is stored a print layout program for performing a layout process for a recording sheet, said print layout program comprising:
a reception step of receiving, from drawing means and depending on which OS is used, common print information that is generated and is based on drawing data prepared by an arbitrary application;
an intermediate data conversion step of converting into intermediate data said print information received at said reception step, and of storing said intermediate data in spooling means;
a setting step of setting a margin for said sheet;
a processing step of processing said intermediate data stored in said spooling means in consonance with a printable area based on said margin that is acquired, and of outputting said processed intermediate data in said drawing data form to said drawing means; and
a print data generation step of converting said print information received at said reception step into print data consisting of a control command and for outputting said print data to an external device.
54. A memory medium according to
claim 53
, wherein at said processing step the size of said intermediate data is changed to a maximum size that is available in said printable area and for which the ratio of the width and the length of said drawing data is not changed.
55. A memory medium according to
claim 53
, wherein said drawing data are GDI (Graphical Device Interface) data.
56. A memory medium according to
claim 53
, wherein said print information is DDI (Device Driver Interface) information.
57. A memory medium according to
claim 53
, wherein said data to be printed are written in a page description language.
US09/123,365 1997-07-30 1998-07-28 Print layout device, print layout method, and storage medium Expired - Lifetime US6417931B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/863,462 US7084995B2 (en) 1997-07-30 2001-05-24 Print layout device, print layout method, and storage medium

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP9-218318 1997-07-30
JP21831897 1997-07-30
JP10-195715 1998-07-10
JP19571598A JP3673643B2 (en) 1997-07-30 1998-07-10 Print layout apparatus, print layout method, and storage medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US09/863,462 Division US7084995B2 (en) 1997-07-30 2001-05-24 Print layout device, print layout method, and storage medium

Publications (2)

Publication Number Publication Date
US20010043359A1 true US20010043359A1 (en) 2001-11-22
US6417931B2 US6417931B2 (en) 2002-07-09

Family

ID=26509320

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/123,365 Expired - Lifetime US6417931B2 (en) 1997-07-30 1998-07-28 Print layout device, print layout method, and storage medium
US09/863,462 Expired - Fee Related US7084995B2 (en) 1997-07-30 2001-05-24 Print layout device, print layout method, and storage medium

Family Applications After (1)

Application Number Title Priority Date Filing Date
US09/863,462 Expired - Fee Related US7084995B2 (en) 1997-07-30 2001-05-24 Print layout device, print layout method, and storage medium

Country Status (4)

Country Link
US (2) US6417931B2 (en)
EP (1) EP0895183B1 (en)
JP (1) JP3673643B2 (en)
DE (1) DE69839862D1 (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030133158A1 (en) * 2002-01-16 2003-07-17 Tatsuro Uchida Print layout apparatus and method
US20040085582A1 (en) * 2002-11-05 2004-05-06 Murata Kikai Kabushiki Kaisha Image scanning and printing device
US20040184067A1 (en) * 2003-03-17 2004-09-23 Toshiba Tec Kabushiki Kaisha Image forming system
US20040263892A1 (en) * 2003-06-27 2004-12-30 Canon Kabushiki Kaisha Information processisng apparatus, information processing method, and control program
US20050083550A1 (en) * 1998-11-09 2005-04-21 Kia Silverbrook Method for avoiding print buffer underrun
US6924826B1 (en) 1999-11-02 2005-08-02 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium storing computer-readable program
US20050190405A1 (en) * 2003-08-26 2005-09-01 Canon Kabushiki Kaisha Document conversion method and apparatus
US20070024913A1 (en) * 2005-07-29 2007-02-01 Samsung Electronics Co., Ltd. N-up display method and apparatus, and image forming device thereof
US20070285721A1 (en) * 2006-06-13 2007-12-13 Fuji Xerox Co., Ltd Information processing apparatus related to electronic sticky note, document processing apparatus, printing apparatus and media storing programs
US7433868B1 (en) * 1999-04-14 2008-10-07 Canon Kabushiki Kaisha Information providing method, information providing system, terminal apparatus, and storage medium storing information providing program
US20090244554A1 (en) * 2008-04-01 2009-10-01 Oki Data Corporation Print controlling system
US20110075216A1 (en) * 2009-09-29 2011-03-31 Sharp Kabushiki Kaisha Printing control system and printing system
US20110261412A1 (en) * 2008-12-26 2011-10-27 Canon Kabushiki Kaisha Print control apparatus, print control method, and storage medium storing computer-executable program
US20120243005A1 (en) * 2011-03-01 2012-09-27 Canon Kabushiki Kaisha Ink jet recording apparatus and recording method
US20130215470A1 (en) * 2012-02-22 2013-08-22 Canon Kabushiki Kaisha Print control apparatus, control method for print control apparatus, and storage medium
US8982406B2 (en) 2010-06-16 2015-03-17 Brother Kogyo Kabushiki Kaisha File-generating device
US20150254539A1 (en) * 2014-03-06 2015-09-10 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213202B1 (en) * 1998-12-11 2007-05-01 Microsoft Corporation Simplified design for HTML
US6825949B1 (en) * 1998-12-18 2004-11-30 Canon Kabushiki Kaisha Image processing apparatus
JP2000305730A (en) * 1999-02-02 2000-11-02 Canon Inc Printing system
JP3854741B2 (en) * 1999-02-03 2006-12-06 キヤノン株式会社 Print control system, print control method, and storage medium
US20050262437A1 (en) * 1999-04-24 2005-11-24 Patterson Dennis M Process for creating and printing customized document at end user computer and printer
JP2001067347A (en) * 1999-06-23 2001-03-16 Canon Inc Information processor, information processing method and storage medium storing computer-readable program
JP3873545B2 (en) * 1999-10-05 2007-01-24 セイコーエプソン株式会社 Printer host and storage medium storing its operation program
EP1096421B1 (en) 1999-10-05 2007-09-19 Seiko Epson Corporation Double-sided printing in an ink jet printer
JP4328426B2 (en) * 1999-11-02 2009-09-09 キヤノン株式会社 Printing control method and apparatus
EP1098266A3 (en) 1999-11-02 2003-01-22 Canon Kabushiki Kaisha Print control method and apparatus
US7307757B2 (en) 1999-11-02 2007-12-11 Canon Kabushiki Kaisha Print control method and apparatus
US6631007B1 (en) * 1999-12-14 2003-10-07 International Business Machines Corporation System and method for presenting multiple sheetlets on a medium surface while presenting multiple logical pages within the sheetlets
JP4517441B2 (en) * 2000-03-17 2010-08-04 セイコーエプソン株式会社 Printer driver, print control method, and information recording medium
US6923436B2 (en) 2000-04-19 2005-08-02 Digital Internet Transport System S.I. Process for the manufacture of sets of printed pages for the preparation of books, and set of printed pages manufactured by that process
ES2159490B1 (en) * 2000-04-19 2002-04-01 Digital Internet Transport Sys PROCEDURE FOR THE MANUFACTURE OF SETS OF PRINTED PAGES FOR THE PREPARATION OF BOOKS AND SET OF PRINTED PAGES MANUFACTURED WITH THE SAME.
JP4298146B2 (en) * 2000-08-22 2009-07-15 キヤノン株式会社 Information processing apparatus and method for generating print data
JP2002127539A (en) * 2000-10-27 2002-05-08 Hitachi Koki Co Ltd Printer and method of controlling printer
JP4785303B2 (en) * 2000-10-31 2011-10-05 キヤノン株式会社 Print control apparatus, print control method, and program
JP3848133B2 (en) * 2000-11-17 2006-11-22 キヤノン株式会社 Image forming apparatus and image forming method for processing data described in structured description language
JP2003008875A (en) * 2001-06-25 2003-01-10 Canon Inc Apparatus, system, and method for imaging, storage medium, and control program
JP3689662B2 (en) * 2001-07-16 2005-08-31 キヤノン株式会社 Information processing apparatus and display method thereof
JP2003162520A (en) * 2001-09-14 2003-06-06 Canon Inc Information-processing apparatus and method
JP4708668B2 (en) * 2001-09-17 2011-06-22 キヤノン株式会社 PRINT CONDITION SETTING DEVICE, PRINT CONDITION SETTING METHOD, PRINTING METHOD, INKJET PRINTING METHOD, PRINTING SYSTEM, AND PROGRAM
JP4059027B2 (en) 2001-10-03 2008-03-12 セイコーエプソン株式会社 Printer and printer print condition setting method
JP3757847B2 (en) * 2001-10-24 2006-03-22 ブラザー工業株式会社 Spool file processing apparatus, program, and recording medium
JP2003308215A (en) * 2002-02-14 2003-10-31 Canon Inc Information processor, control method, and control program
JP4235472B2 (en) 2002-04-08 2009-03-11 キヤノン株式会社 Information processing apparatus, information processing apparatus control method, program, and storage medium
JP2004054894A (en) 2002-05-27 2004-02-19 Minolta Co Ltd Printer driver program
WO2004009361A1 (en) * 2002-07-22 2004-01-29 Fuji Xerox Co., Ltd. Network printing system, network printing device, and network printing method
US20040177325A1 (en) * 2003-03-07 2004-09-09 Keane Robert S. Edit location indicator
US7456993B2 (en) * 2003-03-28 2008-11-25 Vistaprint Technologies Limited Electronic document location indication and navigation method, system and program
JP4238618B2 (en) 2003-03-28 2009-03-18 ブラザー工業株式会社 Compound machine
JP2005078236A (en) 2003-08-29 2005-03-24 Brother Ind Ltd Print controller
JP4266766B2 (en) * 2003-10-10 2009-05-20 キヤノン株式会社 Information processing apparatus and information processing method
JP2005131915A (en) * 2003-10-30 2005-05-26 Seiko Epson Corp Printing apparatus, printing method and program for printing apparatus
JP2005165466A (en) * 2003-11-28 2005-06-23 Canon Inc Print controller, print control method and computer program
JP2005161687A (en) * 2003-12-02 2005-06-23 Just Syst Corp Layout printing system, layout printing method and layout printing program
EP1691268A1 (en) * 2003-12-05 2006-08-16 Matsushita Electric Industrial Co., Ltd. Printer and printing method
US7163269B2 (en) * 2004-01-12 2007-01-16 Xerox Corporation Methods and systems for maintaining color consistency in a print-on-demand workflow
DE102004033920B4 (en) * 2004-05-04 2006-11-02 Koenig & Bauer Ag Printing form of a printing machine and web-fed rotary printing press
KR100583456B1 (en) * 2004-05-13 2006-05-26 삼성전자주식회사 The printing method of making a booklet
JP4332477B2 (en) * 2004-08-06 2009-09-16 キヤノン株式会社 Layout adjusting method, apparatus and program
DE102005010819A1 (en) * 2005-03-07 2006-09-21 Hiflex Software Gmbh Method for visualizing a useful area and at least one trimming area
JP4110147B2 (en) * 2005-03-17 2008-07-02 キヤノン株式会社 Information leakage prevention method, information processing apparatus and driver program for realizing the method
US20060279812A1 (en) * 2005-06-08 2006-12-14 Kabushiki Kaisha Toshiba System and method for adjusting the reproduction of original images
JP4604888B2 (en) * 2005-07-12 2011-01-05 富士ゼロックス株式会社 POSITION INFORMATION MANAGEMENT DEVICE, IMAGE FORMING DEVICE, POSITION INFORMATION MANAGEMENT METHOD, AND PROGRAM
JP4795149B2 (en) * 2005-08-15 2011-10-19 キヤノン株式会社 Information processing apparatus, information processing method, program, and storage medium
US20070070437A1 (en) * 2005-09-27 2007-03-29 Lexmark International, Inc. Method for incising a sheet of media
JP4917799B2 (en) * 2005-12-13 2012-04-18 株式会社リコー Inkjet recording apparatus, inkjet recording method and program
US20070258744A1 (en) * 2006-05-02 2007-11-08 Liccini Roman D System and method for adjusting front-to-back printer registration
US20070273897A1 (en) * 2006-05-26 2007-11-29 Lite-On Technology Corporation Print systems and methods
US20080002214A1 (en) * 2006-06-28 2008-01-03 Ricoh Company, Ltd. Image processing apparatus
US8004717B2 (en) * 2006-07-25 2011-08-23 Dst Output Stack flipping document handling system for utilization with printing lazy-portrait formatted documents
US8235641B2 (en) * 2006-07-25 2012-08-07 Dst Output Hinged and bifurcated cart document handling apparatus utilized with a lazy-portrait document printing system
US8437014B2 (en) * 2006-07-25 2013-05-07 Dst Output Paper handling system for utilization with a lazy-portrait formatting document printing system
US8416450B2 (en) * 2006-07-25 2013-04-09 Dst Output Turn-bar document handling apparatus for utilization with a lazy-portrait document printing system
US8274691B1 (en) 2006-07-25 2012-09-25 Dst Output Lazy-portrait narrow-edge-to-narrow-edge document printing system
JP2008065367A (en) * 2006-09-04 2008-03-21 Sharp Corp Information processing device, page image arrangement adjustment method, program, and recording medium
US9317229B2 (en) * 2006-10-23 2016-04-19 Mimeo.Com, Inc. Finishing compatibility evaluation
JP2008124851A (en) * 2006-11-14 2008-05-29 Matsushita Electric Ind Co Ltd Output processing device and data structure for executing processing thereof
JP5085946B2 (en) * 2007-01-19 2012-11-28 キヤノン株式会社 Printing system, control method, program, printing apparatus
KR101304455B1 (en) * 2007-01-23 2013-09-04 삼성전자주식회사 Method and apparatus for adjusting pre-edge margin of a printing paper
US8233162B2 (en) * 2007-04-02 2012-07-31 Seiko Epson Corporation Printer controller and method of printing print document which scale down a print image so that an entire area of a print sheet fits into a printable area
JP2009017019A (en) * 2007-07-02 2009-01-22 Sharp Corp Device, method and program for forming image and recording medium
JP4618369B2 (en) * 2008-12-03 2011-01-26 コニカミノルタビジネステクノロジーズ株式会社 Printing system, printing method, printing control apparatus, printing control method, and printing control program
JP5235695B2 (en) * 2009-01-16 2013-07-10 キヤノン株式会社 Printing control apparatus and control method thereof
JP4745405B2 (en) * 2009-01-26 2011-08-10 シャープ株式会社 Printing device
JP5219868B2 (en) * 2009-02-04 2013-06-26 キヤノン株式会社 Layout device, layout method, and layout program
JP5377027B2 (en) * 2009-03-30 2013-12-25 キヤノン株式会社 Print control apparatus, print control method, and program
JP5610781B2 (en) * 2010-01-21 2014-10-22 キヤノン株式会社 Information processing apparatus, information processing method, and program
JP5928682B2 (en) * 2011-09-05 2016-06-01 コニカミノルタ株式会社 Image forming control unit and image forming apparatus
JP5539280B2 (en) * 2011-09-07 2014-07-02 キヤノン株式会社 Data processing apparatus, data processing method and program
JP6032420B2 (en) * 2012-04-02 2016-11-30 カシオ計算機株式会社 Print information output apparatus, print information output method, program, and portable electronic device
US9087287B2 (en) 2013-03-13 2015-07-21 Xerox Corporation Individualizing reduction of original pages in N-up copying or printing
JP2015148847A (en) 2014-02-04 2015-08-20 キヤノン株式会社 job management system, image forming apparatus, control method, and program
JP6516439B2 (en) * 2014-10-30 2019-05-22 キヤノン株式会社 PRINT CONTROL DEVICE, PRINT CONTROL METHOD, AND PROGRAM
JP7206896B2 (en) * 2018-12-24 2023-01-18 ブラザー工業株式会社 Programs, terminals and communication systems
US11373071B2 (en) * 2020-06-19 2022-06-28 Datamax-O'neil Corporation Methods and systems for operating a printing apparatus

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62128327A (en) * 1985-11-29 1987-06-10 Sharp Corp Print area setting system
US4928252A (en) * 1988-02-24 1990-05-22 Digital Equipment Corporation Printing apparatus and method for printing a plurality of pages onto a single sheet
US5105283A (en) * 1989-10-20 1992-04-14 Eastman Kodak Company Production of signatures from documents stored in electronic memory
US5271065A (en) 1990-09-28 1993-12-14 Xerox Corporation Electronic printing system for printing signatures
US5634091A (en) 1991-07-30 1997-05-27 R. R. Donnelley & Sons Company Digital page imaging system
JP3434543B2 (en) 1993-08-27 2003-08-11 株式会社リコー Image forming device
US5838033A (en) * 1993-09-08 1998-11-17 Lucent Technologies Inc. Integrated circuit with gate conductor defined resistor
JPH08187913A (en) 1995-01-11 1996-07-23 Canon Inc Printing apparatus
JP3492068B2 (en) 1995-02-16 2004-02-03 キヤノン株式会社 Print control method and apparatus
JPH0969939A (en) * 1995-08-31 1997-03-11 Toshiba Corp Image forming device and method therefor
JP3814324B2 (en) 1996-02-08 2006-08-30 キヤノン株式会社 Print control apparatus and print control method
US5963216A (en) * 1996-04-25 1999-10-05 Hewlett-Packard Company Providing print preview of a print job using printing calls from a print driver
US6101513A (en) * 1996-05-31 2000-08-08 Microsoft Corporation Method and apparatus for displaying database information according to a specified print layout and page format
US5995721A (en) * 1996-10-18 1999-11-30 Xerox Corporation Distributed printing system
US5825996A (en) * 1996-11-08 1998-10-20 Monotype Typography, Inc. Print-to-edge desktop printing

Cited By (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090046309A1 (en) * 1998-11-09 2009-02-19 Silverbrook Research Pty Ltd Inkjet Printer With Dual Page Memory And Page Expander
US7206098B2 (en) * 1998-11-09 2007-04-17 Silverbrook Research Pty Ltd Method for avoiding print buffer underrun
US7391531B2 (en) 1998-11-09 2008-06-24 Silverbrook Research Pty Ltd Printer with replaceable ink cartridge and print quality IC
US20050083550A1 (en) * 1998-11-09 2005-04-21 Kia Silverbrook Method for avoiding print buffer underrun
US7864361B2 (en) 1998-11-09 2011-01-04 Silverbrook Research Pty Ltd Inkjet printer with dual page memory and page expander
US20070146771A1 (en) * 1998-11-09 2007-06-28 Silverbrook Research Pty Ltd Printer with replaceable ink cartridge and print quality IC
US7433868B1 (en) * 1999-04-14 2008-10-07 Canon Kabushiki Kaisha Information providing method, information providing system, terminal apparatus, and storage medium storing information providing program
US20050200879A1 (en) * 1999-11-02 2005-09-15 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium storing computer-readable program
US6924826B1 (en) 1999-11-02 2005-08-02 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium storing computer-readable program
US7464335B2 (en) 1999-11-02 2008-12-09 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium storing computer-readable program
US20030133158A1 (en) * 2002-01-16 2003-07-17 Tatsuro Uchida Print layout apparatus and method
US7202968B2 (en) * 2002-01-16 2007-04-10 Canon Kabushiki Kaisha Print layout apparatus and method
US7916339B2 (en) * 2002-01-16 2011-03-29 Canon Kabushiki Kaisha Print layout and apparatus and method
US20070177212A1 (en) * 2002-01-16 2007-08-02 Canon Kabushiki Kaisha Print layout and apparatus and method
US20040085582A1 (en) * 2002-11-05 2004-05-06 Murata Kikai Kabushiki Kaisha Image scanning and printing device
US7405840B2 (en) * 2002-11-05 2008-07-29 Murata Kikai Kabushiki Kaisha Image scanning and printing device
US20040184067A1 (en) * 2003-03-17 2004-09-23 Toshiba Tec Kabushiki Kaisha Image forming system
US7319543B2 (en) * 2003-03-17 2008-01-15 Kabushiki Kaisha Toshiba Image forming system
US20080088863A1 (en) * 2003-03-17 2008-04-17 Kabushiki Kaisha Toshiba Image forming system
US7952758B2 (en) 2003-03-17 2011-05-31 Kabushiki Kaisha Toshiba Image forming system
US20040263892A1 (en) * 2003-06-27 2004-12-30 Canon Kabushiki Kaisha Information processisng apparatus, information processing method, and control program
US20050190405A1 (en) * 2003-08-26 2005-09-01 Canon Kabushiki Kaisha Document conversion method and apparatus
US8612848B2 (en) * 2005-07-29 2013-12-17 Samsung Electronics Co., Ltd. N-up display method and apparatus, and image forming device thereof
US20070024913A1 (en) * 2005-07-29 2007-02-01 Samsung Electronics Co., Ltd. N-up display method and apparatus, and image forming device thereof
US8395805B2 (en) * 2006-06-13 2013-03-12 Fuji Xerox Co., Ltd. Information processing apparatus related to electronic sticky note, document processing apparatus, printing apparatus and media storing programs
US20070285721A1 (en) * 2006-06-13 2007-12-13 Fuji Xerox Co., Ltd Information processing apparatus related to electronic sticky note, document processing apparatus, printing apparatus and media storing programs
US20090244554A1 (en) * 2008-04-01 2009-10-01 Oki Data Corporation Print controlling system
US8264739B2 (en) 2008-04-01 2012-09-11 Oki Data Corporation Print controlling system extracting image data inside print region when page size and record medium size agree
US8456692B2 (en) 2008-04-01 2013-06-04 Oki Data Corporation Print controlling apparatus having a direct print function generating inside region printing data when page size and medium size match
US8842327B2 (en) * 2008-12-26 2014-09-23 Canon Kabushiki Kaisha Print control apparatus, print control method, and storage medium storing computer-executable program
US20110261412A1 (en) * 2008-12-26 2011-10-27 Canon Kabushiki Kaisha Print control apparatus, print control method, and storage medium storing computer-executable program
US20110075216A1 (en) * 2009-09-29 2011-03-31 Sharp Kabushiki Kaisha Printing control system and printing system
US8427687B2 (en) * 2009-09-29 2013-04-23 Sharp Kabushiki Kaisha Printing control system determining final print condition as entered first print condition if entered first print is a change inhibited print condition, and if not, as user selected one of entered first print condition or stored second print conditions having a higher ratio of reduction in use of printing sheets than first printing condition; and printing system utilizing the same
US8982406B2 (en) 2010-06-16 2015-03-17 Brother Kogyo Kabushiki Kaisha File-generating device
US20120243005A1 (en) * 2011-03-01 2012-09-27 Canon Kabushiki Kaisha Ink jet recording apparatus and recording method
US9067430B2 (en) * 2011-03-01 2015-06-30 Canon Kabushiki Kaisha Ink jet recording apparatus and recording method
US20130215470A1 (en) * 2012-02-22 2013-08-22 Canon Kabushiki Kaisha Print control apparatus, control method for print control apparatus, and storage medium
CN103294418A (en) * 2012-02-22 2013-09-11 佳能株式会社 Print control apparatus and control method for print control apparatus
US8976406B2 (en) * 2012-02-22 2015-03-10 Canon Kabushiki Kaisha Print control apparatus, control method, and storage medium where program is stored for printing image data on sheet, controlling a binding process for binding a plurality of sheets without staple, and adjusting the printing area of the image data to be printed when performing of the binding process
US20150254539A1 (en) * 2014-03-06 2015-09-10 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium
US9372653B2 (en) * 2014-03-06 2016-06-21 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and storage medium

Also Published As

Publication number Publication date
US7084995B2 (en) 2006-08-01
EP0895183B1 (en) 2008-08-13
JPH1199724A (en) 1999-04-13
DE69839862D1 (en) 2008-09-25
JP3673643B2 (en) 2005-07-20
US6417931B2 (en) 2002-07-09
US20010024291A1 (en) 2001-09-27
EP0895183A3 (en) 2000-05-31
EP0895183A2 (en) 1999-02-03

Similar Documents

Publication Publication Date Title
US7084995B2 (en) Print layout device, print layout method, and storage medium
US6922260B2 (en) Print control apparatus, print control method and memory medium
JP3862652B2 (en) Printing control method and information processing apparatus
JP3576819B2 (en) Information processing apparatus, print control method, and storage medium
JP3747130B2 (en) Information processing apparatus, message display method, interface apparatus, and storage medium storing computer-readable program
US7916339B2 (en) Print layout and apparatus and method
US6411400B1 (en) Data processing apparatus, data processing method therefor, and storage medium for storing computer-readable program
JP4267047B2 (en) Information processing apparatus, control method, and storage medium
JP2004021456A (en) Image processing device, print processing method, and storage medium readable by computer
US7027170B1 (en) Printing control system for separation printing
JP2004062431A (en) Information processing device and method, and print control program
JP3745086B2 (en) Printing control apparatus and method
JP2000181667A (en) Printer provided with form overlay function, form overlay controlling and managing method and recording medium with form overlay controlling and managing program recorded therein
JP2002316454A (en) Output unit, information processing apparatus, output method, method and program of information processing apparatus, and storage medium
JP2004192239A (en) Information processor, printer, print controller and printing system
JP3927733B2 (en) Image processing apparatus and method
JP2000089928A (en) Output device and its output controlling method
JP2001092609A (en) Information outputting system, method for controlling the same and recording medium for recording its control program
JP2004230726A (en) Processing method of plotting and plotting processor
JPH09254458A (en) Printing device, memory assignment, setting of memory capacity, data transmission, printing system, information processing device and storage medium
JP2000194349A (en) Device and method for outputting character pattern and recording medium
JP2000218901A (en) Apparatus and method for processing information and memory medium for storing computer readable program
JP2003256160A (en) Information processing device, printing control method, program, and recording medium
JPH1110965A (en) Image output system and image output method
JPH07329392A (en) Method and apparatus for output

Legal Events

Date Code Title Description
AS Assignment

Owner name: CANON KABUSHIKI KAISHA, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MORI, YASUO;NAKAGIRI, KOJI;NISHIKAWA, SATOSHI;AND OTHERS;REEL/FRAME:010758/0280

Effective date: 19980819

STCF Information on status: patent grant

Free format text: PATENTED CASE

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12