The present invention relates to a print control system and print control method and, more particularly, to a print control apparatus and print control method in a broadband printing system which efficiently generates print data for a print recording apparatus in a broad-range Internet environment or on a Web site, and feeds back data to the print recording apparatus of a terminal.
Conventionally, in order to output print data by a versatile color printer such as an ink-jet printer and the like, or a recording apparatus such as a multifunction printer or the like, a data transfer apparatus such as a personal computer or the like is normally required. Such data transfer apparatus is often used privately or for a home office (SOHO), and is connected to another data transfer apparatus, output apparatus, and the like via a wired or wireless communication network so as to offer more use applications.
Data printed by a color printer such as an ink-jet printer or the like is normally recorded in a raster bitmap format in which columns of pixels are arranged in a matrix, and addresses are one-dimensionally assigned to respective pixels along rows. Such raster data is often expressed by three primary colors, i.e., red (R), green (G), and blue (B), which are displayed as a continuous-tone, full-color image on a monitor connected to a personal computer or the like. For example, in an operating system (Windows 95, 98/ME/NT/2000, etc.) available from Microsoft Corporation, image data generated by application software is output for a display process, print process, and the like as RGB 24-bit data (8 bits×three colors) via a GDI (an abbreviation for Graphics Devices Interface; a standard function of rendering a line, circle, polygon, text, and the like). Based on the RGB 24-bit data (also called 16 million color data) output from the operating system, driver software of a recording apparatus, e.g., an ink-jet printer, normally generates print data to be input to that ink-jet printer.
However, if RGB data is input from the driver software of the recording apparatus to the recording apparatus, it is often inconvenient in term of the principles of additive color mixing (RGB) and subtractive color mixing (CMY) (in order to change the amounts of R, G, and B light components, the amounts of C, M, and Y components as complementary colors must be changed). For this reason, RGB data must be converted into cyan (C), magenta (M), and yellow (Y) data.
In practice, a recording apparatus such as an ink-jet printer or the like records black on a medium using black ink. This is for the following three reasons. First, C, M, and Y color agents (inks in case of an ink-jet printer) are chemically synthesized, and do not have an accurate complementary color relationship with theoretical R, G, and B components, and it is difficult for them to express black with a high OD (optical density) value. Second, color misregistration occurs due to low dot forming precision of an ink-jet printer, and it is difficult to express black with a high OD value. Third, cost can be reduced using an independent black color agent rather than using three, C, M, and Y colors. For this purpose, the driver applies a process for extracting black from RGB 24-bit data, and generates C, M, Y, and K (black) continuous-tone data.
On the other hand, it is difficult for an ink-jet printer among recording apparatuses to directly print continuous tone (multi-valued image). Generally, the ink-jet printer is a binary printer which expresses each pixel by whether or not one color dot is formed. Therefore, data to be finally input to the ink-jet printer are C, M, Y, and K binary data, and the driver software executes a binarization process of C, M, Y, and K continuous-tone data.
Control of the aforementioned general printer will be explained below with reference to
After that, input correction such as gamma correction, source correction, and the like is applied to the image data in step S104. As is well known, gamma correction is intended to correct any gap between the human eye and actual density, and continuous tone is expressed by RGB at that time. The gamma correction corrects image data by multiplying each pixel value by a coefficient expressed by a gamma (γ) curve. As the coefficient, numerical values such as 1.0, 1.4, 1.8, 2.2, and the like are prevalently used.
In step S105, the RGB 24-bit data is converted into CMYK 32-bit, multi-valued data. At the same time, a black component (K) is extracted from C, M, and Y components.
In step S106, output correction is applied. In this output correction, image data is corrected in correspondence with the ink droplet size of the ink-jet printer. At this time, the image data is still CMYK 32-bit, multi-valued data. In step S107, a binarization process for converting continuous-tone data, i.e., multi-valued data into binary data is executed using known ED (error diffusion) or dither. In this case, the converted data has a format that the printer can process.
In this manner, Y, M, C, and K binary data are finally generated, as shown in
However, as shown in
In order to solve such problem, upon generating Y, M, C, and K binary data in step S107 in
By arranging data in the column data format in this way, as shown in
This technique can provide a higher-precision print process by optimizing a process such as error diffusion and the like in correspondence with the number and arrangement order of nozzles of the print head upon binarization. For this purpose, the printer and host computer are connected via a two-way I/F, as shown in
The printer driver acquires information of the head temperature, head type, printer status, and the like from the printer as needed in addition to the above information, i.e., the number and arrangement order of nozzles. Based on the temperature information of the printer, the data output timing or density from the printer driver is changed to execute a print process without any load on the print head. Many printer systems acquire error information. Such error information can inform the operator of an out-of-paper state in the printer and an open/close state of a printer door, thus providing a user-friendly system.
The conventional print control systems, especially, the processes between the host computer and printer have been explained. In any of the above systems, a large-capacity memory (normally incorporated in the host computer) is required to store or process image data, as shown in
The Web TV box 801 comprises an interface with a printer 805, and can output raster data generated by the renderer to the printer, so as to control the printer to print it out. The Web TV box 801 is designed to easily access the Internet at home, but is equivalent to a normal host PC for the printer.
In this way, a print process of the printer requires an apparatus such as a host PC, Web TV box, or the like, which can serve as a master for the printer, and also many image processes, a large-capacity memory, and the like.
Furthermore, a system that directly outputs print data from a Web server or the like on the Internet to a printer on the terminal side via a recording apparatus such as a terminal PC or the like is available. In such system, since data is generated irrespective of the arrangement and state of the printer on the terminal side, the data cannot be efficiently generated in correspondence with the printer state or the shape of the print head.
Moreover, a technique (Japanese Patent Laid-Open No. 2001-43039) that downloads a desired printer driver via the Internet is known. However, this technique requires a print data process in a PC, and is not suited to a simple data transfer apparatus like an electrical home appliance.
It is an object of the present invention to provide a technique that does not require any conventional print system, i.e., elaborate apparatuses such as a host PC, Web TV box, and the like required to print.
The present invention has been made in consideration of the aforementioned prior art, and has as its another object to provide a print control apparatus and print control method, which can fully exploit a two-way communication technique of the Internet and data processing performance on a Web server to reflect them on a new print technique, and can utilize a printer in many fields that allow Internet connection without following any conventional one-to-one concept like a printer vs. host PC.
As home appliances such as a digital television and the like which may become widespread in the future, Internet connection function built-in models are expected to prevail, and the chances to connect a printer as a peripheral device may increase. The present invention has as its still another object to provide a print control apparatus and print control method, which can inexpensively and simply provide a chance to print such as a Web browser window or the like to such so-called NonPC type home appliances (also called Internet appliances; to be also referred to as IA hereinafter) and apparatuses. Especially, the present invention inexpensively provides a system by utilizing a memory on a Web server since driver software requires a huge memory size in case of a print process at high resolution.
It is still another object of the present invention to provide a print control apparatus and print control method, which can reduce the load on host resources (memory and the like) by utilizing a server on the Internet for a data process of a printer driver, which is installed in a host even in a print system using the host, and are friendly for the user, since neither installation of a printer driver nor update of the driver version are required.
In order to achieve the above objects, the present invention comprises the following arrangement.
One aspect of the present invention adopts means which acquires information of a print head and status of a recording apparatus such as an ink-jet printer or the like connected to a home appliance such as a digital television or the like or a normal PC from that recording apparatus, sends browser (browse software) window data to be printed onto an upstream public line together with the acquired information, makes an internal printer data interpretation unit and printer information interpretation unit interpret these data using via a home page or the like, which has been set up in advance in a WWW server of a service provider or the like on the Internet, so as to generate appropriate data corresponding to the printer, feeds back the generated data to a browser of a terminal, and prints it out.
With this means, especially when an Internet device connected to a home appliance such as a digital television or the like is used, a data process is executed on a network without adding any extra memory for printer connection or any complicated control unit to the Internet device, and the processed data is reflected onto the Internet device as a terminal, thus easily providing a print process. Furthermore, when an Internet browser on a PC is used, a data process on the network can be executed by only installing a simple printer driver.
Alternatively, the present invention has the following arrangement.
A print control apparatus which can be connected to a server that generates print data on the basis of printer information and information to be printed, comprises: an acquisition unit for acquiring printer information from a printer connected to the apparatus; a transmission unit for transmitting information required to specify the information to be printed, and the printer information to the server; a reception unit for receiving print data from the server as a response; and a print control unit for controlling the printer to print the print data.
The printer information preferably contains at least one of the number of elements of a print head, an arrangement order of elements, a print system, and types of colors used.
Preferably, the apparatus further comprises a display which is connected to a computer network, and displays data provided by a server connected to the computer network, and wherein a location of the information to be printed is transmitted to the server via a window which is displayed on the display and is provided by the server.
Preferably, a print mode of the printer is input via the window which is displayed on the display, and the print mode is transmitted to the server together with the printer information.
The printer information preferably contains information that pertains to a position of a non-ejection nozzle, and image data is generated to control the printer to form an image using nozzles except for the non-ejection nozzle.
Other features and advantages of the present invention will be apparent from the following description taken in conjunction with the accompanying drawings, in which like reference characters designate the same or similar parts throughout the figures thereof.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
Preferred embodiments of the present invention will now be described in detail in accordance with the accompanying drawings.
Unlike a known Internet connection device such as a Web TV box or the like, as can be seen from
The browser controller 901 comprises a microprocessor and memory. The memory includes a browser control memory 9013 used to control a browser, and a print data reception/transmission memory 9014. Also, the controller 901 comprises, as a TV/printer interface 9016, a video interface, IEEE1394 interface, or the like required to connect the IA, and an IEEE1284 parallel interface, USB interface, IEEE1394 interface, or wireless interface (e.g., Bluetooth) required to connect a printer. Any of these interfaces are adopted on the condition that they can make two-way communications. Furthermore, the controller 901 comprises a network interface used to connect a router (or hub) 904 so as to establish Internet connection.
On the above arrangement, a basic OS, e.g., Windows CE available from Microsoft Corporation or an existing OS available from Open TV. Inc., is installed to execute input/output management of devices and management of an application. As the application, a Web browser 9011 is installed, and the user can enjoy services provided from a server 906 connected to the Internet via the browser 9011. As the browser, either a common browser such as Internet Explorer available from Microsoft Corporation or a unique browser may be adopted.
The controller 901 comprises a screen display HTML engine 9012 to control the IA 902 to make screen display such as a browser window and the like. The screen display HTML engine 9012 generates image data on the basis of a GUI window generated by the browser 9011, HTML data received from the server, and the like. This image data is transmitted to the IA 902 via the TV/printer interface 9016, and is displayed on the IA 902.
Furthermore, the browser controller 901 comprises a printer controller 9015. The printer controller 9015 manages communications with a printer 903 to reflect information acquired from the printer on the browser, and manages exchange of their data.
With the browser controller 901 having the aforementioned arrangement, when the operator designates a desired object to be printed using the browser window displayed on the IA 902 as a user interface, required data are combined and are output onto the Internet to have a predetermined server (to be referred to as an Internet print server hereinafter) as a destination.
The output data reaches an access point 905 via an intra-network such as the router 904 and the like and a public line. The access point 905 is present as a network operation center, and has a roll of accepting telephone line connection or connection via an optical fiber from the user. The data enters an Internet network 907 via the access point 905, and reaches the designated Internet print server 906.
The Internet print server 906 may be a general server managed by a service provider or the like. Such general server comprises a mail server (SMTP, POP) for managing mail messages such as e-mail messages and the like, a news server, and a WWW server 9061 as a core of the control of the present invention in addition to an access server for managing access from the user, and a DNS server for converting the IP address and domain name. The WWW server 9061 provides home pages and service information. A service provider normally manages a plurality of home pages and service information of Internet users. Of the general server, a server having an Internet print home page required to implement a sequence to be described later in a WWW server will be especially referred to as an Internet print server. Internet print server software is present in this home page. The purpose of this software is to interpret print information and print data uploaded from a terminal.
In place of a server provided by a general service provider, a dedicated Internet print server may be provided. In this case, print data is passed from a Web server to Internet print server software via a CGI (common gateway interface), and this software runs to interpret the print data. In this case, the Internet print server 906 provides an Internet print home page to a client. When the client inputs print data and the like to that home page, that data is passed to Internet print server software as a backend program, thus executing a process.
The flow of the system will be described in detail below using the flow chart shown in
Referring to
After the URL of the desired Web page to be printed is settled, the operator designates the URL of the aforementioned Internet print home page from the browser 9011 in step S1002 to open a print window 1102 shown in
In step S1003, the operator inputs the URL of the Web page to be printed, and a print mode in a print process on the print window 1102. As the print mode, one of “High” for high image quality and “Low” for standard image quality can be designated in the example in
After the print mode is designated, the printer controller 9015 in the browser controller 901 attempts to acquire printer information from the printer 903 via a two-way I/F in step S1004. It is checked in step S1005 if acquisition of information has succeeded. If acquisition has failed, it is determined that the printer is OFF or suffers any error, and the control advances to an error process in step S1006.
If it is determined in step S1005 that acquisition of information from the printer has succeeded, the control advances to step S1007 to temporarily store, in the print data transmission memory 9014, the printer information acquired from the printer 903, e.g., head information such as the number and arrangement order of nozzles of a print head and the like, printer status information, and the like.
In step S1008, the URL of the Web page to be printed and print mode information input in step S1003, and the IP address of the browser controller 901 are uploaded to the Internet print server 906 together with the stored printer information (steps S1008 and S1009). In step S1009, the uploaded data reaches the server 906 via the router 904, public line, access point 905, and the like while serving for the URL on the network. Finally, in step S1010 Internet print server software 9062, which is present in the Internet print home page in the WWW server or is associated with that home page, receives print information.
In step S1011, the Internet print server software 9062 generates print data on the basis of the received print data, printer information, and the like. The Internet print server software 9062 generates print data in a format that can be directly input to the printer, on the basis of the acquired information. Details of this sequence will be described later.
In step S1012, the data generated by the print server software 9062 is output from the sever 906 to the browser controller 901 via the public line. In step S1013, the browser controller 901 outputs the received print data to the printer via the printer controller 9015 while storing the received data in the reception memory 9014. The print data may be exchanged using FTP.
Upon receiving the print data, the printer 903 executes a print process according to that data.
The internet print server software 9062 has an HTML renderer (interpretation unit). This HTML renderer executes a process equivalent to that of a renderer used by a commercially available Web browser such as Internet Explorer available from Microsoft Corporation or the like so as to print a Web page. That is, in step S1203 the HTML renderer converts an objective HTML file into RGB 24-bit data.
After that, the same processes as those in processing steps S103 to S108 in
The printer information may contain information indicating the printer type. For example, if the printer is an electrophotography printer, input print data may have a raster format. Therefore, if the printer is an electrophotography printer, the host may skip HV conversion.
Some electrophotography printers can express grayscale to some extent by controlling the dot size. To such printer, input print data need not be completely binarized. Furthermore, if the printer is a dye sublimation printer, it can attain advanced grayscale expression. For this reason, it is desirable to transmit the availability of grayscale expression performance to the server. In this case, since the grayscale expression performance is determined by a print system, information associated with the print system may be transmitted.
Also, among ink-jet printers, some inexpensive low-end models express black by synthesizing C, M, and Y without using any black ink. For such printer, the black extraction process is not required. Hence, the printer information preferably contains information indicating whether or not black ink is used.
As described above, the Internet print server software installed in the server connected to the Internet executes substantially the same process as in a print data generation sequence, which is conventionally executed by a PC main body. The generated print data can be received by the browser controller 901 as a client terminal, and can be printed by the printer. For this reason, the client terminal need not comprise a memory or program required to generate print data, and can print as long as an environment required to use a printer and an environment required to establish Internet connection are available.
The first embodiment has exemplified a printing system as a combination with a home appliance (IA) such as a digital television or the like. Also, the present invention can be practiced using the conventional print system, i.e., a combination of a personal computer and printer.
The system arrangement will be described below using
The second embodiment will be described below using the flow chart of
The control starts from step S1401, and the operator displays a browser window (window 1101 in
In step S1404, a print data versatile driver (a print data versatile driver 1319 in
If it is determined in step S1405 that acquisition of information has failed, it is determined that the printer is OFF or suffers any error, and the control advances to an error process in step S1406. If it is determined in step S1405 that acquisition of information from the printer has succeeded, the control advances to step S1407 to temporarily store, in the print memory 1316, head information acquired from the printer, e.g., information such as the number and arrangement order of nozzles of a print head and the like, printer status information, and the like. In step S1408, the input URL and print mode information, and the IP address of a browser controller main body are uploaded onto the Internet together with the stored printer information. In step S1409, the uploaded data reaches a specific server in the service provider 1305 via the router 1303, public line, and access point 1304 in
In step S1411, the print server software generates print data on the basis of the received print data.
That is, as in the first embodiment, the process in the print server software is substantially the same as the print data generation sequence executed in the conventional PC.
Referring back to
As described above, according to the first and second embodiments, since the server on the Internet is used to process print data, print data processed on the Internet can be transmitted to the printer without directly executing any print data process on the IA or PC, which is connected to the printer. Especially, an apparatus such as an Internet appliance (home appliance such as a digital television or the like), to which an Internet controller that is not designed to print is connected, need not have any controller for a printer or any extra memory. Since principal processes are executed on the Internet, an inexpensive printing system can be provided. Furthermore, since printer information is acquired and data is generated on the basis of the number of nozzles and shape of a print head in correspondence with the reception format of the printer, the aforementioned method can be applied to various kinds of printer, and a driver or the like need not be updated.
Even when a print instruction is issued from a normal PC, once a basic print data versatile driver is stored, it is effective for every printers compatible to this system, and the operator need not install or update a printer driver. In addition, PC resources (load on a memory) can be reduced, and a comfortable PC environment can be provided.
As described above, according to the present invention, even when a terminal does not have any resources (memory, program, and the like) required to generate print data, print data corresponding to a printer to be used can be generated and printed. For this reason, a print instruction can be issued from a processor built-in electric product other than a computer.
Printer information acquired in step S1004 in
The printer transmits information indicating the positions of non-ejection nozzles to the printer controller or printer driver in addition to the head information shown in
Upon receiving such non-ejection information, the printer controller or printer driver processes data as follows in the “binarization process corresponding to the reception format of the printer side” in step S107 in
(1) In Case of Horizontal Data
Horizontal data is transmitted from the printer controller or printer driver to the printer in case of
Assume that the controller has already acquired, from the printer, information indicating that the printer head has 24 nozzle as shown in
Hence, the controller generates data and controls the printer, so as to use only a maximum one of available nozzle groups, which are segmented by the non-ejection nozzle, in a print process.
In the example shown in
When the controller outputs data in the raster format according to the aforementioned principle, nozzles Nos. 1 to 7 cannot be used. Therefore, the data generation side, i.e., the controller generates data for nozzles Nos. 9 to 24 so as to output null data for nozzles Nos. 1 to 8 of the data for nozzles Nos. 1 to 24 to be output. That is, upon generating binary data to be transmitted to the printer, null data for eight lines of each color are stored in the memory first, and dot data for 16 lines are then stored in the memory. The generated data is transmitted to the printer. In this case, prior to data transmission, the controller notifies the printer that a unit paper feed amount is to be shortened by lines (eight lines in this example) corresponding in number to dots which are not used. As a result, the nozzle width to be used matches the feed amount, and an image to be formed can be printed. In this way, only the paper feed control is changed compared to a normal case, and the ink ejection control from the head can be done as usual in the printer.
Alternatively, the controller may generate data for nozzles Nos. 9 to 24 and output the generated data to the printer, which may control nozzles Nos. 1 to 8 not to eject ink. The controller controls to generate and store data for 16 lines used by nozzles Nos. 9 to 24. However, in this case, as for a paper feed process, the feed amount need be changed from that for 24 nozzles to that for 16 nozzles. Hence, the printer must internally control that process or the controller must change a feed amount command or the like.
(2) In Case of Column Data
When column data is to be transmitted to the printer, as shown in
The controller may output null data for nozzles Nos. 1 to 8, which are not used, to execute the paper feed control. In this way, only the paper feed control is changed compared to a normal case, and the ink ejection control from the head can be done as usual in the printer.
With the above control, a high-quality print process can be realized using the printer having a non-ejection nozzle.
As many apparently widely different embodiments of the present invention can be made without departing from the spirit and scope thereof, it is to be understood that the invention is not limited to the specific embodiments thereof except as defined in the claims.
Number | Date | Country | Kind |
---|---|---|---|
2002-223582 | Jul 2002 | JP | national |