This application claims priority under 35 U.S.C. §119 from Japanese Patent Application No. 2007-307547, filed on Nov. 28, 2007. The entire subject matter of the application is incorporated herein by reference.
1. Technical Field
Aspects of the present invention relate to a printing device which executes a print process based on data transmitted from a computer.
2. Related Art
Printing devices having a function of judging whether to permit execution of a print process for data received from a computer (client) in accordance with user information contained in the received data have been widely used. An example of such a printing device is disclosed in Japanese Patent Provisional Publication No. 2005-288879A (hereafter, referred to as JP2005-288879A).
Incidentally, the printing device receives not only print data for which the printing device executes the print process at the time of receiving the print data from the computer, but also data other than the print data from the computer. The data other than the print data includes secure print data to which a command for instructing the printing device to execute the print process in accordance with authentication information is added, image data to which a command for instructing the printing device to store overlaying data (e.g., a watermark) to be overlaid on a print target image is added, a command for instructing the printing device to change settings of various parameters of the printing device, and a command for instructing the printing device to respond to an inquiry about information stored in the printing device.
However, the printing device disclosed in JP2005-288879A has a drawback that if execution of the print process based on data from the computer is prohibited, the printing device operates not to receive the data from the computer or the printing device operates to discard the received data from the computer when the printing device receives data other than the print data (i.e., data not requiring execution of the print process) from the computer. That is, in the state where execution of the printing operation based on data from the computer is prohibited, the printing device is not able to execute the various types of commands contained in the data not requiring execution of the printing operation.
Aspects of the present invention are advantageous in that a printing device having a high degree of usability regarding handling of data from a computer is provided.
According to an aspect of the invention, there is provided a printing device comprising: a data receiving unit configured to receive data transmitted from an external computer via a network; a print unit configured to execute a print process based on the data received by the data receiving unit; a prohibition unit configured to accept a command for prohibiting execution of the print process; an analysis unit configured to analyze the data received by the data receiving unit; and an execution control unit configured such that if a command other than a print command is contained in the data received by the data receiving unit, the execution control unit executes the command other than the print command even in a state where execution of the print process is prohibited through the prohibition unit.
Since the command other than the print command can be executed even in a state where execution of the print command is prohibited, it is possible to enhance usability of the printing device.
According to another aspect of the invention, there is provided a method to be implemented on a printing device for processing data transmitted from an external computer via a network. The method comprises the steps of: receiving data transmitted from the external computer; accepting a command for prohibiting execution of a print process; analyzing the received data; and executing a command other than a print command even in a state where execution of the print process is prohibited, if the command other than the print command is contained in the received data.
Since the command other than the print command can be executed even in a state where execution of the print command is prohibited, it is possible to enhance usability of the printing device.
According to another aspect of the invention, there is provided a computer readable medium having computer readable instruction stored thereon, which, when executed by a processor of a printing device for processing data transmitted from an external computer via a network, configures the processor to perform the steps of: receiving data transmitted from the external computer; accepting a command for prohibiting execution of a print process; analyzing the received data; and executing a command other than a print command even in a state where execution of the print process is prohibited, if the command other than the print command is contained in the received data.
Since the command other than the print command can be executed even in a state where execution of the print command is prohibited, it is possible to enhance usability of the printing device.
It is noted that various connections are set forth between elements in the following description. It is noted that these connections in general and unless specified otherwise, may be direct or indirect and that this specification is not intended to be limiting in this respect. Aspects of the invention may be implemented in computer software as programs storable on computer-readable media including but not limited to RAMs, ROMs, flash memory, EEPROMs, CD-media, DVD-media, temporary storage, hard disk drives, floppy drives, permanent storage, and the like.
Hereafter, an embodiment according to the invention will be described with reference to the accompanying drawings.
The display unit 11 is, for example, an LCD or a CRT. The operation unit 12 includes a pointing device (e.g., a mouse) and a keyboard. On the PC 10, an OS (operating system), such as Windows®, has been installed.
As shown in
The printer 20 further includes a non-volatile RAM 28, a network interface 29 (which is abbreviated as “I/F” in
The display panel 22 has a touch panel function of detecting whether a user touches the display panel 22 and detecting the position at which the user touches the display panel 22. The printer 20 is able to receive various user commands from the user through the touch panel function.
The non-volatile RAM 28 is able to maintain data during a power off state of the printer 20. The network interface 29 interfaces the printer 20 with the network. Therefore, the printer 10 is connected to the PCs 10 via the network interface 29.
The facsimile circuit (FAX circuit) 30 has the function of transmitting and receiving facsimile data. Facsimile data received by the facsimile circuit 30 is printed by the print unit 23. The scanner unit 31 has the function of optically reading an image from a document. The printer 20 has a copying function of printing an image corresponding to image data read by the scanner unit 31, a facsimile function of converting image data read by the scanner unit 31 into facsimile data and transmitting the facsimile data through the facsimile circuit 30, and a function storing or outputting image data read by the scanner unit 31 as data having a predetermined format.
The CPU 24, the ROM 25, and the RAM 26 constitutes a control unit for controlling various components including the print unit 23 and the display panel 22 in the printer 20.
Operations of the print system 100 are controlled by a printer driver which is installed on the PC 10 and runs on the PC 10 and a control program which is installed on the printer 20 and runs on the printer 10.
When a print command is inputted to the PC 10 through the display unit 11 or the operation unit 12, typically the printer driver converts print target data into print data (i.e., data having a print format), such as PDL (Page Description Language) data in cooperation with the OS, creates transmission data formed by adding header information to the PDL data, and thereafter transmits the transmission data to the printer 20 via the network interface 17. In this case, the header information includes user information representing a user who has inputted the print command, and print setting information, such as a paper size or a print scheme (see
Through the network interface 29, the printer 20 receives the transmission data transmitted from the PC 10. Then, the printer 10 controls the print unit 23 to print an image based on the received data on a sheet of paper. Hereafter, the function of printing an image on a sheet of paper based on data received from the PC 10 is referred to as a PC print function.
On the PC 10 in the print system 100, the user is allowed to input commands other than a print command (hereafter, referred to as a non-print command) through a tool (a utility program), such as a printer driver, running on the PC 10.
The non-print commands include a setting change command for changing settings regarding the functions of the printer 20 including the copying function, the facsimile function and the PC print function, an inquiry command for inquiring about the settings of the functions of the printer 20, a command for instructing the printer 20 to store overlaying data (e.g., a watermark) to be overlaid on a print target image, and secure print data to which a command for instructing the printer 20 to execute the print process based on authentication information is added. The settings of the printer 20 include a print paper size, print settings, the number of printed sheets of paper, the remaining amount of material for recording (e.g., toner or ink), and the settings of use conditions concerning maintenance of the printer 20.
The setting change command is used, for example, to instruct the printer 20 to change the resolution of the printer 20 and to reset the count of a page counter which counts the number of printed sheets of paper.
The inquiry command is used to instruct the printer 20 to transmit the setting information, such as resolution of the printer 20 and the count of the page counter, to the PC 10. That is, by transmitting the inquiry command to the printer 20, the PC 10 is able to obtain the setting information of the printer 20.
The printer 20 accepts, for each of the PCs 10 (users), the setting regarding whether to prohibit execution of the print process based on the print command from the computer 10 and the setting regarding whether to permit execution of a non-print command.
In order to prohibit execution of the print process, the user operates the operation key 21 to display a dialog 32 shown in
In order to permit execution of a non-print command, the user operates the operation key 21 to display a dialog 35 shown in
The printer 20 may be configured such that the setting regarding whether to prohibit execution of the print process based on the print command from the computer 10 and the setting regarding whether to permit execution of a non-print command are accepted only for an administrator of the printer 20.
In this case, as a condition to be met to allow presentation of the dialog 32 or 35, the printer 20 requests the user to input a password of the administrator through the operation key 21 or the display panel 22. That is, if the inputted password is a proper password, the printer 20 executes a process for requesting the user to select a target PC 10 to which the setting inputted through the dialog 32 or 35 should be applied. In response to completion of selection of the target PC 10, the dialog 32 or 35 is displayed on the display panel 22.
Hereafter, a control process executed by the printer 20 is described.
The control process shown in
When data is received from the PC 10 (S1: YES), the CPU 24 analyses header information of the received data and checks a sender (user name) of the received data based on the header information (step S5). Then, the CPU 24 judges whether execution of the print process is permitted for the user of the received data (step S10).
If execution of the print process is not permitted for the user of the received data (S10: NO), control proceeds to step S35 where the CPU 24 judges whether the inquiry command for inquiring about settings concerning the functions of the printer 20 including the copying function, the facsimile function and the PC print function is contained in the received data. If the inquiry command is not contained in the received data (S35: NO), the CPU 24 judges whether the setting change command for changing the settings concerning the functions of the printer 20 including the copying function, the facsimile function and the PC print function is contained in the received data (step S45).
If the CPU 24 judges that the inquiry command is contained in the received data (S35: YES), the CPU 24 obtains setting information corresponding to the inquiry, and then transmits the obtained setting information to the PC 10 via the network interface 29 (step S40). Then, control proceeds to step S45.
If the setting change command is contained in the received data (S45: YES), the CPU 24 judges whether a target function of the setting change command is a function (e.g., the copying function or the facsimile function) other than the PC print function (step S50). If the CPU 24 judges that the target function of the setting change command is the PC print function (S50: NO), the CPU 24 changes the setting of the PC print function stored in the non-volatile RAM 28 in accordance with the setting change command (step S55).
On the other hand, if the CPU 24 judges that the target function is a function other than the PC print function (S50: YES), the CPU 24 judges whether execution of the target function is prohibited (step S60).
If execution of the target function is not prohibited (S60: NO), the CPU 24 change the setting of the target function stored in the non-volatile RAM 28 in accordance with the setting change command (step S55). Then, control proceeds to step S60 where the CPU 24 judges whether the command for storing overlaying data (e.g., a watermark image) is contained in the received data (step S65).
If execution of the target function is prohibited (S60: YES), the CPU 24 does not change the setting of the target function. In this case, control proceeds to step S65.
If the CPU 24 judges that the command for storing overlaying data is not contained in the received data (S65: NO), control proceeds to step S75 where the CPU 24 judges whether PDL data contained in the received data is secure print data to which a command for executing the print process in accordance with authentication information is added.
On the other hand, if the CPU 24 judges that the command for storing overlaying data is contained in the received data (S65: YES), the CPU 24 stores the overlaying data in the non-volatile RAM 28 or the HDD 27 (step S70). Then, control proceeds to step S75.
If the CPU 24 judges that the PDL data is the secure print data (S75: YES), the CPU 24 executes a page developing process (a rasterization process) for developing the PDL data for the print process (step S80). Then, the CPU 24 stores the developed data in the non-volatile RAM 28 or the HDD 27 as secure print data (step S85). Then, control returns to step S1.
It should be noted that data stored as secure print data in the non-volatile RAM 28 or the HDD 27 is printed when the user inputs authentication information to the printer 20 through the operation key 21 or the display panel 22 and the printer judges that the inputted authentication information matches authorized authentication information which has been stored in the printer 20 and that execution of the print process is permitted.
On the other hand, if the CPU 24 judges that the PDL data is not the secure print data (S75: NO), the CPU 24 discards the developed data if the developed data developed from the PDL data exists (step S90). Then, control returns to step S1.
It should be noted that although start of execution of the page developing process is not explicitly instructed in the control process shown
If execution of the print process is permitted for the user of the received data (S10: YES), the CPU 24 analyzes the received data. If the received data contains a non-print command, the same steps as the steps S35-S85 are executed to process the non-print command (step S15).
Then, the CPU 24 judges whether a print command is contained in the received data (step S20). If the print command is not contained in the received data (S20: NO), control returns to step S1. If the print command is contained in the received data (S20: YES), the print process is executed for the received data (step S30). Then, control returns to step S1.
As described above according to the embodiment, if a non-print command is contained in the received data, the non-print command is processed even if the print process is prohibited. Therefore, usability of the printer 20 can be enhanced.
Although the present invention has been described in considerable detail with reference to certain preferred embodiments thereof, other embodiments are possible.
In the above described embodiment, the printer 20 and the PC 10 are connected via the network. However, the printer 20 may be directly connected to the PC 10.
It should be noted that the non-print command is not limited to the examples described in the embodiment. The data structure of the received data is not limited to the example shown in
Number | Date | Country | Kind |
---|---|---|---|
2007-307547 | Nov 2007 | JP | national |