Abstract:
A printing apparatus includes a first acquiring unit configured to acquire a print target document; a second acquiring unit configured to acquire update history information about update history of the document acquired by the first acquiring unit; a third acquiring unit configured to acquire print history information about print history of the document, a generating unit configured to generate print image data based on the document, a receiving unit configured to receive a command to print the document, an identifying unit configured to, when the receiving unit receives a command to print the document, identify, as print target image data, the print image data that includes an image of an updated page in the document, based on the update history information acquired by the second acquiring unit and layout information included in the print history information acquired by the third acquiring unit, out of the print image data generated by the generating unit; and a printing unit configured to execute printing based on the print image data identified by the identifying unit.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    The present invention relates to a printing apparatus configured to perform difference printing to produce an updated page and a control method for the printing apparatus. 
         [0003]    2. Description of the Related Art 
         [0004]    After a document has been printed prior to a conference, which is to be passed out in the conference, it is often necessary to make some amendments to the document and print copies again before the conference. 
         [0005]    In this case, if amendments are made to certain pages, in order to reduce waste of resources, only pages that have been updated are printed and used to replace corresponding pages (e.g., see Japanese Patent Application Laid-Open No. 2003-330658). 
         [0006]    However, if a document before a revision was printed in a two-sided printing or in a specific print layout, such as a reduction layout, even if only revised pages are printed, since they are in a different printout layout, they cannot be used as replacement pages. 
         [0007]    Another problem is that if one tries to print update portions in a manner that suits the specific print layout used in printing before the revision, very complicated setting is required in specifying print target pages, which is quite troublesome. 
       SUMMARY OF THE INVENTION 
       [0008]    According to an aspect of the present invention, a printing apparatus includes a first acquiring unit configured to acquire a print target document; a second acquiring unit configured to acquire update history information about update history of the document acquired by the first acquiring unit; a third acquiring unit configured to acquire print history information about print history of the document; a generating unit configured to generate print image data based on the document; a receiving unit configured to receive a command to print the document; an identifying unit configured to, when the receiving unit receives a command to print the document, identify, as print target image data, the print image data that includes an image of an updated page in the document, based on the update history information acquired by the second acquiring unit and layout information included in the print history information acquired by the third acquiring unit, out of the print image data generated by the generating unit; and a printing unit configured to execute printing based on the print image data identified by the identifying unit. 
         [0009]    Further features of the present invention will become apparent from the following detailed description of exemplary embodiments with reference to the attached drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0010]    The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention. 
           [0011]      FIG. 1  is a configuration diagram of an image forming system incorporating a printing apparatus according to an embodiment of the present invention. 
           [0012]      FIG. 2  is a block diagram of the image forming apparatus in  FIG. 1 . 
           [0013]      FIG. 3  is a block diagram of the file server in  FIG. 1 . 
           [0014]      FIG. 4  is a diagram illustrating an example of document history information in the file server in  FIG. 3 . 
           [0015]      FIG. 5  is a diagram illustrating an example of print history information in the image forming apparatus in  FIG. 2 . 
           [0016]      FIG. 6  is a diagram illustrating an example of a screen image of the display unit in the image forming apparatus in  FIG. 2 . 
           [0017]      FIG. 7  is a flowchart illustrating a procedure of a normal printing process executed by the image forming apparatus in  FIG. 2 . 
           [0018]      FIG. 8  is a flowchart illustrating a procedure of a layout difference printing process executed by the image forming apparatus in  FIG. 2 . 
           [0019]      FIG. 9  is a diagram illustrating an example of a physical page to be printed in layout difference printing according to the flowchart in  FIG. 8 . 
       
    
    
     DETAILED DESCRIPTION OF THE EMBODIMENTS 
       [0020]    Embodiments of the invention will be described in detail below with reference to the drawings. 
         [0021]      FIG. 1  is a configuration diagram of an image forming apparatus incorporating a printing apparatus according to an embodiment of the present invention. 
         [0022]    In  FIG. 1 , the image forming system is built by connecting image forming apparatuses  10  and  15 , a file server  20 , and client PCs  30  and  35  to a network  40 . 
         [0023]    The image forming apparatuses  10  and  15  (hereinafter represented by the image forming apparatus  10 ), which are examples of a printing apparatus, include functions, such as scanning, printing and copying. 
         [0024]    In this embodiment, the image forming apparatus  10  performs pull printing by acquiring a document stored on the file server  20  and executing a layout process. 
         [0025]    The file server  20  manages user information and files generated by the client PCs  30  and  35 . In addition, the file server  20  can manage document versions and updated pages. 
         [0026]    The client PCs  30  and  35  (hereinafter represented by the client PC  30 ) are the PC on which the user performs various operations. On his local client PC  30 , the user can display, edit, store, and print files stored in the file server  20 . 
         [0027]      FIG. 2  is a block diagram illustrating a hardware configuration of the image forming apparatus in  FIG. 1 . 
         [0028]    In  FIG. 2 , a system control unit  101  includes a central processing unit (CPU) (not illustrated) which is used to control operations of the whole image forming apparatus  10  via a system bus  120 . 
         [0029]    A read-only memory (ROM)  102  stores, for example, a control program to be executed by the system control unit  101 . The control program stored in the ROM  102  is executed by the CPU included in the system control unit  101 . 
         [0030]    A random access memory (RAM)  103  stores the setting values input by the user, management data of the image forming apparatus, and temporary variables. 
         [0031]    A document management unit  104 , which is formed by a memory, such as a hard disk, can store a plurality of image data, job data and job management information. For example, the document management unit  104  can store a plurality of image data from the reading unit  108  and print job data input via an interface control unit  110 . 
         [0032]    A compression/decompression unit  105  compresses or decompresses image data. The compression/decompression unit  105 , according to need, compresses image data before image data is stored in the document unit  104  or decompresses compressed image data to the original size when stored data is read out. 
         [0033]    An operation unit  106  is formed of keys, which are used by the user to input data or letters. A display unit  107  is constituted by liquid crystal display (LCD) or light emitting diode (LED) that performs various types of visual display or phonetic display. With the achievement of higher resolution in the display unit  107 , image data in the document management unit  104  can be previewed to check its resolution and can be printed. 
         [0034]    The reading unit  108  is formed of an image sensor such as charge coupled device (CCD) or CS image sensor, and an image processing unit. The reading unit  108  optically reads a document and converts acquired data into electric image data, and performs various types of image processing, such as color processing, binarization processing, and halftone processing to output high-definition image data. 
         [0035]    A recording unit  109 , which is formed of a printer, such as a laser printer or a inkjet printer, performs various kinds of image processing, such as smoothing or recording density correction, on image data to be recorded, to convert the data into high-definition image data and output on paper. 
         [0036]    The interface control unit  110  communicates image data and apparatus information with an information processing apparatus, such as the file server  20 , connected via the network  40  or a universal serial bus (USB). Since a known communication control method is used, a detailed description is omitted. 
         [0037]    A raster image processing (RIP) unit  111  applies RIP to page description language (PDL) data input from the interface control unit  110 . Moreover, the RIP unit  111  can, as needed, store intermediate data of the image data generated during the RIP process and print ready data (bit map data for print or compressed bit map data) back into the document management unit  104 . 
         [0038]      FIG. 3  is a block diagram illustrating a hardware configuration of the file server in  FIG. 1 . 
         [0039]    In  FIG. 3 , a CPU  201  controls the operation of the entire file server according to a program stored in a ROM  202 , a RAM  203  or a hard disk  220 , or according to a program read out from a floppy disk (FD) drive  221  or compact disc/digital versatile disk (CD/DVD) drive  222 . 
         [0040]    The ROM  202  stores control programs to be executed by the CPU  201 . The RAM  203  temporarily stores programs and image data. 
         [0041]    A hard disk control unit  204  controls the hard disk  220  that stores an operating system, various types of application software, and image data. 
         [0042]    The hard disk  220  includes the operating system, the various types of application software and driver software, which are installed in the file server  20 . The hard disk  220  also includes files and image data. 
         [0043]    The application software and the driver software are installed into the hard disk  220  from computer-readable media via the FD drive  221 , CD/DVD drive  222 . The application software and the driver software can be installed into the hard disk  220  by downloading them via the interface control unit  209 . 
         [0044]    The FD drive control unit  205  controls the FD drive  221 . The CD/DVD drive control unit  206  controls the CD/DVD drive  222 . 
         [0045]    A keyboard/mouse control unit  207  controls a keyboard/mouse  230 , which is used by the user to input commands. 
         [0046]    A display control unit  208  controls a display  240  to provide the user with information in various visual forms. 
         [0047]    The interface control unit  209  communicates with external terminals of the image forming apparatus  10  or the like connected via the network  40  or USB. Because a known communication control method is used, a detailed description of the control method is omitted. 
         [0048]    The client PC  30  may have a basic construction similar to the file server  20 . 
         [0049]      FIG. 4  is a diagram illustrating an example of document history information in the file server in  FIG. 3 . 
         [0050]    In  FIG. 4 , document history information  400 , which is stored in the hard disk  220  of the file server  20 , is generated for each document managed by the file server  20 . As an example of document history information,  FIG. 4  shows history information about a document titled “Conference Material A, DOC”, which is stored in the hard disk  220  of the file server  20 . 
         [0051]    The document history information  400  includes updated page information about each version of the document. Each time the document is stored, or the version is updated, the document history information  400  is updated. 
         [0052]    A version  401  is version information when the document is stored. An updated page  402  is page information indicating which page is updated when the document is stored. 
         [0053]    This exemplary embodiment is described on the assumption that versions  401  and updated pages  402  are stored. However, without using versions  401  or in addition to versions  401 , a time stamp may be attached and stored when a document is stored, and update history information may be managed using the time stamps. 
         [0054]      FIG. 5  is a diagram illustrating an example of print history information in the image forming apparatus in  FIG. 2 . 
         [0055]    Print history information  500  is stored in the document management unit  104  in the image forming apparatus of the image forming apparatus. Each time a document is printed by the image forming apparatus  10 , this print history information  500  is generated. 
         [0056]    The print history information  500  includes items such as document print dates, document versions, persons who carried out printing, and print layout information, and the print history information  500  is normally updated each time printing is performed. 
         [0057]    The print date  501  is information about date when the document was printed. The document version  502  is version information when the document was printed. The person  503  who carried out printing is information about a name of the user who executed printing. The print layout information  504  indicates how an image was laid out on a paper when the document was printed. 
         [0058]    In this exemplary embodiment, the print layout information  504  stores information such as paper size  505 , paper orientation  506 , and print layout  507 . In this exemplary embodiment, as a print layout, it is possible to specify an N in 1 layout (a layout in which images for N pages of a document are reduced on a sheet), one-sided printing, and two-sided printing. A combination of those layout methods may also be used. Besides the items described above, if necessary, other information can also be adopted in a layout. 
         [0059]      FIG. 6  illustrates an example of a screen image of the display unit in the image forming apparatus in  FIG. 2 . 
         [0060]    This screen image appears on the display unit  107  when the system control unit  101  of the image forming apparatus  10  executes the control program. 
         [0061]    In  FIG. 6 , the print history list  601  illustrates a list of past print history information about a document on which layout difference printing is to be performed. After a check mark is put in the check box in front of each record of print history, by pressing the OK button  602 , it is possible to issue a command to execute layout difference printing from a selected record of print history. The cancel switch  603  is used to cancel a selection. 
         [0062]      FIG. 7  is a flowchart illustrating a procedure of a normal printing process executed by the image forming apparatus in  FIG. 2 . 
         [0063]    This flowchart is executed under control of the system control unit  101  of the image forming apparatus  10 . 
         [0064]    In step S 701 , in response to a pull print command, a print layout is specified from the operation unit  106  of the image forming apparatus  10 . 
         [0065]    In step S 702 , the system control unit  101  acquires PDL data (print document) of the pertinent document from the file server  20 . 
         [0066]    Simultaneously with the acquisition of the print document in step S 702 , in step S 703 , the system control unit  101  acquires document information, such as the version of the document, from the file server  20 . 
         [0067]    When PDL data is received, in step S 704 , a print image (print image data) is generated within the RIP unit  111  in the image forming apparatus  10 . 
         [0068]    While PDL data is received from the file server  20  in the above case, other type of data, such as bit map data or metadata, may also be received and printed. 
         [0069]    In step S 705 , a document title, and print history information, such as print layout information specified in step S 701 , current time, document information acquired in step S 703 , and a person who executed printing, are stored in the document management unit  104 . An example of print history information  500 , which is stored in step S 705 , is illustrated in  FIG. 5 . 
         [0070]    In step S 706 , printing is carried out by the recording unit  109  of the image forming apparatus  10 , then the process is finished. 
         [0071]      FIG. 8  is a flowchart illustrating a procedure of the layout difference printing process executed by the image forming apparatus in  FIG. 2 . 
         [0072]    This flowchart is executed under control of the system control unit  101  of the image forming apparatus  10 . 
         [0073]    In  FIG. 8 , when a command to execute the layout difference printing process is received, in response to this command, in step S 801 , the system control unit  101  acquires a print document from the file server  20   
         [0074]    In step S 802 , the system control unit  101  acquires document history information  400  corresponding to the print document from the file server  20 . As illustrated in  FIG. 4 , the document history information  400  includes the version information and the updated page information. 
         [0075]    In step S 803 , it is determined whether the print document has been printed in the past by the image forming apparatus  10  (to see if there is print history information) This determination is made considering if there is print history information about this print document. 
         [0076]    In step S 803 , if it is determined that the document has not been printed in the past (NO in step S 803 ), difference printing cannot be performed. Accordingly, in step S 810 , it is determined whether a normal printing process is to be performed. 
         [0077]    If normal printing is selected (YES in step S 810 ), in step S 811 , a normal printing process, including layout instruction, is carried out anew. This normal printing process is the same as the process in the flowchart of  FIG. 7 . 
         [0078]    In step S 810 , if “normal printing is not performed” is selected (NO in step S 810 ), the process is finished, and the layout difference printing is terminated. 
         [0079]    In step S 803 , if it is determined that the document has been printed in the past (YES in step S 803 ), in step S 804 , the system control unit  101  acquires print history information about the document. 
         [0080]    In step S 805 , it is determined whether there is a plurality of past print history information, which is acquired in step S 804 . 
         [0081]    In step S 805 , if it is determined that there is a plurality of past print history information (YES in step S 805 ), in step S 806 , the print history information is displayed on the screen of the display unit  107 , and print history on difference printing is to be performed is selected. An example of the screen image displayed in step S 806  is illustrated in  FIG. 6 . 
         [0082]    In step S 807 , by comparing the document version in the acquired print history information and the document history information acquired in step S 802 , it is determined whether there is an updated page. 
         [0083]    In step S 807 , if it is determined that there is no updated page (NO in step S 807 ), difference printing cannot be performed. Therefore, in step S 810 , it is determined whether a normal printing process is to be performed. 
         [0084]    In step S 810 , if normal printing is selected (YES in step S 810 ), in step S 811 , a normal printing process, including layout instruction, is executed again. 
         [0085]    In step S 810 , if “normal printing is not performed” is selected (NO in step S 810 ), the process is finished, and layout difference printing is terminated. 
         [0086]    In step S 807 , if it is determined that there is an updated page (YES in step S 807 ), in step S 808 , a print image is generated according to print layout information  504  in the print history information  500  acquired in step S 804 . 
         [0087]    In step S 808 , when a print image is generated, only a print image which includes an updated page determined in step S 807  is identified as a print target out of print images on which layout processing has been performed, and the print image is printed (step S 809 ). In step S 809 , if “two-sided printing” has been set in print layout information in the print history information acquired in step S 804 , printing is performed as follows. 
         [0088]    If an updated page is included in at least one of print images to be printed in the front side or the reverse side of a paper, print images of the front side and the reverse side of the paper are regarded as print targets and those images are printed, then, the process is finished. 
         [0089]      FIG. 9  is a diagram illustrating an example of a physical page to be printed in layout difference printing according to the flowchart in  FIG. 8 . 
         [0090]    In  FIG. 9 , a document  901  is a document stored in the file server  20 . In the document  901 , suppose that the contents on page 6 have been updated. Furthermore, suppose that before page 6 was updated, the document was printed in a 4 in 1 layout (image data for 4 pages of the document is arranged in a 2×2 layout on a sheet). In this case, as illustrated in a print layout result  902  in  FIG. 9(   b ), a second physical page, that is, a second page to be printed, needs to be replaced with an updated page. 
         [0091]    When layout difference printing is performed according to the flowchart in  FIG. 8 , like a printed physical page  903  as illustrated in  FIG. 9(   c ), besides page 6, the contents of which have been updated, page 5, page 7, and page 8 of the document are also printed together. 
         [0092]    As has been described, according to this exemplary embodiment, by issuing a difference printing command, even when the contents of a document have been updated after the document has been printed in a special print layout, the document can be printed automatically in the same print layout as was printed before. 
         [0093]    According to the exemplary embodiment of the present invention, there is an advantage that it is not necessary any more to set a special print layout made in the past to replace pages, so that resulting complicated operations can be eliminated. 
         [0094]    Further, the physical pages that need to be replaced including an updated page can be printed as they stand. Therefore, it is possible to replace only necessary pages in print products which were printed in the past. As a result, here is no waste of paper and the appearance of print products cannot be spoiled. 
         [0095]    According to the present invention, a recording medium storing a program of software that implements the functions above-described exemplary embodiment is supplied to a system or apparatus. The functions of the embodiment can be implemented as the computer (or the CPU or MPU) of the system or apparatus reads and executes the program code stored in the recording medium. 
         [0096]    In this case, the functions of the above-described embodiment is implemented by the program code itself read out from the recording medium, and the recording medium that stores the program code constitutes the present invention. Recording media that can be used to supply the program code include, for example, a floppy disk, hard disk, optical disk, magneto-optic disk, CD-ROM, CD-R, DVD, magnetic tape, nonvolatile memory card, and ROM. 
         [0097]    The functions of the above-described embodiment are implemented not only by executing the program code read by the computer. In response to commands of the program code, the operating system (OS) running on the computer may perform part or all of the processes, thus implementing the functions of the embodiment. 
         [0098]    While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all modifications, equivalent structures and functions. 
         [0099]    This application claims priority from Japanese Patent Application No. 2008-172246 filed Jul. 1, 2008, which is hereby incorporated by reference herein in its entirety.