Abstract:
A print controlling device is provided with an image data processing module configured to apply an image processing operation to an image data, a transmitting module configured to transmit the processed image data which is processed by the image data processing module to a printing device, and a modifying module configured to modify the image processing operation in accordance with the printing device to which the modified image data is to be transmitted.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims priority under 35 U.S.C. §119 from Japanese Patent Application No. 2007-145526 filed on May 31, 2007. The entire subject matter of the application is incorporated herein by reference. 
       BACKGROUND 
       [0002]    1. Technical Field 
         [0003]    The following description relates to a print control device, a printing system employing the print control device and a computer-readable recording medium storing printing program for modifying image data to be transmitted from the print control device to a printer. 
         [0004]    2. Related Art 
         [0005]    Conventionally, there is known a print control device such as a personal computer which is provided with an image data modifying module configured to apply a modifying process to image data to be input in a printer. Hereinafter, such an image data modifying module will be referred to as a filter. As examples of modification provided by filters, a page division for dividing a page of image into a plurality of pieces of image to be printed on a plurality of pages of recording sheet, respectively, a scaling for changing the size of an image to be printed on a recording sheet and the like have been known. 
       SUMMARY OF THE INVENTION 
       [0006]    Depending on the printers, processes to be provided by the filters should be varied. Therefore, in the print control device (e.g., a personal computer), for each printer, a printer driver and necessary filters may be installed. An example of such a configuration is disclosed in Japanese Patent Provisional Publication No. 2005-31792 (hereinafter, referred to as &#39;792 publication). 
         [0007]    In order to install the printer drivers and filters for each and every printer, a considerably large capacity is required on a hard disk driver or the like. It may be possible to select filters for each printer in order to avoid installation of all the filters available for each printer. However, in such a case, appropriate filters should be selected depending on property of each printer, which is practically very difficult. 
         [0008]    To avoid the above problem, for each printer, only necessary filters may be installed depending on the characteristic of each printer. 
         [0009]    However, in order to meet various demands of users, it is very difficult to determine the necessary filters for each printer. 
         [0010]    Considering the above deficiencies, the present invention is advantageous in that an improved print control device and programs therefor can be provided. That is, according to aspects of the invention, even if programs for processing image data are not installed for each printer, appropriate processing can be provided for each printing device. 
         [0011]    According to aspects of the present invention, there is provided a print controlling device, provided with an image data processing module configured to apply an image processing operation to an image data, a transmitting module configured to transmit the processed image data which is processed by the image data processing module to a printing device, and a modifying module configured to modify the image processing operation in accordance with the printing device to which the modified image data is to be transmitted. 
         [0012]    According to further aspects of the invention, there is provided a computer accessible recording medium containing a program to be executed by a computer, the program causing the computer to function as a print controlling device. The program causes the computer to execute the steps of modifying an image processing operation in accordance with a characteristic of a printing device to which the modified image data is to be transmitted, applying the modified image processing operation to the image data, and transmitting the modified image data to the printing device. 
         [0013]    According to the above configurations, appropriate processing can be provided corresponding to each printing device without installing the programs for processing image data for each and every printer. 
     
    
     
       BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS 
         [0014]      FIG. 1  is a perspective view schematically showing an appearance of a printing system to which the present invention is applied. 
           [0015]      FIG. 2  is a block diagram showing a configuration of a control system of the printing system shown in  FIG. 1 . 
           [0016]      FIG. 3  shows a user interface for printing which is displayed on a display of a personal computer of the printing system. 
           [0017]      FIG. 4  is a flowchart illustrating a printing process executed when the personal computer executes a printing operation. 
           [0018]      FIGS. 5A ,  5 B and  5 C schematically show examples of filtering processes. 
           [0019]      FIG. 6  is a flowchart illustrating a scaling process which is called in the printing process shown in  FIG. 4 . 
           [0020]      FIGS. 7A and 7B  are tables showing examples of functions depending on printer models. 
           [0021]      FIGS. 8A and 8B  show examples of the print setting corresponding to one of the printer models. 
           [0022]      FIGS. 9A and 9B  show examples of modification of the print setting corresponding to another printer model. 
           [0023]      FIG. 10  is a flowchart illustrating a print setting modifying process A, which corresponds to the “one” printer model. 
           [0024]      FIG. 11  is a flowchart illustrating a print setting modifying process B, which corresponds to the “another” printer model. 
           [0025]      FIG. 12  is a flowchart illustrating a page dividing process called in the printing process shown in  FIG. 4 . 
           [0026]      FIG. 13  is a flowchart illustrating a rotating process called in the printing process shown in  FIG. 4 . 
           [0027]      FIG. 14  schematically illustrates effects provided by the configuration of the embodiment. 
       
    
    
     DETAILED DESCRIPTION OF THE EMBODIMENTS 
       [0028]    Referring now to the drawings, a description will be given in detail of preferred embodiment in accordance with the present invention. 
         [0029]      FIG. 1  is a perspective view of a printing system according to an embodiment of the invention. The printing system includes, as show in  FIG. 1 , a color laser printer (hereinafter, simply referred to as a printer)  1 , and a personal computer (hereinafter, referred to as a PC)  300 , which is connected with the printer  1  via a network W such as a LAN (Local Area Network) or the Internet. It should be noted that, a plurality of printers may be additionally connected to the network W. 
         [0030]    The printer  1  is provided with a well-known printer engine  2  (see  FIG. 2 ) which is configured to form images in accordance with a so-called electro-photographic imaging process, using yellow, magenta, cyan and black toners. The printer engine  2  forms images on recording sheets on page basis. Specifically, the recording sheets are accommodated in a sheet feed tray  3  and fed inside the printer  1  one by one. The printer engine  2  forms an image on each of the recording sheets, which are discharged on a stacker  4 . On an outer surface of the printer  1 , a operation panel  5  is provided, which includes a display unit  5 A and various operation buttons allowing a user to input various commands and the like. 
         [0031]      FIG. 2  is a block diagram showing an electrical configuration of the printing system. 
         [0032]    As shown in  FIG. 2 , a main body  310  of the PC  300  includes a CPU (Central Processing Unit)  311 , a ROM (Read Only Memory)  312 , a RAM (Random Access Memory)  313 , and an HDD (Hard Disk Drive)  314 . To the main body  310 , a display  320  such as a CRT (Cathode Ray Tube), a keyboard  330  and a mouse  340  are connected (see  FIG. 1 ). Further, the main body  310  of the PC  300  is provided with a network port I/F (interface)  350  for connecting the PC  300  to the network W or a public telephone line. 
         [0033]    The printer  1  is provided with a control unit  10  for controlling the printer engine  2  and the like. The control unit  10  is configured as a microcomputer provided with a CPU  10 A, a ROM  10 B and a RAM  10 C. The control unit  10  is also provided with an NVRAM (Non-Volatile RAM)  10 D which retains data even if power supply is off. The printer  1  further includes a network port I/F (interface)  11  for connecting the printer  1  with the PC  300  via the network W. 
         [0034]    Next, a process executed by the control system described above will be described.  FIG. 3  shows a user interface  500  which is a dialogue window displayed when the print data is generated with an application in the PC  300  and the user instructs to start a printing operation. It should be noted that the user interface  500  is displayed during execution of the application, using a module of the printer driver. 
         [0035]    As shown in  FIG. 3 , the user interface  500  is of a well-known dialogue window provided with a printer name indicating section  501 , an “OK” button  502  for executing the printing operation, and cancel button  503  for terminating the printing operation. 
         [0036]    Further, as shown in  FIG. 3 , the user interface  500  includes the following sections/buttons. That is, the user interface  500  includes a check box  505  for reducing the image (according to the embodiment, the reduction ratio is fixed to 71%) and a division number input box  506  for entering a number of sheets on which an image for one page is divided and printed. 
         [0037]    If the “OK” button  502  is clicked using the mouse  340 , the CPU  311  of the PC  300  executes a printing process shown in  FIG. 4  by executing a program stored in the HDD  314  as a printer driver. 
         [0038]      FIG. 4  is a flowchart illustrating the printing process. As shown in  FIG. 4 , in SI, the process acquires a model type of the printer  1  displayed on the printer name indicating section  501  of the user interface  500 . Then, in S 3 , S 5  and S 7 , a scaling process, a page dividing process and a rotating process are subsequently executed. Then, in S 9 , the print data to which the filtering processes are applied in S 3 , S 5  and S 7  is converted into PDL data and transmitted to the printer  1 . Then, the process is terminated. 
         [0039]    The scaling process in S 3  is, as shown in  FIG. 5A , to reduce an image P represented by the print data to a reduced image PA which is printed on the recording sheet. The dividing process in S 4  is, as shown in  FIG. 5B , to divide the image P represented by the print data into a plurality of (in the example of  FIG. 5B , two) images PB 1  and PB 2 . The rotating process in S 7  is, as shown in  FIG. 5C , to rotate the image PB 1  represented by the print data so that a rotated image PC is printed on the recording sheet. As described in detail hereinafter, the filtering processes (S 3 , S 5 , S 7 ) are modified based on the model type acquired in SI. 
         [0040]      FIG. 6  is a flowchart illustrating the scaling process. As shown in  FIG. 6 , in S 31 , the CPU  311  retrieves the print data, which has been generated by an application and stored in a predetermined area on RAM  313 . Then, in S 32 , the CPU  311  acquires the print setting from the print data. In S 33 , the CPU  311  modifies the print data based on the model name. 
         [0041]      FIGS. 7A and 7B  are tables showing functions corresponding to model types of the printer  1 . In the following description, for explanation purpose, a model having functions shown in  FIG. 7A  will be referred to as model A, and a model having functions shown in  FIG. 7B  will be referred to as model B. 
         [0042]    As shown in  FIG. 7A , the model A printer  1  is capable printing image data for A4, A5, B5, B6, A3 and B4 recording sheets. Specifically, when the sheet size represented by the image data is A3 or B4, the image is divided into two images (see  FIG. 5B ) and the two divided images are printed on two pages of A4 size sheets or B5 size sheets, respectively. The model A printer  1  is capable of using a first tray and a second tray as its usable sheet feed tray  3 , and each of the first and second tray can accommodate one of A4, A5, B5 and B6 recording sheets. Further, the model A printer  1  is capable of printing an image in either portrait or landscape orientation. That is, the orientation of the recording sheets with respect to the printer  1  is unchangeable, while the image is printed as rotated by 90 degrees when the image is printed in the landscape orientation. 
         [0043]    If the model A printer  1  is selected as the printer  1  to be used in the printer name indicating section  501  of the user interface  500  and the print settings as shown in  FIG. 8A  are included in the print data, the CPU  311  modifies the print settings in S 33  to obtain modified print settings as shown in  FIG. 8B . That is, in  FIG. 8A , the size of the recording sheet is B4. In this case, as described above, the image is divided into two divided images, which are printed on B5 size recording sheets, respectively. 
         [0044]    As shown in  FIG. 7B , the model B printer  1  is capable printing image data for A4, A5, B4, B5, B6 and A3 recording sheets. Printing an A3 size image on the A3 recording sheet can be executed only when a manual feed tray. Otherwise, the A3 size image is reduced. The model B printer  1  is capable of using a first tray, a second tray and a manual feed tray as its usable sheet feed tray  3 , and each of the first and second tray can accommodate one of A4, A5, B4, B5 and B6 recording sheets. The manual feed tray can be used for all the usable recording sheets (i.e., A4, A5, B4, B5, B6 and A3 recording sheets). Further, the model B printer  1  is capable of printing an image in either portrait or landscape orientation. That is, the orientation of the recording sheets with respect to the printer  1  is unchangeable, while the image is printed as rotated by 270 degrees when the image is printed in the landscape orientation. 
         [0045]    In the print setting modifying process executed in S 33 , if the model B printer  1  is selected as the printer  1  to be used and the print data includes the print settings shown in  FIG. 9A , the CPU  311  modifies the print settings to obtain the modified print settings as shown in  FIG. 9B . Specifically, since the print setting shown in  FIG. 9A  specifies the A4 recording sheet and second tray, the modified print setting shown in  FIG. 9B  specifies that the scaling setting is “reduction.” Further, in  FIG. 9A , the landscape orientation is specified, and accordingly, the modified print setting shown in  FIG. 9B  specifies rotation of the image by 270 degrees in accordance with the characteristic of the model B printer  1 . 
         [0046]      FIGS. 10 and 11  show flowcharts each illustrating the print setting modifying process executed in S 33 . Specifically,  FIG. 10  shows a print setting modifying process A which is executed when the printer  1  is the model A printer, and  FIG. 11  shows a print setting modifying process B which is executed when the printer  1  is the model B printer. 
         [0047]    In the print setting modifying process A shown in  FIG. 10 , in S 101 , the CPU  311  judges whether the number of division in the print setting is set to two or more. If the number of division is set to one or is not set (S 101 : NO), the CPU  311  judges whether the size of the recording sheet in the print setting is A3 or B3 (S 102 ). If the size of the recording sheet is set to A3 or B4 (S 102 : YES), the CPU  311  sets the number of division to two (S 103 ) and proceeds to S 104 . If the size of the recording sheet is not A 3  or B4 (S 102 : NO), the CPU  311  skips S 103  and proceeds to S 104 . If the number of division is set to two or more (S 101 : YES), the CPU  311  also proceeds to S 104 . With the above process, if the print setting included in the print data does not specify the number of division of the image (S 101 : NO), and specifies A 3  or B4 size of the recording sheets (S 102 : YES) which are not accommodated in the model A printer  1 , the number of division is set to two (S 103 ). 
         [0048]    In S 104 , the CPU  311  judges whether the printing orientation specified in the print setting is “portrait” or not. If the portrait orientation is specified (S 104 : YES), the CPU  311  sets the rotation of image to 90 degrees (S 105 ). If the portrait orientation is not specified (S 104 : NO), the CPU  311  does not change the printing orientation, and completes the print setting modifying process A. After execution of this process, the CPU  311  proceeds to S 34  of the scaling process shown in  FIG. 6 . 
         [0049]    In the print setting modifying process B shown in  FIG. 11 , the CPU  311  judges whether the size of the recording sheet specified by the print setting is A3 (S 201 ). If the specified size is A3 (S 201 : YES), the CPU  311  judges whether the paper tray specified by the print setting is the manual feed tray (S 202 ) since, in the model B printer  1 , the A 3  recording sheets can be set to the manual feed tray. If the specified tray is not the manual feed tray (S 202 : NO), the CPU  311  sets the scaling of the print setting to “reduction” (S 203 ). If the specified tray is the manual feed tray (S 202 : YES), the CPU  311  does not change the print setting. If the specified size is not A 3  (S 201 : NO), the CPU  311  proceeds from S 201  to S 204 , skipping S 203 . With the above process, if the size of the recording sheet specified in the print setting is A3 (S 201 : YES) and the tray specified in the print setting is not the manual feed tray (S 202 : NO), the CPU  311  sets the scaling of the print setting to “reduction” (S 203 ). 
         [0050]    In S 204 , the CPU  311  judges whether the printing orientation specified in the print setting is the landscape orientation. If the landscape orientation is specified (S 204 : YES), the CPU  311  sets the rotation angle to 270 degrees (S 205 ). If the printing orientation specified in the print setting is not the landscape orientation (i.e., the portrait orientation is specified), the CPU  311  does not change the printing orientation. After completion of the print setting modifying process B, the CPU  311  proceeds to S 34  of the scaling process shown in  FIG. 6 . 
         [0051]    As above, after the CPU  311  modifies (if necessary) the print setting in accordance with the characteristic of the printer  1  acquired in SI ( FIG. 4 ), the CPU  311  judges whether the scaling of the print setting is set to “reduction” in S 34 . If the scaling is set to “reduction” (S 34 : NO), the CPU  311  proceeds to S 35 , skipping S 36 , and transmits the print data to the RAM  313  and the CPU  311  proceeds to S 5  of the print setting shown in  FIG. 4 . If the scaling is set to “reduction” (S 34 : YES), the CPU  311  executes an operation to reduce the image printed on the recording sheet at the ratio of 71%, and then proceeds to S 35 . With the above process, the scaling process (see  FIG. 5A ) is executed when necessary. 
         [0052]      FIG. 12  is a flowchart illustrating the page dividing process called in S 5  of the printing process shown in  FIG. 4 . In the page dividing process, the CPU  311  retrieves the print data as is done in S 31 . Then, in S 52 , the CPU  311  acquires the print setting from the print data and executes the print setting modifying process in S 53  in accordance with the model type acquired in SI. It should be noted that the print setting modifying process executed in S 53  is the same as the process executed in S 33  of the scaling process show in  FIG. 6 . The print setting may be modified when each filtering process is executed. Therefore, according to the embodiment, the same print setting modifying process is executed in each filtering process. 
         [0053]    In S 54 , the CPU  311  judges whether the number of division is set to more than one. If the number of division is set to one or the number of division is not set in the print setting (S 54 : NO), the CPU  311  proceeds to S 55  and transmits the print data to the RAM  313 . Then, the CPU  311  proceeds to S 7  of the printing process shown in  FIG. 4 . 
         [0054]    If the number of division is set to more than one (S 54 : YES), the CPU  311  judges whether the printing orientation should be changed in S 56 . If the printing orientation is not to be changed (S 56 : NO), the CPU  311  divides the page data in accordance with the number of division of the print setting (S 57 ) and transmits the print data to the RAM  313  (S 55 ). 
         [0055]    If the printing orientation is to be changed (S 56 : YES), the CPU  31  proceeds to S 61  and judges whether the current printing orientation is “landscape” or not (i.e., “portrait”). If the current printing orientation is “landscape” (S 61 : YES), the CPU  311  changes the printing orientation to “portrait” (S 62 ), and proceeds to S 57 . If the current printing orientation is “portrait” (S 61 : NO), the CPU  311  changes the printing orientation to “landscape” (S 63 ) and proceeds to S 57 . As above, in the page dividing process shown in  FIG. 12 , the page is divided in accordance with the number of division specified in the print setting (see  FIG. 5B ). 
         [0056]      FIG. 13  is a flowchart illustrating the rotating process called at S 7  of the printing process shown in  FIG. 4 . In the rotating process shown in  FIG. 13 , similarly to S 31 , the CPU  311  retrieves the print data from the RAM  313  (S 71 ). Then, in S 72 , the CPU  311  acquires the print setting from the print data, and executes the print setting modifying process which is the same process executed in S 33  in the scaling process shown in  FIG. 6 . 
         [0057]    In S 74 , the CPU  311  judges whether the rotation angle of the print setting is set to zero (0) degree. If the rotation angle is set to zero degree (S 74 : YES), the CPU  311  proceeds to S 75 , transmits the print data to the RAM  313  and proceeds to S 9  of the printing process shown in  FIG. 4 . If the oration angle is not set to zero degree (S 7 ;  4 : NO), the CPU  311  executes a process to rotate the page data in accordance with the rotation angel set in the print setting (S 76 ), and proceeds to S 75 . With the above process, the image to be printed is rotated if necessary (see  FIG. 5C ). 
         [0058]    After completion of the filtering processes (S 3 , S 5  and S 7 ), the CPU  311  applies the PDL conversion process to the print data, which has been processed by the filtering processes, in S 9 , and transmits the generated PDL data to the printer  1 . 
         [0059]    As described above, according to the embodiment, the print setting is modified in accordance with the model type of the printer  1  (S 33 , S 53  and S 73 ), and then respective filtering operation are executed in the filtering processes (S 3 , S 5  and S 7 ). Therefore, according to the embodiment, without installing the printer drivers including the filters for all models of the printer  1 , appropriate filtering processes can be executed in accordance with the model type of the printer  1  to be used. 
         [0060]      FIG. 14  schematically shows the configuration of the programs according to the embodiment. That is, according to the embodiment, a program  90  of the main routine including the programs (filtering program modules)  91 ,  92  and  93  for respective filtering processes is commonly used, while programs  95 A and  95 B corresponding to respective models A and B of the printer  1  are additionally installed on the HDD  314 . The additional programs  95 A and  95 B may include PDL-conversion program modules  96 A and  96 B corresponding to the model A and model B executing the PDL converting process A and PDL converting process B corresponding to the model type A and model type B, and print setting modifying program modules  97 A and  97 B executing the print setting modifying process A and print setting modifying process B, respectively. According to the above configuration, the areas on the HDD  314  can be saved in comparison with a case where printer drivers corresponding to individual printer models are stored. By configuring the print setting modifying program modules  97 A and  97 B of the print setting modifying processes A and B appropriately, the print setting can be appropriately modified in accordance with the characteristics of the model types of the printer  1 . 
         [0061]    It should be noted that, in the above-described exemplary embodiment, the number of printer models are two for the sake of explanation. However, it is appreciated by person of ordinary skill in the art that the invention need not be limited to the case where the model type is two, but the invention is applicable when the number of model types is more than two. 
         [0062]    It should be noted that the invention need not be limited to the configuration of the above-described exemplary embodiment, and various modification can be made without departing the scope of the invention. For example, in the embodiment, the print setting is modified in S 33 , S 53  and S 73 . This may be modified such that the filtering processes may be modified. It should be noted, however, by modifying the print setting as in the embodiment, the storage capacity of the HDD  314  is well saved. 
         [0063]    In the embodiment, the model types are acquired via the user interface  500 . This may be modified such that the CPU  311  may acquire the model types of the printer by exchanging commands with the printer  1 . 
         [0064]    As the filtering processes, in addition to the above described processes, a watermark applying process, a date applying process and the like may be employed. In particular, when the print data including the color watermark is to be transmitted to a printer which only prints a monochromatic image, the color watermark may be converted into a monochromatic gray-scale image for a certain printer, while the color watermark may be converted into a patterned (e.g., hatching-applied) image for another printer. Such a modification can also be achieved easily according to the invention.