Abstract:
When it is activated a printer provided with a print data generator operable to convert inputted image data into print data, and a printing mechanism operable to perform, upon receipt of a print instruction, printing an image with respect to a print medium based on the print data, the print data generator is automatically activated before the print instruction is received.

Description:
BACKGROUND  
       [0001]     1. Technical Field  
         [0002]     The present invention relates to a method of driving a printer in which a print data generator is initialized based on print setting information.  
         [0003]     2. Related Art  
         [0004]     A printer can usually perform printing in the size or quality of plural kinds of print medium at plural print qualities (print resolutions).  
         [0005]     The user can select the kind of printing medium and the print quality via a user interface (print setting screen) in printing.  
         [0006]     The printer is provided with a halftoning processor and a group of lookup tables (plural LUTs corresponding to the kind of print medium and the print quality) for halftoning. Before driving a printing mechanism, the halftoning processor is initialized by referring to the LUT corresponding to the kind of print medium and the print quality selected by the user among the group of LUTs. With this initialization, the halftoning processor can generate data for printing operation (print data corresponding to the kind of print medium and print quality).  
         [0007]     However, the CPU used for a printer typically has a lower processing ability than the CPU used for the desk top computer, and requires a lot of time to make initialization for the printing operation. That is, conventionally, since the halftoning processor generates the data for printing operation by referring to the LUT after a print instruction is made by pressing a print start button, it takes a lot of time to start the operation of a printing mechanism by making the print-instruction. Since there is no motion for a while, the user is irritated. Further, since the time required from the print start instruction till the print completion (paper ejection) for the first page is longer than the time required from the paper ejection of the previous page till the print completion (paper ejection) for the second and ensuing pages, the user feels less comfortable to use the printer.  
       SUMMARY  
       [0008]     It is therefore an advantage of some aspects of the invention to provide a method of driving a printer, in which the time required from a print instruction to the start of driving the printing mechanism is shortened.  
         [0009]     According to one aspect of the invention, there is provided a method of driving a printer which comprises a print data generator operable to convert inputted image data into print data, and a printing mechanism operable to perform, upon receipt of a print instruction, printing an image with respect to a print medium based on the print data, the method comprising:  
         [0010]     activating the printer; and  
         [0011]     initializing the print data generator automatically, before the print instruction is received.  
         [0012]     According to one aspect of the invention, there is also provided a method of driving a printer which comprises a print data generator operable to convert inputted image data into print data, and a printing mechanism operable to perform, upon receipt of a print instruction, printing an image with respect to a print medium based on the print data, the method comprising:  
         [0013]     displaying a print setting screen adapted to update a condition of the printing therethrough;  
         [0014]     updating the condition through the print setting screen;  
         [0015]     counting a prescribed time period when the setting is performed; and  
         [0016]     initializing the print data generator based on the updated condition when the prescribed time period is counted.  
         [0017]     According to one aspect of the invention, there is also provided a method of driving a printer which comprises a print data generator operable to convert inputted image data into print data, and a printing mechanism operable to perform, upon receipt of a print instruction, printing an image with respect to a print medium based on the print data, the method comprising:  
         [0018]     displaying a first screen adapted to input the print instruction therethrough;  
         [0019]     displaying a second screen adapted to update a condition of the printing therethrough, and having a lower hierarchy than the first screen;  
         [0020]     updating the condition through the print setting screen;  
         [0021]     detecting a transition from the second screen to the first screen after the updating is performed; and  
         [0022]     initializing the print data generator based on the updated condition when the transition is detected.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0023]     The invention will be described with reference to the accompanying drawings, wherein like numbers reference like elements.  
         [0024]      FIG. 1  is a block diagram showing a printer according to a first embodiment of the invention.  
         [0025]      FIG. 2A  is a flowchart showing an initialization performed when the printer of  FIG. 1  is activated.  
         [0026]      FIG. 2B  is a flowchart showing an initialization performed when a related-art printer is activated.  
         [0027]      FIG. 3  is a flowchart showing a print processing executed by the printer of  FIG. 1 .  
         [0028]      FIG. 4  is a block diagram showing a printer according to a second embodiment of the invention.  
         [0029]      FIG. 5  is a diagram showing a print instruction screen and a print setting screen used with the printer of  FIG. 4 .  
         [0030]      FIG. 6  is a flowchart showing a print processing executed by the printer of  FIG. 4 .  
         [0031]      FIG. 7  is a block diagram showing a printer according to a third embodiment of the invention.  
         [0032]      FIG. 8  is a flowchart showing a print processing executed by the printer of  FIG. 7 .  
         [0033]      FIG. 9  is a block diagram showing a printer according to a fourth embodiment of the invention.  
         [0034]      FIG. 10  is a flowchart showing a print processing executed by the printer of  FIG. 9 . 
     
    
     DESCRIPTION OF EXEMPLARY EMBODIMENTS  
       [0035]     Embodiments of the invention will be described below in detail with reference to the accompanying drawings.  
         [0036]      FIG. 1  shows a printer  1001  according to a first embodiment of the invention. The printer  1001  comprises an input device group  1011 , a user interface  1012 , a layout processor  1013 , a halftoning device  1014  and a printer unit  1015 .  
         [0037]     The input device group  1011  is composed of a plurality of devices, including a scanner  1111 , a memory card  1112  and an external connection interface  1113  in this embodiment.  
         [0038]     The user interface  1012  may acquire setting instruction information concerning the input device group  1011 , print medium (paper kind) and/or print quality (resolution) from the operations of the user. The user interface  1012  has a print start button, and stores the default setting values of the input device group  1011 , the print medium (paper kind) and the print quality (resolution).  
         [0039]     The layout processor  1013  can receive the select instruction information of the input device (any one of the scanner  1111 , the memory card  1112  and the external connection interface  1113 ) and the setting instruction information of the print medium and the print quality from the user interface  1012 .  
         [0040]     The halftoning device  1014  comprises a halftoning processor (print data generator)  1141  and a lookup table group  1142 . The halftoning processor  1141  can convert an image acquired via the input device group  1011  into the print data by referring to the lookup table group  1142 . The lookup table group  1142  is composed of a plurality of lookup tables (LUT( 1 ) to LUT(n)) corresponding to the print medium and/or print quality.  
         [0041]     The printer unit  1015  can acquire the print data from the halftoning processor  1141  and print it.  
         [0042]     The printer  1001  automatically initializes the input device group  1011 , the user interface  1012 , the printer unit  1015  and the halftoning device  1014  before starting the printing, when the power is turned on.  
         [0043]     In initializing the halftoning device  1014 , the halftoning processor  1141  selects a lookup table corresponding to the default setting values of the print medium and the print quality from among the lookup tables (LUT( 1 ) to LUT(n)). The default setting values may be preset or set lastly by the user.  
         [0044]     In the normal use of the printer  1001 , the setting values of the print medium and the print quality are not frequently changed. In the printer  1001 , the halftoning device  1014  is automatically initialized based on the default setting values of the print medium and the print quality, before the user presses the print start button, after the power is turned on. In making the automatic initialization, the input device used by the user who uses the printer  1001  at the previous time or the setting values of the printing media or print quality are regarded as the default setting values for the initialization, whereby there is no inconvenience that it takes a long time since the print start button is pressed till the printing is started, unless the user changes those setting values.  
         [0045]     Next, a processing flow of the printer  1001  will be described below. A driving method for the printer according to one embodiment of the invention and the driving method for a related-art printer will be described below at the same time.  
         [0046]     As shown in  FIG. 2A , when the printer  1001  is activated (S 1101 ), the input device group  1011  is initialized (S 1102 ), the printer unit  1015  is initialized (S 1103 ), and the user interface  1012  is initialized (S 1104 ). Further, the halftoning device  1014  is initialized (S 1105 ), whereby the automatic initialization processing at the time of activation is finished (S 1106 ).  
         [0047]     In initializing the input device group  1011 , the printer unit  1015 , the user interface  1012  and the halftoning device  1014 , the setting values of the print medium and/or print quality may be stored as the fixed values (setting values considered to be most frequently used by the user) in a non-volatile memory (EEPROM), and adopted as the default values. The fixed values can be preset during the manufacture or at the shipment from the factory of the printer  1001 . Also, the user may change the fixed values. In this case, in making the first printing processing after the user activates the printer  1001 , it is unnecessary to initialize the halftoning device  1014  after starting the printing processing, if the setting values of the print medium and/or print quality are the same as the fixed values.  
         [0048]     Also, the last setting values employed at the previous time may be stored in the non-volatile memory and adopted as the default values. In this case, in making the first printing processing after the user activates the printer  1001 , it is unnecessary to initialize the halftoning device  1014  after starting the printing processing, if the setting values of the print medium and/or print quality are the same as the last setting values.  
         [0049]     As shown in  FIG. 2B , when the related-art printer is activated (S 1301 ), the input device group  1011  is initialized (S 1302 ), the printer unit  1015  is initialized (S 1303 ), and the user interface is initialized (S 1304 ) in the same way as the printer  1001  of  FIG. 2A , but the halftoning device  1014  is not initialized, whereby the automatic initialization processing at the time of activation is finished (S 1306 ).  
         [0050]     As shown in  FIG. 3 , after the automatic initialization processing at the time of activation is finished, the user selects the start of printing processing from the user interface  1012  (S 1201 ), and selects any one of the scanner  1111 , the memory card  1112  and the external connection interface  1113  from the input device group  1011  (S 1202 ). Then, the user selects the layout such as magnification and arrangement (S 1203 ), selects the print medium and the print quality (S 1204 ), and selects the print object image data (S 1205 ). Thereafter, the user makes a print start instruction by pressing the print start button (S 1206 ).  
         [0051]     Thereby, the printer unit  1015  starts the printing processing. The printer unit  1015  judges whether or not the initialization of the halftoning device  1014  is finished (whether or not the initialization of the halftoning device  1014  is newly required) (S 1207 ). When the initialization is not finished, for example, when the input device (any one of the scanner  1111 , the memory card  1112  and the external connection interface  1113 ) is changed (“No” at S 1207 ), the LUT (k) (k=1 to n) corresponding to the print medium and/or print quality is selected from the lookup table group  1142 , and the halftoning device  1014  is initialized by referring to the selected LUT (S 1209 ).  
         [0052]     When the initialization is finished at S 1207 , for example, when the input device (any one of the scanner  1111 , the memory card  1112  and the external connection interface  1113 ) is not changed (“Yes” at S 1207 ), it is judged whether or not the print medium and the print quality are the same as the settings in the printing processing at the previous time (S 1208 ). If they are the same (“Yes” at S 1208 ), the print data generation is performed (S 1210 ) without performing an initialization processing for the halftoning device  1014 . That is, in a case where the setting value in the print instruction is identical with the default value used in the automatic initialization processing shown in  FIG. 2A , or in a case where the setting value in the print instruction is identical with the value which is lastly effected by the user before the latest deactivation and is used in the automatic initialization processing, the determination in S 1208  is made as “Yes” and a further initialization processing is omitted. When the printing processing is started after the automatic initialization processing at the time of activation is finished (S 1106 ), it is considered that the initialization is finished at S 1207 .  
         [0053]     In the normal use of the printer  1001 , since the setting values of the print medium and/or print quality are not frequently changed, the print medium and the print quality are mostly the same as the settings in the printing processing at the previous time. Accordingly, the initialization of the halftoning device  1014  at S 1209  is seldom performed.  
         [0054]     Further, in a case where a plurality of print jobs are executed after the activation, and the setting value used in a current print job is identical with the setting value used in an immediate previous job, the determination in S 1208  is made as “Yes” and a further initialization processing is omitted.  
         [0055]     If the print medium and the print quality are different from those of the printing processing at the previous time at S 1208  (“No” at S 1208 ), the processing is passed to S 1209  to perform the initialization of the halftoning device  1014  at S 1209 .  
         [0056]     After the print data generation at S 1210  is finished, the printing operation is performed (S 1211 ), and the print medium ejection is performed (S 1212 ).  
         [0057]     Thereafter, it is judged whether or not there is the next page in the printing processing (S 1213 ). If there is the next page (“Yes” at S 1213 ), the processing is returned to S 1210 . If there is not the next page (“No” at S 1213 ), the processing is finished (S 1214 ). When the other printing processing (print job) is performed without deactivating the printer  1001 , the processing is started from S 1201 . However, as described the above, in a case where the setting value used in a current print job is identical with the setting value used in an immediate previous job, a further initialization processing may be omitted.  
         [0058]     The default setting values of the print medium and the print quality can be set for each of the input devices  1011 . In this case, the halftoning processor  1141  selects, in the automatic initialization, the lookup table LUT(k) corresponding to the default setting values of the print medium and the print quality of the input device that becomes effective firstly after the activation of the printer  1001 .  
         [0059]     Next, a second embodiment of the invention will be described. In this embodiment, when the print medium type A or print quality B is set on the print setting screen, the halftoning processor (print data generator) is initialized if a predetermined time passes after the setting time.  
         [0060]     As shown in  FIG. 4 , a printer  2001  comprises a display  2011 , a print setting information storage  2012 , a time counter  2013 , a halftoning data storage (print data generation table storage)  2014 , a print controller  2015 , a printer unit  2016  (printing mechanism), and a halftoning processor (print data generator)  2017 .  
         [0061]     In the display  2011 , a print setting screen  2111  including the text boxes or the like for a plurality of print setting information. In this embodiment, the print setting information is print medium type A and print quality B, and the print setting screen  2111  contains the text boxes a, b for them, as shown in  FIG. 5 . In this specification, the “print setting information” is information which changes the initializing condition of the halftoning processor  2017 , if the setting is changed. In this embodiment, the initializing condition is the setting of print medium type A or print quality B.  
         [0062]     An initial screen of the display  2011  is a print instruction screen  2110  as shown in  FIG. 5 , and a print setting screen  2111  exists at its lower hierarchy. By pressing a print setting button PS on the print instruction screen  2110  (indicated as the “print setting” in  FIG. 5 ), the screen display is changed to the print setting screen  2111 .  
         [0063]     Though a print start button SB (indicated as the “print start” in  FIG. 5 ) is displayed on the print instruction screen  2110 , the print instruction screen  2110  and the print setting screen  2111  may be integrated on the same screen in this embodiment. That is, in this embodiment, the halftoning processor  2017  is initialized, irrespective of the hierarchical structure of an display  2011 , whereby even if the print start button SB and the text boxes a, b are displayed on the same screen, the action of this embodiment is not affected. In this embodiment, the print start button SB is a software button, but may be a hardware button (not shown) provided in the printer  2001 .  
         [0064]     The print setting information storage  2012  stores the print medium type A and the print quality B at the previous initialization of the halftoning processor  2017 . In this embodiment, the initializing condition information of the halftoning processor  2017  is the print medium type A and the print quality B used at the previous initialization of the halftoning processor  2017 , as previously described, but may be the information (e.g., table ID) specifying a print data generation table used at the previous initialization of the halftoning processor  2017 .  
         [0065]     The time counter  2013  counts a predetermined time period elapsed from the setting time, if at least one of the print medium type A and the print quality B is set on the print setting screen  2111 .  
         [0066]     The halftoning data storage  2014  stores a group of lookup tables (LUT( 1 ) to LUT(n): halftoning data) corresponding to a plurality of print medium types A and a plurality of print qualities B.  
         [0067]     The print controller  2015  performs the following processing, when the count value of the time counter  2013  indicates the elapse of the predetermined time, if at least one of the print medium type A and the print quality B is set on the print setting screen  2111 .  
         [0068]     That is, the initialization of the halftoning processor  2017  is already performed, and it is determined whether or not the print medium type A and the print quality B that are newly set are identical to the print medium type A and the print quality B used at the previous initialization of the halftoning processor  2017 , in which if identical, the initialization of the halftoning processor  2017  is not performed, or if not identical, the initialization of the halftoning processor  2017  is performed.  
         [0069]     This initialization is performed based on the lookup table corresponding to the latest print medium type A and/or print quality B. That is, the print controller  2015  initializes the halftoning processor  2017  by referring to the lookup table corresponding to the setting values of the print medium type A and print quality B from the group of lookup tables (LUT( 1 ) to LUT(n)). The halftoning processor  2017  can convert an image of processing object into the print data, and the printing mechanism  2016  performs the printing by acquiring the print data from the halftoning processor  2017 .  
         [0070]     The above initialization processing is also performed when a print instruction is made on the print instruction screen  2110 .  
         [0071]     The initialization of the halftoning processor  2017  is omitted if the latest initializing condition information is identical to the previous initializing condition information, so that the load of the CPU mounted on the printer  2001  is relieved. Also, since the initialization is performed before the print start button SB is pressed, there is no drawback that it takes a long time period since the print start button SB is pressed till the first print is performed.  
         [0072]     Referring to a flowchart of  FIG. 6 , a print processing executed by the printer  2001  will be described below.  
         [0073]     First, a print menu (the initial screen is the print instruction screen  2110 ) is opened (S 2101 ), and it is determined whether or not there is any print instruction, namely, the print start button SB is pressed (S 2102 ). If there is any print instruction at S 2102 , the print menu (print instruction screen  2110 ) is closed (S 2112 : the print menu is not necessarily closed), and the processing is passed to S 2113 . The processing following S 2113  (S 2112  to S 2118 ) will be described later.  
         [0074]     If there is no print instruction at S 2102  (“No” at S 2102 ), it is determined whether or not the print medium type A and/or print quality B is newly set (S 2103 ). If the print medium type A and/or print quality B is not newly set (“No” at S 2103 ), the processing is returned to S 2102 . If the print medium type A and/or print quality B is newly set at S 2103  (“Yes” at S 2103 ), the time counter  2013  is initialized to start the time count (S 2104 ). Then, it is determined whether or not the time counter  2013  counts N seconds (N seconds pass from the setting of the print medium type A or the print quality B) (S 2105 ). If N seconds are not counted (“No” at S 2105 ), it is determined whether or not the print medium type A and/or print quality B is newly set (S 2106 ).  
         [0075]     If the print medium type A and/or print quality B are newly set at S 2106  (“Yes” at S 2106 ), the processing is returned to S 2104 . Thereby, the time counter  2013  (timer) is initialized again, and the time count is started (S 2104 ). If the print medium type A and/or print quality B is not newly set at S 2106  (“No” at S 2106 ), it is determined whether or not there is any print instruction (S 2107 ). If there is no print instruction at S 2107  (“No” at S 2107 ), the processing is returned to S 2105 . In this case, the time counter  2013  is not initialized but continues to count the time. If there is any print instruction at S 2107  (“Yes” at S 2107 ), the processing is passed to S 2112 , whereby the halftoning processor  2017  is initialized directly as will be described later.  
         [0076]     If the time counter  2013  counts N seconds at S 2105  (“Yes” at S 2105 ), the time count is finished (S 2108 ).  
         [0077]     Thereafter, it is determined whether or not the halftoning processor  2017  is initialized (S 2109 ). If it is determined that the halftoning processor  2017  is initialized at S 2109  (“Yes” at S 2109 ), it is determined whether or not the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  2012  (i.e., the print medium type A and/or print quality B at the previous initialization of the halftoning processor  2017 ) (S 2110 ). If it is determined that the settings of the print medium type A and/or print quality B are not identical to the settings stored in the print setting information storage at S 2110  (“No” at S 2110 ), and if it is determined that the halftoning processor  2017  is not initialized at S 2109  (“No” at S 2109 ), the LUT corresponding to the settings of the print medium type A and/or print quality B is selected, the halftoning processor  2017  is initialized (S 2111 ), and the processing is returned to S 2102  to determine whether or not there is any print instruction. If it is determined that the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  2012  at S 2110  (“Yes” at S 2110 ), the processing is returned to S 2102  to determine whether or not there is any print instruction.  
         [0078]     If it is determined that there is any print instruction at S 2102  (“Yes” at S 2102 ), the processing is returned to S 2112  to close the print instruction screen  2110 , as previously described. When the print instruction screen  2110  is closed, it is determined whether or not the halftoning processor  2017  is already initialized (S 2113 ). If the halftoning processor  2017  is already initialized at S 2113  (“Yes” at S 2113 ), it is determined whether or not the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  2012  (i.e., the print medium type A and/or print quality B at the previous initialization of the halftoning processor  2017 ) (S 2114 ). If the settings of the print medium type A and/or print quality B are not identical to the settings stored in the print setting information storage  2012  at S 2114  (“No” at S 2114 ), and if the halftoning processor  2017  is not initialized at S 2113  (“No” at S 2113 ), the LUT corresponding to the settings of the print medium type A and/or print quality B is selected, the halftoning processor  2017  is initialized (S 2115 ), and the processing is passed to the print data generation (S 2116 ). If the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  2012  at S 2114  (“Yes” at S 2114 ), the processing is also passed to the print data generation (S 2116 ).  
         [0079]     Thereafter, the printer unit (printing mechanism)  2016  is driven (S 2117 ), and after the printing is performed, the processing is finished (S 2118 ).  
         [0080]     If the value of N is too small, when one of the print medium type A and the print quality B is newly set, the halftoning processor  2017  is initialized while the user tries to newly set the other, whereby the processing is returned to S 2102 . Accordingly, when the user sets the print medium type A or the print quality B, the halftoning processor  2017  must be initialized again (see S 2105 ). Also, if the value of N is too large, when a print instruction is made (the print start button SB is pressed) (see “Yes” at S 2107 ) before starting the initialization of the halftoning processor  2017 , the initialization of the halftoning processor  2017  is started based on the print instruction (see S 2115 ), whereby the effects of this embodiment can not be attained. Accordingly, the value of N is decided in view of the above circumstances.  
         [0081]     A sub-program for performing the processing (especially from S 2102  to S 2115 ) as shown in the flowchart of  FIG. 6  constitutes a print data generator initialization program for the printer.  
         [0082]     Next, a third embodiment of the invention will be described. In this embodiment, when a screen on the display transits from a lower hierarchy where the print setting information is set to an upper hierarchy where the print instruction is made, the halftoning processor (print data generator) is initialized.  
         [0083]     As shown in  FIG. 7 , a printer  3002  comprises a display  3021 , a print setting information storage  3022 , a halftoning data storage (print data generation table group storage)  3023 , a print controller  3024 , a printer unit (printing mechanism)  3025 , and a halftoning processor (print data generator)  3026 .  
         [0084]     In the display  3021 , a print instruction screen  3210  is displayed as the initial screen, as shown in  FIG. 5 . A print setting button PS as described in the second embodiment is displayed on the print instruction screen  3210 . By pressing this print setting button PS, the screen display is changed to a print setting screen  3211  on the lower hierarchy. The print setting screen  3211  includes the text boxes for a plurality of print setting information. In this embodiment, like the second embodiment, the print setting information is print medium type A and print quality B, and the print setting screen  3211  contains the text boxes a, b for them.  
         [0085]     The print setting information storage  3022  stores the print medium type A and the print quality B used at the previous initialization of the halftoning processor  3026 . In this embodiment, like the second embodiment, the previous initializing condition information of the halftoning processor  3026  is the print medium type A and the print quality B used at the previous initialization of the halftoning processor  3026 , but may be the information (e.g., table ID) specifying a print data generation table used at the previous initialization of the halftoning processor  3026 .  
         [0086]     The halftoning data storage  3023  stores a group of lookup tables (LUT( 1 ) to LUT(n): halftoning data) corresponding to a plurality of print medium types A and a plurality of print qualities B.  
         [0087]     The print controller  3024  performs the following processing, when the display on the display  3021  transits from the print setting screen  3211  (lower hierarchy) to the print instruction screen  3210  (upper hierarchy), if at least one of the print medium type A and the print quality B is set.  
         [0088]     That is, the initialization of the halftoning processor  3026  is already performed, and it is determined whether or not the print medium type A and/or the print quality B that are newly set are identical to the print medium type A and/or the print quality B used at the previous initialization of the halftoning processor  3026 , in which if identical, the initialization of the halftoning processor  3026  is not performed, or if not identical, the initialization of the halftoning processor  3026  is performed.  
         [0089]     This initialization is performed based on the lookup table corresponding to the latest print medium type A and/or print quality B. That is, the print controller  3024  initializes the halftoning processor  3026  by referring to the lookup table corresponding to the setting values of the print medium type A and print quality B from the group of lookup tables (LUT( 1 ) to LUT(n)). The halftoning processor  3026  can convert an image of processing object into the print data, and the printing mechanism  3025  performs the printing by acquiring the print data from the halftoning processor  3026 .  
         [0090]     The initialization of the halftoning processor  3026  is omitted if the latest initializing condition information is identical to the previous initializing condition information, so that the load of the CPU mounted on the printer  3002  is relieved. Also, since the initialization is performed before the print start button SB is pressed, there is no drawback that it takes a long time period since the print start button SB is pressed till the first print is performed.  
         [0091]     Referring to a flowchart of  FIG. 8 , a print processing executed by the printer  3002  will be described below.  
         [0092]     First, the print instruction screen  3210  is opened (S 3201 ), and it is determined whether or not there is any print instruction, namely, the print start button SB is pressed (S 3202 ). If there is any print instruction at S 3202 , the print menu (print instruction screen  3210 ) is closed (S 3208 : the print menu is not necessarily closed), and the processing is passed to S 3209 . The processing following S 3209  (S 3209  to S 3214 ) will be described later.  
         [0093]     If there is no print instruction at S 3202  (“No” at S 3202 ), it is determined whether or not the processing transits to the print setting screen  3211  (S 3203 ). If the processing does not transit to the print setting screen  3211  (“No” at S 3203 ), the processing is returned to S 3202 . If the processing transits to the print setting screen  3211  at S 3203  (“Yes” at S 3203 ), it is determined whether or not the processing returns to the print instruction screen  3210  (S 3204 ). If not, the determination is continued (“No” at S 3204 ). If the processing returns to the print instruction screen  3210  at S 3204 , it is determined whether or not the halftoning processor  3026  is already initialized (S 3205 ). If it is determined that the halftoning processor  3026  is initialized at S 3205  (“Yes” at S 3205 ), it is determined whether or not the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  3022  (i.e., the settings at the previous initialization) (S 3206 ). If it is determined that the settings of the print medium type A and/or print quality B are not identical to the settings stored in the print setting information storage  3022  at S 3206  (“No” at S 3206 ), and if it is determined that the halftoning processor  3026  is not initialized at S 3205  (“No” at S 3205 ), the LUT corresponding to the settings of the print medium type A and/or print quality B is selected, the halftoning processor  3026  is initialized (S 3207 ), and the processing is returned to S 3202  to determine whether or not there is any print instruction. If it is determined that the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  3022  at S 3206  (“Yes” at S 3206 ), the processing is returned to S 3202  to determine whether or not there is any print instruction.  
         [0094]     When the print menu (print instruction screen  3210 ) is closed at S 3202 , it is determined whether or not the halftoning processor  3026  is already initialized (S 3209 ). If the halftoning processor  3026  is already initialized at S 3209  (“Yes” at S 3209 ), it is determined whether or not the set print medium type A and/or print quality B are identical to the print medium type A and/or print quality B stored in the print setting information storage  3022  (S 3210 ). If the settings of the print medium type A and/or print quality B are not identical to the settings stored in the print setting information storage  3022  at S 3210  (“No” at S 3210 ), and if the halftoning processor  3026  is not initialized at S 3209  (“No” at S 3209 ), the LUT corresponding to the settings of the print medium type A and/or print quality B is selected, the halftoning processor  3026  is initialized (S 3211 ), and the processing is passed to the print data generation (S 3212 ). If the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  3022  at S 3210  (“Yes” at S 3210 ), the processing is passed to S 3212 .  
         [0095]     Thereafter, the printing mechanism  3025  (printer unit) is driven (S 3213 ), and after the printing is performed, the processing is finished (S 3214 ).  
         [0096]     A sub-program for performing the processing (especially from S 3202  to S 3211 ) as shown in the flowchart of  FIG. 8  constitutes a print data generator initialization program for the printer.  
         [0097]     Next, a fourth embodiment of the invention will be described. This embodiment is a combination of the second embodiment and the third embodiment. Namely, when the print medium quality A and/or print quality B are set on the print setting screen, the halftoning processor (print data generator) is initialized if a predetermined time period passes after the setting time, or if the screen on the display transits from a lower hierarchy where the print setting information is set to an upper hierarchy where the print instruction is made.  
         [0098]     As shown in  FIG. 9 , a printer  4003  comprises a display  4031 , a print setting information storage  4032 , a time counter  4033 , a halftoning data storage (print data generation table group storage)  4034 , a print controller  4035 , a printer unit (printing mechanism)  4036 , and a halftoning processor (print data generator)  4037 .  
         [0099]     In the display  4031 , a print instruction screen  4310  is displayed as the initial screen, as shown in  FIG. 5 . A print setting button PS as described in the second and third embodiments is displayed on the print instruction screen  4310 . By pressing this print setting button PS, the screen display is changed to a print setting screen  4311  on the lower hierarchy. The print setting screen  4311  includes the text boxes for a plurality of print setting information. In this embodiment, the print setting information is print medium type A and print quality B, and the print setting screen  4311  contains the text boxes a, b for them, as shown in  FIG. 5 .  
         [0100]     The print setting information storage  4032  stores the previous initializing condition information of the halftoning processor  4037 . In this embodiment, the previous initializing condition information is the print medium type A and/or the print quality B used at the previous initialization of the halftoning processor  4037 , but may be the information (e.g., table ID) specifying a print data generation table used at the previous initialization of the halftoning processor  4037 .  
         [0101]     The time counter  4033  counts the time from the set time till the elapse of a predetermined time, if at least one of the print medium type A and the print quality B is set on the print setting screen  4311 .  
         [0102]     The halftoning data storage  4034  stores a group of lookup tables (LUT( 1 ) to LUT(n): halftoning data) corresponding to a plurality of print medium types A and a plurality of print qualities B.  
         [0103]     The print controller  4035  performs: (i) the initialization of the halftoning processor  4037  based on the lookup table (any of LUT( 1 ) to LUT(n)) corresponding to the latest print medium type A and/or print quality B, when the count value of the time counter  4033  indicates the elapse of the predetermined time; and (ii) the initialization of the halftoning processor  4037  based on the lookup table (any of LUT( 1 ) to LUT(n)) corresponding to the latest print medium type A and/or print quality B, when the display screen transits from the hierarchy of the print setting screen for the print medium type A and/or print quality B to the hierarchy of the print instruction screen where the print instruction is made, if at least one of the print medium type A and the print quality B is newly set on the print setting screen.  
         [0104]     The print controller  4035  does not newly perform the initialization of the halftoning processor, if the latest settings of the print medium type A and/or print quality B are identical to the settings of the print medium type A and/or print quality B at the previous initialization of the halftoning processor  4037 , and if the halftoning processor  4037  is already initialized based on the lookup table corresponding to the print medium type A and/or print quality B, when the print instruction is made. Thereby, the load of the CPU mounted on the printer  4003  is relieved, and there is no drawback that it takes a long time period since the print start button SB is pressed till the first print is performed.  
         [0105]     The print controller  4035  performs the following processing, when the count value of the time counter  4033  indicates the elapse of predetermined time, or when the display on the display transits from the print setting screen  4311  at the lower hierarchy to the print instruction screen  4310  at the upper hierarchy, if at least one of the print medium type A and the print quality B is set on the print setting screen  4311 .  
         [0106]     That is, the initialization of the halftoning processor  4037  is already performed, and it is determined whether or not the print medium type A and/or the print quality B that are newly set are identical to the print medium type A and/or the print quality B used at the previous initialization of the halftoning processor  4037 , in which if identical, the initialization of the halftoning processor  4037  is not performed, or if not identical, the initialization of the halftoning processor  4037  is performed.  
         [0107]     This initialization is performed based on the lookup table corresponding to the latest print medium type A and/or print quality B. That is, the print controller  4035  initializes the halftoning processor  4037  by referring to the lookup table corresponding to the setting values of the print medium type A and print quality B from the group of lookup tables (LUT( 1 ) to LUT(n)). The halftoning processor  4037  can convert an image of processing object into the print data, and the printing mechanism  4036  performs the printing by acquiring the print data from the halftoning processor  4037 .  
         [0108]     In the printer  4003  of  FIG. 9 , if the user sets the print medium type A and/or print quality B, the halftoning processor  4037  is automatically initialized, and when the display returns to the screen at the upper hierarchy where the print instruction is made after the user sets the print medium type A and/or print quality B on the screen at the lower hierarchy, the halftoning processor  4037  is also automatically initialized.  
         [0109]     Referring to a flowchart of  FIG. 10 , a print processing executed by the printer  4003  will be described below.  
         [0110]     First, a print instruction screen  4310  is opened (S 4301 ), and it is determined whether or not there is any print instruction, namely, the print start button SB is pressed (S 4302 ). If there is any print instruction at S 4302 , the print menu (print instruction screen  4310 ) is closed (S 4318 : the print menu is not necessarily closed), and the processing is passed to S 4319 . The processing following S 4319  (S 4319  to S 4324 ) will be described later.  
         [0111]     If there is no print instruction at S 4302  (“No” at S 4302 ), it is determined whether or not the display transits to the print setting screen  4311  for the print medium type A and/or print quality B (S 4303 ). If the display does not transit to the print setting screen (“No” at S 4303 ), the processing is returned to S 4302 . If the display transits to the print setting screen  4311  at S 4303  (“Yes” at S 4303 ), it is determined whether or not the print medium type A and/or print quality B are set (S 4304 ). If the print medium type A and/or print quality B are not set (“No” at S 4304 ), it is determined whether or not the display returns to the print instruction screen  4310  (S 4305 ). If the display returns to the print instruction screen  4310  at S 4305  (“Yes” at S 4305 ), the processing is returned to S 4302 , or if the display does not return to the print instruction screen  4310  (“No” at S 4305 ), the processing is returned to S 4304 .  
         [0112]     If the print medium type A and/or print quality B are set at S 4304  (“Yes” at S 4304 ), the time counter  4033  (timer) is initialized to start the time count is started (S 4306 ). Then, it is determined whether or not the time counter  4033  counts N seconds (N seconds pass from the setting) (S 4307 ). If N seconds are not counted (“No” at S 4307 ), it is determined whether or not the print medium type A and/or print quality B are set (S 4308 ). If the print medium type A and/or print quality B are set at S 4308  (“Yes” at S 4308 ), the processing is returned to S 4306 . Thereby, the time counter  4033  (timer) is initialized again, and the time count is started. If the print medium type A and/or print quality B are not set at S 4308  (“No” at S 4308 ), it is determined whether or not the display returns to the print instruction screen  4310  (S 4309 ). If the display does not return to the print instruction screen  4310  (“No” at S 4309 ), the processing is returned to S 4307 . In this case, the time counter  4033  is not initialized but continues to count the time.  
         [0113]     If the display returns to the print instruction screen  4310  at S 4309  (“Yes” at S 4309 ), the processing is passed to S 4310  to determine whether or not the halftoning processor  4037  is already initialized (S 4310 ). If it is determined that the halftoning processor  4037  is already initialized at S 4310  (“Yes” at S 4310 ), it is determined whether or not the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  4032  (i.e., the settings at the previous initialization of the halftoning processor  4037 ) (S 4311 ). If it is determined that the settings of the print medium type A and/or print quality B are not identical to the settings stored in the print setting information storage  4032  (“No” at S 4311 ), and if it is determined that the halftoning processor  4037  is not initialized at S 4310  (“No” at S 4310 ), the LUT corresponding to the settings of the print medium type A and/or print quality B is selected, the halftoning processor  4037  is initialized (S 4312 ), and the processing is returned to S 4302  to determine whether or not there is any print instruction. If it is determined that the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  4032  at S 4311  (“Yes” at S 4311 ), the processing is returned to S 4302  to determine whether or not there is any print instruction.  
         [0114]     If the time counter  4033  counts N seconds at S 4307  (“Yes” at S 4307 ), the time count is finished (S 4313 ).  
         [0115]     Thereafter, it is determined whether or not the halftoning processor  4037  is already initialized (S 4314 ). If it is determined that the halftoning processor  4037  is already initialized at S 4314  (“Yes” at S 4314 ), it is determined whether or not the latest settings of the print medium type A and/or print quality B are identical to the settings of the print medium type A and/or print quality B stored in the print setting information storage  4032  (S 4315 ). If it is determined that the settings of the print medium type A and/or print quality B are not identical to the settings stored in the print setting information storage  4032  at S 4315  (“No” at S 4315 ), and if it is determined that the halftoning processor  4037  is not initialized at S 4314  (“No” at S 4314 ), the LUT corresponding to the settings of the print medium type A and/or print quality B is selected, the halftoning processor  4037  is initialized (S 4316 ), and it is determined whether or not the display returns to the print instruction screen  4310  (S 4317 ).  
         [0116]     If it is determined that the display returns to the print instruction screen  4310  at S 4317  (“Yes” at S 4317 ), the processing is returned to S 4302  to determine whether or not there is a print instruction. If it is determined that the display does not return to the print instruction screen  4310  (“No” at S 4317 ), the processing is returned to S 4304  to determine whether or not the print medium type A and/or print quality B are set.  
         [0117]     If it is determined that the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  4032  at S 4315  (“Yes” at S 4315 ), the processing is returned to S 4317  to determine whether or not the display returns to the print instruction screen  4310 .  
         [0118]     If it is determined that there is any print instruction at S 4302  (“Yes” at S 4302 ), the processing is returned to S 4318  to close the print instruction screen  4310 , as previously described. When the print instruction screen  4310  is closed, it is determined whether or not the halftoning processor  4037  is already initialized (S 4319 ). If the halftoning processor  4037  is already initialized at S 4319  (“Yes” at S 4319 ), it is determined whether or not the settings of the print medium type A and/or print quality B are identical to the settings stored in the print setting information storage  4032  (i.e., the settings at the previous time of printing or default settings when the power is turned off at the previous time of printing) (S 4320 ). If the settings of the print medium type A and/or print quality B are not identical to the settings stored in the print setting information storage  4032  at S 4302  (“No” at S 4320 ), and if the halftoning processor  4037  is not initialized at S 4319  (“No” at S 4319 ), the LUT corresponding to the settings of the print medium type A and/or print quality B is selected, the halftoning processor  4037  is initialized (S 4321 ), and the processing is passed to the print data generation (S 4322 ).  
         [0119]     Thereafter, the printing mechanism  4036  (printer unit) is driven (S 4323 ), and after the printing is performed, the processing is finished (S 4324 ).  
         [0120]     A sub-program for performing the processing (especially from S 4302  to S 4321 ) as shown in the flowchart of  FIG. 10  constitutes a print data generator initialization program for the printer.  
         [0121]     Although only some exemplary embodiments of the invention have been described in detail above, those skilled in the art will readily appreciated that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of the invention. Accordingly, all such modifications are intended to be included within the scope of the invention.  
         [0122]     The disclosure of Japanese Patent Applications No. 2005-288727 filed Sep. 30, 2006 and No. 2006-349551 filed Dec. 2, 2006 including specifications, drawings and claims are incorporated herein by reference in their entirety.