US20010006585A1 - Printing system and data processing method thereof - Google Patents

Printing system and data processing method thereof Download PDF

Info

Publication number
US20010006585A1
US20010006585A1 US09/754,313 US75431301A US2001006585A1 US 20010006585 A1 US20010006585 A1 US 20010006585A1 US 75431301 A US75431301 A US 75431301A US 2001006585 A1 US2001006585 A1 US 2001006585A1
Authority
US
United States
Prior art keywords
data
print
intermediate data
application
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US09/754,313
Other versions
US6394673B2 (en
Inventor
Ryuichi Horigane
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to US09/754,313 priority Critical patent/US6394673B2/en
Publication of US20010006585A1 publication Critical patent/US20010006585A1/en
Application granted granted Critical
Publication of US6394673B2 publication Critical patent/US6394673B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0014Transforming the printer input data into internal codes

Definitions

  • the present invention relates to a printing system for printing data instructed to be printed by an application at a printer. Specifically, the present invention relates to an improvement in a data processing method to enable application data to be printed out at any printers from every application having a printing function.
  • An electronic document retrieval system described in Unexamined Japanese Patent Publication No. Hei 8-50598 is known as an example of a related system having a code addition and printing function intended for managing such print files.
  • the system outputs added information to the electronic document to paper and stores the electronic document in a database at the same time; particularly, a bar code is used as the added information output to paper and can be read to retrieve the electronic document.
  • a printing system for printing application data instructed to be printed from an application at a printer, the printing system comprises: first intermediate data preparation means for preparing first intermediate data from the application data; second intermediate data preparation means for preparing second intermediate data having the same data format as the first intermediate data from the first intermediate data; and print data preparation means for preparing print data that can be processed at the printer from the second intermediate data.
  • the second intermediate data preparation means includes data merge means for merging machine-readable code into the first intermediate data, thereby preparing the second intermediate data.
  • the machine-readable code is at least any one of identification information, print date information, number-of-page information, source host device information, and preparation operation system name information of the application data.
  • the second intermediate data preparation means includes data conversion means for converting the first intermediate data into data corresponding to print control information specified accompanying the print instruction, thereby preparing the second intermediate data.
  • the print control information is any one of control information pieces specifying N-up print, scaled-up print, and scaled-down print for the application data.
  • the printing system further comprises: operation instruction means for specifying non-print processing operation other than print processing for the application data; and non-print processing control means for executing the non-print processing operation instructed by the operation instruction means while print data preparation processing is performed by the print data preparation means.
  • the non-print processing operation is at least any one of processing operation of registering the second intermediate data in a server, processing operation of transmitting the second intermediate data by mail, and processing operation of transmitting the second intermediate data with a facsimile machine.
  • a data processing method of a printing system for printing application data instructed to be printed from an application at a printer comprising the steps of: preparing first intermediate data from the application data; preparing second intermediate data having the same data format as the first intermediate data from the first intermediate data; and preparing print data that can be processed at the printer from the second intermediate data.
  • machine-readable code is merged into the first intermediate data, thereby preparing the second intermediate data.
  • the machine-readable code is at least any one of identification information, print date information, number-of-page information, source host device information, and information of operation system name in which the application data is prepared.
  • the first intermediate data is converted into data corresponding to print control information specified accompanying the print instruction, thereby preparing the second intermediate data.
  • the print control information is any one of control information pieces specifying N-up print, scaled-up print, and scaled-down print for the application data.
  • the data processing method further comprises the steps of: specifying selectively non-print processing operation other than print processing for the application data; and executing the instructed non-print processing operation while performing print data preparation processing.
  • the non-print processing operation is at least any one of processing operation of registering the second intermediate data in a server, processing operation of transmitting the second intermediate data by mail, and processing operation of transmitting the second intermediate data with a facsimile machine.
  • FIG. 1 is a block diagram to show a schematic configuration of a printing system according to one embodiment of the present invention
  • FIG. 2 is a flowchart to show the print processing operation of the printing system in FIG. 1;
  • FIG. 3 is an illustration to show an example of a print dialog used for setting print conditions
  • FIGS. 4 ( a ) and ( b ) are flowcharts to show the processing flow of the whole system in the code embedding and printing operation;
  • FIG. 5 is a schematic block diagram of the printing system used to explain the processing operation shown in FIGS. 4 ( a ) and ( b );
  • FIG. 6 is a block diagram to show the configuration of a second intermediate data generating section adaptable to code embedding and printing;
  • FIG. 7 is an illustration to show a printout image in the code embedding and printing operation
  • FIG. 8 is a block diagram to show the configuration of a second intermediate data generating section adaptable to print processing involving data conversion
  • FIG. 9 is an illustration to show a printout example in the print processing operation involving data conversion
  • FIG. 10 is a block diagram to show a schematic configuration of a printing system according to another embodiment of the present invention.
  • FIG. 11 is a flowchart to show the print processing operation of the printing system in FIG. 10.
  • FIG. 1 is a block diagram to show a schematic configuration of a printing system according to one embodiment of the present invention.
  • the printing system comprises an application 10 having at least data edit and printing functions, a user input section 20 for entering print conditions of coded data to obtain machine-readable code embedded in code data of an electronic file instructed to be printed by the application 10 (electronic file contents) and printed, print parameters of the electronic file (printer control information), or the like, a virtual printer driver 30 for generating print data that can be printed at a printer 50 from the code data according to the print conditions entered through the user input section 20 , a printer driver 40 for driving the printer 50 based on the print data output from the virtual printer driver 30 , and the printer 50 for printing out the print data under the drive control of the printer driver 40 .
  • the virtual printer driver 30 placed between the application 10 and the printer driver 40 comprises a first intermediate data generating section 302 for generating first intermediate data from the code data input from the application 10 , a second intermediate data generating section 303 for generating second intermediate data in the same data format as the first intermediate data from the first intermediate data according to the print conditions entered through the user input section 20 , a data storage section 304 for storing the first intermediate data and the second intermediate data, a print data generating section 305 for generating print data that can be printed at the printer 50 from the second intermediate data stored on the data storage section 304 and sending the print data to the printer driver 40 , and a control section 301 for controlling integrally the first intermediate data generating section 302 , the second intermediate data generating section 303 , the data storage section 304 , and the print data generating section 305 .
  • the user issues an instruction for printing the electronic file to be printed at step S 201 .
  • the user input section 20 displays a print dialog, for example, as shown in FIG. 3, and accepts setting of print conditions of the electronic file instructed to be printed at step S 202 .
  • the input conditions that can be entered by the user using the print dialog through the user input section 20 in response to the print instruction from the application 10 include various pieces of information of paper size and orientation, enable or disable of N-up print and scaled printing, and margin information in addition to coded data to obtain machine-readable code embedded in the data of the electronic file instructed to be printed.
  • the code data of the electronic file instructed to be printed is input from the application 10 to the virtual printer driver 30 and the user-setup print parameters, coded data, and the like are input from the user input section 20 to the virtual printer driver 30 .
  • the first intermediate data generating section 302 generates first intermediate data from the code data sent from the application 10 at first at step S 211 and stores the first intermediate data on the data storage section 304 .
  • the first intermediate data has a format to enable a GDI (Graphic Device Independent) command to be reproduced at step S 213 described later.
  • GDI Graphic Device Independent
  • Various metafiles such as WMF (Windows MetaFile) and EMF (Enhanced MetaFile) can be named as examples of the first intermediate data (Windows is a registered trademark of Microsoft USA).
  • the first intermediate data may be an originally determined format if it satisfies the requirement that GDI commands can be reproduced.
  • the print condition information set by the user is input from the user input section 20 to the second intermediate data generating section 303 , which then generates second intermediate data according to the print conditions from the first intermediate data stored on the data storage section 304 at step S 212 and stores the second intermediate data on the data storage section 304 .
  • the coded data input from the user input section 20 is coded as machine-readable code, then the machine-readable code is embedded in the first intermediate data and data in the same format as the first intermediate data (second intermediate data) is generated, or the first intermediate data is converted into data for N-up print, scaled print, etc., (second intermediate data) in the same format as the first intermediate data based on the print parameters (N-up print, scaled print, etc.,) input from the user input section 20 .
  • the print data generating section 305 reproduces a GDI command string from the data stored in the second intermediate data on the data storage section- 304 and sends the GDI command string as print data together with the print instruction to the printer driver 40 at step S 213 .
  • Windows API can be used for printing if the second intermediate data is formed of a WMF or EMF mentioned above.
  • the printer driver 40 starts the printer 50 in response to the print instruction sent from the print data generating section 305 and outputs the print data (GDI command string) to the printer 50 at step S 221 . Further, the printer 50 prints out the print data.
  • the printing system of the present invention is constituted such that the virtual printer driver 30 (provided by the application) is placed on an interface between the application 10 and the printer driver 40 , and the virtual printer driver 30 generates intermediate data to allow GDI code to be reproduced from application data instructed to be printed from the application 10 at first and further reproduces GDI code based on the intermediate data for generating print data, then feeds the print data into the printer driver 40 .
  • the virtual printer driver 30 corresponds to the printer driver if viewed from the application, or to the application if viewed from the printer driver 40 .
  • the virtual printer driver 30 thus placed on the interface enables any printers 50 to print out in various modes of machine-readable code embedding and printing, N-up print, scaled print, etc., from every application 10 having a print function.
  • FIG. 5 is a schematic block diagram of the printing system used to explain the print processing according to the flowcharts shown in FIGS. 4 ( a ) and ( b ).
  • a second intermediate data generating section 303 A comprising a code data analyzing section 3031 , an embedded data generating section 3032 , and a merge processing section 3033 as shown in FIG. 6 is used as the second intermediate data generating section 303 in the virtual printer driver 30 .
  • the virtual printer driver 30 exists between the application 10 and the printer driver 40 for controlling the printer 50 and an operating system (OS) intervenes between the virtual printer driver 30 and the application 10 .
  • the application 10 has a function of displaying a print operation dialog, for example, as shown in the upper-right portion of FIG. 5 when an electronic file created by the application 10 is printed. If property is selected, for example, in the print operation dialog of the application 10 , a print dialog of the user input section 20 , for example, as shown in FIG. 3 is opened. The user uses the print dialog to enter print parameters of the electronic file to be printed from the application 10 , data to be coded (coded data), etc.
  • the OS recognizes that an event occurs and is a print instruction (YES at step S 411 ), and sends a start instruction to the virtual printer driver 30 at step S 412 , whereby the virtual printer driver 30 is placed in a start state, first performs initialization processing at step S 421 , next sends a start instruction to the printer driver 40 at step S 422 , then waits for an initialization completion notification from the printer driver at step S 423 .
  • the printer driver 40 In response to the start instruction from the virtual printer driver 30 , the printer driver 40 performs initialization processing, then returns an initialization completion notification to the virtual printer driver 30 at step S 431 . Upon reception of the initialization completion notification (YES at step S 423 ), the virtual printer driver 30 notifies the OS of the initialization completion.
  • the OS checks to see whether an initialization completion notification is sent from the virtual printer driver 30 . In this state, if the OS receives an initialization completion notification from the virtual printer driver 30 (YES at step S 413 ), it recognizes that the virtual printer driver 30 becomes ready to print, and sends a ready-to-print notification to the application 10 at step S 414 .
  • the application 10 After issuing the print instruction at step S 402 , the application 10 checks to see whether the OS processing is complete. Upon reception of a ready-to-print notification from the OS (YES at step S 403 ), the application 10 determines that the OS processing is complete, and outputs code data to the OS at step S 404 .
  • the OS which receives the code data, executes predetermined code processing service at step S 415 and sends the code data undergoing the service to the virtual printer driver 30 .
  • steps S 404 to S 415 corresponds to the process wherein a print dialog (user input section 20 ) as shown in FIG. 3 is displayed based on the print instruction from the application 10 and the user uses the print dialog to enter data to be coded (coded data) and print parameters for the code data in the document file contents (code data) to be printed, input from the application 10 in response to the print instruction, as described above.
  • code data input from the application 10 and the coded data and print parameters entered by the user using the print dialog to which the code processing service is applied are output to the virtual printer driver 30 .
  • first the first intermediate data generating section 302 When the code data output at step S 415 in the OS is received at step S 424 in the virtual printer driver 30 , first the first intermediate data generating section 302 generates first intermediate data in a format to enable the data to be reproduced as GDI code in the later processing based on the received code data at step S 425 and stores the first intermediate data on the data storage section 304 .
  • the code data analyzing section 3031 analyzes the code data received from the OS and sends the analysis result to the merge processing section 3033 .
  • the embedded data generating section 3032 generates machine-readable code to be embedded in the code data instructed to be printed based on the coded data input from the user input section 20 at step S 426 and sends the machine-readable code to the merge processing section 3033 .
  • the merge processing section 3033 reads the first intermediate data from the data storage section 304 , then merges the machine-readable code generated at step S 426 into the first intermediate data in accordance with the analysis result of the code data analyzing section 3031 and the print parameters, etc., input from the user input section 20 for generating second intermediate data at step S 427 and stores the second intermediate data in the data storage section 304 .
  • the second intermediate data is prepared in a format similar to that of the first intermediate data.
  • the print data generating section 305 reproduces a GDI command string from the second intermediate data for generating print data and sends the print data together with the print instruction to the printer driver 40 at step S 428 .
  • the printer driver 40 Upon reception of the print instruction and the print data (GDI command string) from the virtual printer driver 30 at step S 432 , the printer driver 40 starts the printer 50 and outputs the print data at step S 434 . Further, the printer 50 prints out the print data received from the printer driver 40 .
  • the printer driver 40 After sending the print data to the printer 50 , the printer driver 40 sends a print completion notification to the virtual printer driver 30 .
  • the virtual printer driver 30 Upon reception of the print completion notification from the printer driver 40 , the virtual printer driver 30 recognizes that processing of the printer driver 40 is complete, and sends a print completion notification to the OS at step S 429 .
  • the OS After executing the code processing service, the OS checks to see whether the processing of the virtual printer driver 30 is complete. Meanwhile, if the OS receives the print completion notification from the virtual printer driver 30 (YES at step S 416 ), it determines that processing of the virtual printer driver 30 is complete, and terminates the operation at step S 417 . At the time, the OS sends an OS processing completion notification to the application 10 , then returns to the event check loop. On the other hand, after outputting the code data, the application 10 checks to see whether the OS processing is complete. Upon reception of the OS processing completion notification from the OS (YES at step S 405 ), the application 10 terminates the print processing sequence.
  • the virtual printer driver 30 performs (a) to (c) at steps S 424 to S 428 as follows:
  • the machine-readable code set by the user through the user input section 20 is merged into the print data resulting from performing processing of (a) to (c).
  • the print data is printed out at the printer 50 through the printer driver 40 , whereby a printout with the machine-readable code embedded in the application data can be provided.
  • FIG. 7 shows a print image for embedding machine-readable code (filled-in portions in FIG. 7) in electronic files from applications 10 of word processor, spread sheet, and drawing tool and printing the electronic files with the machine-readable code embedded.
  • a print dialog as shown in FIG. 3 is displayed.
  • the user enters the data to be coded (coded data) as machine-readable code.
  • coded data coded data
  • FIG. 3 an example of specifying “INTEGER” as the data type and coding “1234567890” as the value is shown on the print dialog in FIG. 3.
  • the coded data is coded in the virtual printer driver 30 and the resultant data is merged into the first intermediate data to generate second intermediate data, then the second intermediate data becomes print data reproduced in a GDI code string and the print data is passed to the printer driver 40 , then printout with the coded data embedded as shown in FIG. 7 can be provided at the printer 50 .
  • machine-readable code can be embedded in an electronic file in the application and printed if any printer 50 is used.
  • Bar code, data griff, etc. can be used as the machine-readable code embedded and printed in the printing system.
  • a registration ID used when an electronic file to be printed is registered in a server is possible, as described later, as the machine-readable code content.
  • the machine-readable code is read and scanned through a scanner on output paper with the machine-readable code embedded and printed, the registration ID is recognized from the scan result, and the electronic file corresponding to the registration ID can be retrieved from the server.
  • Possible as other examples of the machine-readable code are various pieces of information such as the identifier of a printed electronic file, the name of the host device supplying the electronic file, the name of the OS or user creating the electronic file, and the print date and the number of pages of the electronic file. Further, a character string such as “important” or “confidential” can also be watermarked in the electronic file printed on output paper.
  • the machine-readable code is previously merged into the first intermediate data to generate second intermediate data, then the second intermediate data is sent to the printer driver 40 .
  • the machine-readable code may be sent as a GDI command string in processing of sending a print instruction to the printer driver 40 .
  • the printing system of the present invention can also adopt a configuration for converting application data and printing out. N-up print, scaled-up or scaled-down print, or the like are possible as examples of print processing involving such data conversion. Processing of creating some file having a format that can be used with the virtual printer driver 30 is also applied.
  • a second intermediate data generating section 303 B comprising code data analyzing section 3031 and a data conversion section 3034 as shown in FIG. 8 may be used as the second intermediate data generating section 303 in the virtual printer driver 30 .
  • Print processing of the printing system adopting the second intermediate data generating section 303 B in the virtual printer driver 30 will be discussed briefly.
  • the print processing of the print system can be realized by replacing steps S 424 to S 427 of the virtual printer driver 30 in the flowcharts shown in FIGS. 4 ( a ) and ( b ) in the printing system for embedding and printing additional information of machine-readable code, etc., with the following process:
  • N-up print is specified on the print dialog shown in FIG. 3 after a print instruction is given from the application 10 in the printing system using the second intermediate data generating section 303 B as shown in FIG. 8.
  • the code data of the electronic file instructed to be printed is input from the application 10 to the virtual printer driver 30 and the print parameter specifying the N-up print is input from the user input section 20 to the virtual printer driver 30 .
  • the virtual printer driver 30 When the virtual printer driver 30 receives the code data input from the application 10 , first the first intermediate data generating section 302 generates first intermediate data in a format to enable the data to be reproduced as GDI code in the later processing based on the received code data and stores the first intermediate data on the data storage section 304 .
  • the code data analyzing section 3031 analyzes the code data received from the application 10 and sends the analysis result to the data conversion section 3034 .
  • the print parameter input from the user input section 20 is read into the data conversion section 3034 .
  • the data conversion section 3034 reads first intermediate data from the data storage section 304 , then converts the first intermediate data into data for the N-up print according to the print parameter input from the user input section 20 while referencing the analysis result of the code data analyzing section 3031 , thereby generating second intermediate data, and stores the second intermediate data in the data storage section 304 .
  • the print data generating section 305 reproduces a GDI command string from the second intermediate data for generating print data and sends the print data together with the print instruction to the printer driver 40 .
  • the printer driver 40 Upon reception of the print instruction and the print data (GDI command string) from the virtual printer driver 30 , the printer driver 40 starts the printer 50 and outputs the print data. Further, the printer 50 prints out the print data received from the printer driver 40 .
  • FIG. 9 shows a printout example based on the print processing.
  • this printout example if 1-up print is specified for an electronic file consisting of two pages, the two pages of the electronic file are normally printed on two sheets of output paper in a one-to-one correspondence; if 2-up print is specified for the electronic file, the two pages of the electronic file are printed on one sheet of output paper.
  • processing of adding additional information to the application data instructed to be printed and printing and processing of converting application data instructed to be printed into data for N-up print or scaled-down or scaled-up print are executed separately, but a system configuration for performing both the former processing and the latter processing is also possible.
  • FIG. 10 is a block diagram to show a schematic configuration of a printing system according to another embodiment of the present invention. Parts identical with or similar to those previously described with reference to FIG. 1 are denoted by the same reference numerals in FIG. 10.
  • a virtual printer driver 30 A is provided with a non-print processing control section 306 for controlling processing other than print processing when application data instructed to be printed from an application 10 is printed.
  • the non-print processing control section 306 is connected to an external device such as a server 60 via a predetermined interface.
  • the general operation of the printing system will be discussed with reference to a flowchart shown in FIG. 11. Steps identical with or similar to those previously described with reference to FIG. 2 are denoted by the same numerals in FIG. 11.
  • a user input section 20 displays a print dialog, for example, as shown in FIG. 3, and accepts setting of print conditions related to the electronic file instructed to be printed at step S 202 .
  • an instruction to start non-print processing other than print processing for the electronic file instructed to be printed is issued by using a dialog (not shown) different from the print dialog or a predetermined input function at step S 203 .
  • the code data of the electronic file instructed to be printed is input from the application 10 to the virtual printer driver 30 A and the user-setup print parameters of N-up print, etc., and coded data are input from the user input section 20 to the virtual printer driver 30 A.
  • the information input from the user input section 20 also includes the non-print processing start instruction information.
  • a first intermediate data generating section 302 generates first intermediate data from the code data sent from the application 10 at step S 211 and stores a the first intermediate data on a data storage section 304 .
  • the print condition information set by the user is input from the user input section 20 to a second intermediate data generating section 303 , which then generates second intermediate data according to the print conditions from the first intermediate data stored on the data storage section 304 at step S 212 and stores the second intermediate data on the data storage section 304 .
  • a print data generating section 305 reproduces a GDI command string from the data stored in the second intermediate data on the data storage section 304 and sends the GDI command string as print data together with the print instruction to a printer driver 40 at step S 213 .
  • the printer driver 40 starts a printer 50 in response to the print instruction sent from the print data generating section 305 and outputs the print data (GDI command string) sent together with the print instruction to the printer 50 at step S 221 . Further, the printer 50 prints out the print data.
  • a control section 301 in the virtual printer driver 30 A checks whether or not an instruction to start non-print processing is input from the user input section 20 at step S 214 . If an instruction to start non-print processing is not input (NO at step S 214 ), the control section 301 terminates the processing. In contrast, if an instruction to start non-print processing is input (YES at step S 214 ), the control section 301 starts the non-print processing control section 306 for executing the non-print processing instructed to be started at step S 215 .
  • instruction information meaning “server registration” is input as the non-print processing start instruction at step S 203 .
  • the control section 301 in the virtual printer driver 30 A recognizes that a “server registration” start instruction is given based on the instruction information (YES at step S 214 ), and sends a server registration start notification to the non-print processing control section 306 .
  • the non-print processing control section 306 reads the second intermediate data stored on the data storage section 304 and adds registration ID specified using the print dialog, for example, to the second intermediate data, then registers the second intermediate data in the server 60 .
  • a mail server or a facsimile machine is connected as an external device and a control function of the external device is added to the non-print processing control section 306 , while a specified electronic file is printed in response to a print instruction from the application 10 , it can be transmitted by mail through the mail server or can be transferred to the facsimile machine through which the electronic file can be transmitted to the receiving party.
  • intermediate data to enable print data adaptable to print processing of a printer is generated from application data instructed to be printed from an application and further the print data is reproduced from the intermediate data and is sent to the printer. Therefore, data of various applications having a printing function can be printed out at any printers.
  • the present invention there is added a processing function of merging machine-readable code on the intermediate data. Therefore, to embed machine-readable code in application data and print the application data with the machine-readable code embedded, the application data with the machine-readable code embedded can be printed at any printer.
  • the present invention there is added a function of converting application data instructed to be printed from an application on the intermediate data. Therefore, to execute N-up print, scaled print, etc., for the application data, the application data can be printed at any printer.

Abstract

A printing system for printing application data instructed to be printed from an application at a printer, which comprises first intermediate data preparation means for preparing first intermediate data from the application data, second intermediate data preparation means for preparing second intermediate data having the same data format as the first intermediate data from the first intermediate data, and print data preparation means for preparing print data that can be processed at the printer from the second intermediate data.

Description

    BACKGROUND OF THE INVENTION
  • The present invention relates to a printing system for printing data instructed to be printed by an application at a printer. Specifically, the present invention relates to an improvement in a data processing method to enable application data to be printed out at any printers from every application having a printing function. [0001]
  • To print an electronic file prepared or edited by an application, there is known a system for embedding machine-readable code in the electronic file and printing the electronic file with the machine-readable code embedded. Some systems of this kind use electronic file identification information, for example, as the machine-readable code. In this case, the machine-readable code is embedded in a document file instructed to be printed from an application and the document file with the machine-readable code embedded is printed out, then the output paper is read and scanned through a code reader (scanner), whereby it is made possible to recognize the machine-readable code and to manage the electronic file related to the machine-readable code. [0002]
  • An electronic document retrieval system described in Unexamined Japanese Patent Publication No. Hei 8-50598 is known as an example of a related system having a code addition and printing function intended for managing such print files. To print out an electronic document, the system outputs added information to the electronic document to paper and stores the electronic document in a database at the same time; particularly, a bar code is used as the added information output to paper and can be read to retrieve the electronic document. [0003]
  • In this kind of related system typified by the electronic document retrieval system described the above, normally, to use one printer to print out the machine-readable code to an electronic file, a printer driver that can drive the printer and an application adapted to the printer driver are provided, needless to say. [0004]
  • This means that this kind of related system does not give consideration to allowing an electronic file prepared in one application to be printed at any printers. [0005]
  • Thus, in the related system, used printers are limited depending on the used application and used applications are limited depending on the used printer. Resultantly, there is significantly limited construction of such a system, for example, embedding machine-readable code in an electronic file and printing the electronic file with the machine-readable code embedded, then reading the machine-readable code for retrieving the electronic file related thereto. [0006]
  • SUMMARY OF THE INVENTION
  • It is therefore the first object of the present invention to provide a printing system and a data processing method thereof to enable application data to be printed out at any printers from every application having a printing function. [0007]
  • It is the second object of the present invention to provide a printing system and a data processing method thereof to enable application data to be printed out at any printer from an application even if machine-readable code is embedded in the application data and the application data with the machine-readable code embedded is printed. [0008]
  • It is the third object of the present invention to provide a printing system and a data processing method thereof to enable application data to be printed out at any printer from an application even if N-up print, etc., is executed for the application data. [0009]
  • It is the fourth object of the present invention to provide a printing system and a data processing method thereof capable of executing non-print processing operation of application data concurrently with print processing of the application data. [0010]
  • In order to achieve the above object, there is provided a printing system for printing application data instructed to be printed from an application at a printer, the printing system comprises: first intermediate data preparation means for preparing first intermediate data from the application data; second intermediate data preparation means for preparing second intermediate data having the same data format as the first intermediate data from the first intermediate data; and print data preparation means for preparing print data that can be processed at the printer from the second intermediate data. [0011]
  • According to the first aspect of the present invention, the second intermediate data preparation means includes data merge means for merging machine-readable code into the first intermediate data, thereby preparing the second intermediate data. [0012]
  • The machine-readable code is at least any one of identification information, print date information, number-of-page information, source host device information, and preparation operation system name information of the application data. [0013]
  • According to the second aspect of the present invention, the second intermediate data preparation means includes data conversion means for converting the first intermediate data into data corresponding to print control information specified accompanying the print instruction, thereby preparing the second intermediate data. [0014]
  • The print control information is any one of control information pieces specifying N-up print, scaled-up print, and scaled-down print for the application data. [0015]
  • According to the third aspect of the present invention, the printing system further comprises: operation instruction means for specifying non-print processing operation other than print processing for the application data; and non-print processing control means for executing the non-print processing operation instructed by the operation instruction means while print data preparation processing is performed by the print data preparation means. [0016]
  • The non-print processing operation is at least any one of processing operation of registering the second intermediate data in a server, processing operation of transmitting the second intermediate data by mail, and processing operation of transmitting the second intermediate data with a facsimile machine. [0017]
  • In order to achieve the above object, there is also adopted a data processing method of a printing system for printing application data instructed to be printed from an application at a printer, the data processing method comprising the steps of: preparing first intermediate data from the application data; preparing second intermediate data having the same data format as the first intermediate data from the first intermediate data; and preparing print data that can be processed at the printer from the second intermediate data. [0018]
  • According to the fourth aspect of the present invention, machine-readable code is merged into the first intermediate data, thereby preparing the second intermediate data. [0019]
  • The machine-readable code is at least any one of identification information, print date information, number-of-page information, source host device information, and information of operation system name in which the application data is prepared. [0020]
  • According to the fifth aspect of the present invention, the first intermediate data is converted into data corresponding to print control information specified accompanying the print instruction, thereby preparing the second intermediate data. [0021]
  • The print control information is any one of control information pieces specifying N-up print, scaled-up print, and scaled-down print for the application data. [0022]
  • According to the sixth aspect of the present invention, the data processing method further comprises the steps of: specifying selectively non-print processing operation other than print processing for the application data; and executing the instructed non-print processing operation while performing print data preparation processing. [0023]
  • The non-print processing operation is at least any one of processing operation of registering the second intermediate data in a server, processing operation of transmitting the second intermediate data by mail, and processing operation of transmitting the second intermediate data with a facsimile machine. [0024]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • In the accompanying drawings: [0025]
  • FIG. 1 is a block diagram to show a schematic configuration of a printing system according to one embodiment of the present invention; [0026]
  • FIG. 2 is a flowchart to show the print processing operation of the printing system in FIG. 1; [0027]
  • FIG. 3 is an illustration to show an example of a print dialog used for setting print conditions; [0028]
  • FIGS. [0029] 4(a) and (b) are flowcharts to show the processing flow of the whole system in the code embedding and printing operation;
  • FIG. 5 is a schematic block diagram of the printing system used to explain the processing operation shown in FIGS. [0030] 4(a) and (b);
  • FIG. 6 is a block diagram to show the configuration of a second intermediate data generating section adaptable to code embedding and printing; [0031]
  • FIG. 7 is an illustration to show a printout image in the code embedding and printing operation; [0032]
  • FIG. 8 is a block diagram to show the configuration of a second intermediate data generating section adaptable to print processing involving data conversion; [0033]
  • FIG. 9 is an illustration to show a printout example in the print processing operation involving data conversion; [0034]
  • FIG. 10 is a block diagram to show a schematic configuration of a printing system according to another embodiment of the present invention; and [0035]
  • FIG. 11 is a flowchart to show the print processing operation of the printing system in FIG. 10. [0036]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Referring now to the accompanying drawings, there are shown preferred embodiments of the present invention. FIG. 1 is a block diagram to show a schematic configuration of a printing system according to one embodiment of the present invention. The printing system comprises an [0037] application 10 having at least data edit and printing functions, a user input section 20 for entering print conditions of coded data to obtain machine-readable code embedded in code data of an electronic file instructed to be printed by the application 10 (electronic file contents) and printed, print parameters of the electronic file (printer control information), or the like, a virtual printer driver 30 for generating print data that can be printed at a printer 50 from the code data according to the print conditions entered through the user input section 20, a printer driver 40 for driving the printer 50 based on the print data output from the virtual printer driver 30, and the printer 50 for printing out the print data under the drive control of the printer driver 40.
  • The [0038] virtual printer driver 30 placed between the application 10 and the printer driver 40 comprises a first intermediate data generating section 302 for generating first intermediate data from the code data input from the application 10, a second intermediate data generating section 303 for generating second intermediate data in the same data format as the first intermediate data from the first intermediate data according to the print conditions entered through the user input section 20, a data storage section 304 for storing the first intermediate data and the second intermediate data, a print data generating section 305 for generating print data that can be printed at the printer 50 from the second intermediate data stored on the data storage section 304 and sending the print data to the printer driver 40, and a control section 301 for controlling integrally the first intermediate data generating section 302, the second intermediate data generating section 303, the data storage section 304, and the print data generating section 305.
  • Next, general operation for printing an electronic file instructed to be printed from the [0039] application 10 in the printing system will be discussed with reference to a flowchart shown in FIG. 2.
  • To print any electronic file created by the [0040] application 10 from the application 10 in the printing system, the user issues an instruction for printing the electronic file to be printed at step S201. When the print instruction is issued, the user input section 20 displays a print dialog, for example, as shown in FIG. 3, and accepts setting of print conditions of the electronic file instructed to be printed at step S202. As seen in the example in FIG. 3, the input conditions that can be entered by the user using the print dialog through the user input section 20 in response to the print instruction from the application 10 include various pieces of information of paper size and orientation, enable or disable of N-up print and scaled printing, and margin information in addition to coded data to obtain machine-readable code embedded in the data of the electronic file instructed to be printed.
  • Upon completion of setting the print conditions on the print dialog, the code data of the electronic file instructed to be printed is input from the [0041] application 10 to the virtual printer driver 30 and the user-setup print parameters, coded data, and the like are input from the user input section 20 to the virtual printer driver 30.
  • In the [0042] virtual printer driver 30, the first intermediate data generating section 302 generates first intermediate data from the code data sent from the application 10 at first at step S211 and stores the first intermediate data on the data storage section 304. The first intermediate data has a format to enable a GDI (Graphic Device Independent) command to be reproduced at step S213 described later. Various metafiles such as WMF (Windows MetaFile) and EMF (Enhanced MetaFile) can be named as examples of the first intermediate data (Windows is a registered trademark of Microsoft USA). In addition, the first intermediate data may be an originally determined format if it satisfies the requirement that GDI commands can be reproduced.
  • On the other hand, the print condition information set by the user is input from the [0043] user input section 20 to the second intermediate data generating section 303, which then generates second intermediate data according to the print conditions from the first intermediate data stored on the data storage section 304 at step S212 and stores the second intermediate data on the data storage section 304.
  • At step [0044] 212, the coded data input from the user input section 20 is coded as machine-readable code, then the machine-readable code is embedded in the first intermediate data and data in the same format as the first intermediate data (second intermediate data) is generated, or the first intermediate data is converted into data for N-up print, scaled print, etc., (second intermediate data) in the same format as the first intermediate data based on the print parameters (N-up print, scaled print, etc.,) input from the user input section 20.
  • Next, the print [0045] data generating section 305 reproduces a GDI command string from the data stored in the second intermediate data on the data storage section-304 and sends the GDI command string as print data together with the print instruction to the printer driver 40 at step S213. For this process, Windows API can be used for printing if the second intermediate data is formed of a WMF or EMF mentioned above.
  • The [0046] printer driver 40 starts the printer 50 in response to the print instruction sent from the print data generating section 305 and outputs the print data (GDI command string) to the printer 50 at step S221. Further, the printer 50 prints out the print data.
  • Thus, the printing system of the present invention is constituted such that the virtual printer driver [0047] 30 (provided by the application) is placed on an interface between the application 10 and the printer driver 40, and the virtual printer driver 30 generates intermediate data to allow GDI code to be reproduced from application data instructed to be printed from the application 10 at first and further reproduces GDI code based on the intermediate data for generating print data, then feeds the print data into the printer driver 40. That is, in the printing system of the present invention, the virtual printer driver 30 corresponds to the printer driver if viewed from the application, or to the application if viewed from the printer driver 40. The virtual printer driver 30 thus placed on the interface enables any printers 50 to print out in various modes of machine-readable code embedding and printing, N-up print, scaled print, etc., from every application 10 having a print function.
  • Next, a specific example of the print processing operation of the printing system will be discussed in detail with reference to a flowcharts shown in FIGS. [0048] 4(a) and (b). FIG. 5 is a schematic block diagram of the printing system used to explain the print processing according to the flowcharts shown in FIGS. 4(a) and (b). The flowcharts shown in FIGS. 4(a) and (b) corresponds particularly to a flow of print processing for embedding machine-readable code in an electronic file that the user instructs to be printed and printing the electronic file with the machine-readable code embedded In this case, a second intermediate data generating section 303A comprising a code data analyzing section 3031, an embedded data generating section 3032, and a merge processing section 3033 as shown in FIG. 6 is used as the second intermediate data generating section 303 in the virtual printer driver 30.
  • As shown in FIG. 5, in the printing system, the [0049] virtual printer driver 30 exists between the application 10 and the printer driver 40 for controlling the printer 50 and an operating system (OS) intervenes between the virtual printer driver 30 and the application 10. The application 10 has a function of displaying a print operation dialog, for example, as shown in the upper-right portion of FIG. 5 when an electronic file created by the application 10 is printed. If property is selected, for example, in the print operation dialog of the application 10, a print dialog of the user input section 20, for example, as shown in FIG. 3 is opened. The user uses the print dialog to enter print parameters of the electronic file to be printed from the application 10, data to be coded (coded data), etc.
  • While one electronic file is edited in the [0050] application 10 at step S401, the virtual printer driver 30 and the printer driver 40 intervening between the application 10 and the printer 50 are in an idle state. At this time, the OS for controlling execution of the application 10 checks to see whether some event is specified from the application 10 at step S411 (event check loop).
  • In this state, if an instruction for printing the electronic file being edited is given from the [0051] application 10 at step S402, the OS recognizes that an event occurs and is a print instruction (YES at step S411), and sends a start instruction to the virtual printer driver 30 at step S412, whereby the virtual printer driver 30 is placed in a start state, first performs initialization processing at step S421, next sends a start instruction to the printer driver 40 at step S422, then waits for an initialization completion notification from the printer driver at step S423.
  • In response to the start instruction from the [0052] virtual printer driver 30, the printer driver 40 performs initialization processing, then returns an initialization completion notification to the virtual printer driver 30 at step S431. Upon reception of the initialization completion notification (YES at step S423), the virtual printer driver 30 notifies the OS of the initialization completion.
  • On the other hand, after sending the start instruction to the [0053] virtual printer driver 30, the OS checks to see whether an initialization completion notification is sent from the virtual printer driver 30. In this state, if the OS receives an initialization completion notification from the virtual printer driver 30 (YES at step S413), it recognizes that the virtual printer driver 30 becomes ready to print, and sends a ready-to-print notification to the application 10 at step S414.
  • After issuing the print instruction at step S[0054] 402, the application 10 checks to see whether the OS processing is complete. Upon reception of a ready-to-print notification from the OS (YES at step S403), the application 10 determines that the OS processing is complete, and outputs code data to the OS at step S404.
  • The OS, which receives the code data, executes predetermined code processing service at step S[0055] 415 and sends the code data undergoing the service to the virtual printer driver 30.
  • The process of steps S[0056] 404 to S415 corresponds to the process wherein a print dialog (user input section 20) as shown in FIG. 3 is displayed based on the print instruction from the application 10 and the user uses the print dialog to enter data to be coded (coded data) and print parameters for the code data in the document file contents (code data) to be printed, input from the application 10 in response to the print instruction, as described above. The code data input from the application 10 and the coded data and print parameters entered by the user using the print dialog to which the code processing service is applied are output to the virtual printer driver 30.
  • When the code data output at step S[0057] 415 in the OS is received at step S424 in the virtual printer driver 30, first the first intermediate data generating section 302 generates first intermediate data in a format to enable the data to be reproduced as GDI code in the later processing based on the received code data at step S425 and stores the first intermediate data on the data storage section 304.
  • In the second intermediate [0058] data generating section 303A (see FIG. 6) of the virtual printer driver 30, the code data analyzing section 3031 analyzes the code data received from the OS and sends the analysis result to the merge processing section 3033. On the other hand, the embedded data generating section 3032 generates machine-readable code to be embedded in the code data instructed to be printed based on the coded data input from the user input section 20 at step S426 and sends the machine-readable code to the merge processing section 3033.
  • Further, the [0059] merge processing section 3033 reads the first intermediate data from the data storage section 304, then merges the machine-readable code generated at step S426 into the first intermediate data in accordance with the analysis result of the code data analyzing section 3031 and the print parameters, etc., input from the user input section 20 for generating second intermediate data at step S427 and stores the second intermediate data in the data storage section 304. The second intermediate data is prepared in a format similar to that of the first intermediate data.
  • Then, in the [0060] virtual printer driver 30, the print data generating section 305 reproduces a GDI command string from the second intermediate data for generating print data and sends the print data together with the print instruction to the printer driver 40 at step S428.
  • Upon reception of the print instruction and the print data (GDI command string) from the [0061] virtual printer driver 30 at step S432, the printer driver 40 starts the printer 50 and outputs the print data at step S434. Further, the printer 50 prints out the print data received from the printer driver 40.
  • After sending the print data to the [0062] printer 50, the printer driver 40 sends a print completion notification to the virtual printer driver 30. Upon reception of the print completion notification from the printer driver 40, the virtual printer driver 30 recognizes that processing of the printer driver 40 is complete, and sends a print completion notification to the OS at step S429.
  • After executing the code processing service, the OS checks to see whether the processing of the [0063] virtual printer driver 30 is complete. Meanwhile, if the OS receives the print completion notification from the virtual printer driver 30 (YES at step S416), it determines that processing of the virtual printer driver 30 is complete, and terminates the operation at step S417. At the time, the OS sends an OS processing completion notification to the application 10, then returns to the event check loop. On the other hand, after outputting the code data, the application 10 checks to see whether the OS processing is complete. Upon reception of the OS processing completion notification from the OS (YES at step S405), the application 10 terminates the print processing sequence.
  • As seen from the description of the processing sequence, the [0064] virtual printer driver 30 performs (a) to (c) at steps S424 to S428 as follows:
  • (a) the first intermediate data that can be reproduced in GDI code is generated from the electronic file instructed to be printed from the [0065] application 10;
  • (b) the machine-readable code is generated from coded data input accompanying the print instruction, then is merged into the first intermediate data for generating second intermediate data in the same format as the first intermediate data; and [0066]
  • (c) a GDI code string is reproduced from the second intermediate data, whereby print data is generated and a print instruction is given to the [0067] printer driver 40.
  • The machine-readable code set by the user through the [0068] user input section 20 is merged into the print data resulting from performing processing of (a) to (c). Thus, the print data is printed out at the printer 50 through the printer driver 40, whereby a printout with the machine-readable code embedded in the application data can be provided.
  • As an example, FIG. 7 shows a print image for embedding machine-readable code (filled-in portions in FIG. 7) in electronic files from [0069] applications 10 of word processor, spread sheet, and drawing tool and printing the electronic files with the machine-readable code embedded.
  • In the print processing, first, when the user executes printing the electronic file in each [0070] application 10, a print dialog as shown in FIG. 3 is displayed. Here, the user enters the data to be coded (coded data) as machine-readable code. Particularly, an example of specifying “INTEGER” as the data type and coding “1234567890” as the value is shown on the print dialog in FIG. 3. If the user presses an OK button on the print dialog after entering the coded data, the coded data is coded in the virtual printer driver 30 and the resultant data is merged into the first intermediate data to generate second intermediate data, then the second intermediate data becomes print data reproduced in a GDI code string and the print data is passed to the printer driver 40, then printout with the coded data embedded as shown in FIG. 7 can be provided at the printer 50.
  • According to the printing system of the present invention having the [0071] virtual printer driver 30 being placed between the application 10 and the printer driver 40 for embedding machine-readable code in the intermediate code that can be reproduced in a GDI code string, from every application of word processor, spread sheet, drawing tool, etc., as shown in FIG. 7 having a print function, machine-readable code can be embedded in an electronic file in the application and printed if any printer 50 is used.
  • Bar code, data griff, etc., can be used as the machine-readable code embedded and printed in the printing system. A registration ID used when an electronic file to be printed is registered in a server is possible, as described later, as the machine-readable code content. In this case, the machine-readable code is read and scanned through a scanner on output paper with the machine-readable code embedded and printed, the registration ID is recognized from the scan result, and the electronic file corresponding to the registration ID can be retrieved from the server. [0072]
  • Possible as other examples of the machine-readable code are various pieces of information such as the identifier of a printed electronic file, the name of the host device supplying the electronic file, the name of the OS or user creating the electronic file, and the print date and the number of pages of the electronic file. Further, a character string such as “important” or “confidential” can also be watermarked in the electronic file printed on output paper. [0073]
  • In the example, the machine-readable code is previously merged into the first intermediate data to generate second intermediate data, then the second intermediate data is sent to the [0074] printer driver 40. However, alternatively, the machine-readable code may be sent as a GDI command string in processing of sending a print instruction to the printer driver 40.
  • By the way, in the machine-readable code embedding and printing processing described above, application data is not converted and additional information of server registration ID, etc., is added to the application data and printing is performed. In addition, the printing system of the present invention can also adopt a configuration for converting application data and printing out. N-up print, scaled-up or scaled-down print, or the like are possible as examples of print processing involving such data conversion. Processing of creating some file having a format that can be used with the [0075] virtual printer driver 30 is also applied. To add such a print processing function, for example, a second intermediate data generating section 303B comprising code data analyzing section 3031 and a data conversion section 3034 as shown in FIG. 8 may be used as the second intermediate data generating section 303 in the virtual printer driver 30.
  • Print processing of the printing system adopting the second intermediate [0076] data generating section 303B in the virtual printer driver 30 will be discussed briefly. The print processing of the print system can be realized by replacing steps S424 to S427 of the virtual printer driver 30 in the flowcharts shown in FIGS. 4(a) and (b) in the printing system for embedding and printing additional information of machine-readable code, etc., with the following process:
  • Now, assume that N-up print is specified on the print dialog shown in FIG. 3 after a print instruction is given from the [0077] application 10 in the printing system using the second intermediate data generating section 303B as shown in FIG. 8. Upon completion of setting on the print dialog, the code data of the electronic file instructed to be printed is input from the application 10 to the virtual printer driver 30 and the print parameter specifying the N-up print is input from the user input section 20 to the virtual printer driver 30.
  • When the [0078] virtual printer driver 30 receives the code data input from the application 10, first the first intermediate data generating section 302 generates first intermediate data in a format to enable the data to be reproduced as GDI code in the later processing based on the received code data and stores the first intermediate data on the data storage section 304.
  • In the second intermediate [0079] data generating section 303B (see FIG. 8) of the virtual printer driver 30, the code data analyzing section 3031 analyzes the code data received from the application 10 and sends the analysis result to the data conversion section 3034. On the other hand, the print parameter input from the user input section 20 is read into the data conversion section 3034.
  • After this, the [0080] data conversion section 3034 reads first intermediate data from the data storage section 304, then converts the first intermediate data into data for the N-up print according to the print parameter input from the user input section 20 while referencing the analysis result of the code data analyzing section 3031, thereby generating second intermediate data, and stores the second intermediate data in the data storage section 304.
  • Further, in the [0081] virtual printer driver 30, the print data generating section 305 reproduces a GDI command string from the second intermediate data for generating print data and sends the print data together with the print instruction to the printer driver 40.
  • Upon reception of the print instruction and the print data (GDI command string) from the [0082] virtual printer driver 30, the printer driver 40 starts the printer 50 and outputs the print data. Further, the printer 50 prints out the print data received from the printer driver 40.
  • FIG. 9 shows a printout example based on the print processing. In this printout example, if 1-up print is specified for an electronic file consisting of two pages, the two pages of the electronic file are normally printed on two sheets of output paper in a one-to-one correspondence; if 2-up print is specified for the electronic file, the two pages of the electronic file are printed on one sheet of output paper. [0083]
  • To execute scaled print in addition to the N-up print or obtain some data for use with the [0084] virtual printer driver 30, similar processing can also be applied.
  • In the example, processing of adding additional information to the application data instructed to be printed and printing and processing of converting application data instructed to be printed into data for N-up print or scaled-down or scaled-up print are executed separately, but a system configuration for performing both the former processing and the latter processing is also possible. [0085]
  • Next, another embodiment of the present invention will be discussed. FIG. 10 is a block diagram to show a schematic configuration of a printing system according to another embodiment of the present invention. Parts identical with or similar to those previously described with reference to FIG. 1 are denoted by the same reference numerals in FIG. 10. [0086]
  • In the printing system, a [0087] virtual printer driver 30A is provided with a non-print processing control section 306 for controlling processing other than print processing when application data instructed to be printed from an application 10 is printed. The non-print processing control section 306 is connected to an external device such as a server 60 via a predetermined interface. The general operation of the printing system will be discussed with reference to a flowchart shown in FIG. 11. Steps identical with or similar to those previously described with reference to FIG. 2 are denoted by the same numerals in FIG. 11.
  • To print any electronic file from the [0088] application 10 in the printing system, the user issues an instruction for printing the electronic file to be printed at step S201. When the print instruction is issued, a user input section 20 displays a print dialog, for example, as shown in FIG. 3, and accepts setting of print conditions related to the electronic file instructed to be printed at step S202.
  • In the printing system, an instruction to start non-print processing other than print processing for the electronic file instructed to be printed is issued by using a dialog (not shown) different from the print dialog or a predetermined input function at step S[0089] 203.
  • Upon completion of setting the print conditions and issuing the instruction to start non-print processing, the code data of the electronic file instructed to be printed is input from the [0090] application 10 to the virtual printer driver 30A and the user-setup print parameters of N-up print, etc., and coded data are input from the user input section 20 to the virtual printer driver 30A. At this time, the information input from the user input section 20 also includes the non-print processing start instruction information.
  • In the [0091] virtual printer driver 30A, first a first intermediate data generating section 302 generates first intermediate data from the code data sent from the application 10 at step S211 and stores a the first intermediate data on a data storage section 304. On the other hand, the print condition information set by the user is input from the user input section 20 to a second intermediate data generating section 303, which then generates second intermediate data according to the print conditions from the first intermediate data stored on the data storage section 304 at step S212 and stores the second intermediate data on the data storage section 304.
  • Next, a print [0092] data generating section 305 reproduces a GDI command string from the data stored in the second intermediate data on the data storage section 304 and sends the GDI command string as print data together with the print instruction to a printer driver 40 at step S213.
  • The [0093] printer driver 40 starts a printer 50 in response to the print instruction sent from the print data generating section 305 and outputs the print data (GDI command string) sent together with the print instruction to the printer 50 at step S221. Further, the printer 50 prints out the print data.
  • After sending the print instruction at step S[0094] 213, a control section 301 in the virtual printer driver 30A checks whether or not an instruction to start non-print processing is input from the user input section 20 at step S214. If an instruction to start non-print processing is not input (NO at step S214), the control section 301 terminates the processing. In contrast, if an instruction to start non-print processing is input (YES at step S214), the control section 301 starts the non-print processing control section 306 for executing the non-print processing instructed to be started at step S215.
  • For example, to print application data and register the data in the [0095] server 60 in the printing system shown in FIG. 10, instruction information meaning “server registration” is input as the non-print processing start instruction at step S203. At this time, the control section 301 in the virtual printer driver 30A recognizes that a “server registration” start instruction is given based on the instruction information (YES at step S214), and sends a server registration start notification to the non-print processing control section 306. When receiving the notification, the non-print processing control section 306 reads the second intermediate data stored on the data storage section 304 and adds registration ID specified using the print dialog, for example, to the second intermediate data, then registers the second intermediate data in the server 60.
  • In addition, if a mail server or a facsimile machine is connected as an external device and a control function of the external device is added to the non-print [0096] processing control section 306, while a specified electronic file is printed in response to a print instruction from the application 10, it can be transmitted by mail through the mail server or can be transferred to the facsimile machine through which the electronic file can be transmitted to the receiving party.
  • As has been described heretofore, according to the present invention, intermediate data to enable print data adaptable to print processing of a printer is generated from application data instructed to be printed from an application and further the print data is reproduced from the intermediate data and is sent to the printer. Therefore, data of various applications having a printing function can be printed out at any printers. [0097]
  • In the present invention, there is added a processing function of merging machine-readable code on the intermediate data. Therefore, to embed machine-readable code in application data and print the application data with the machine-readable code embedded, the application data with the machine-readable code embedded can be printed at any printer. [0098]
  • In the present invention, there is added a function of converting application data instructed to be printed from an application on the intermediate data. Therefore, to execute N-up print, scaled print, etc., for the application data, the application data can be printed at any printer. [0099]
  • Further, in the present invention, there is added a function of executing non-print processing operation while performing print data preparation processing, so that the non-print processing operation of server registration, facsimile transmission, etc., of application data can be performed concurrently with print processing of the application data. [0100]

Claims (14)

What is claimed is:
1. A printing system for printing application data instructed to be printed from an application at a printer, the printing system comprising:
first intermediate data preparation means for preparing first intermediate data from the application data;
second intermediate data preparation means for preparing second intermediate data having the same data format as the first intermediate data from the first intermediate data; and
print data preparation means for preparing print data that can be processed at the printer from the second intermediate data.
2. The printing system as set forth in
claim 1
wherein the second intermediate data preparation means includes data merge means for merging a machine-readable code into the first intermediate data, thereby preparing the second intermediate data.
3. The printing system as set forth in
claim 2
wherein the machine-readable code is at least any one of identification information, print date information, number-of-page information, source host device information, and information of operation system name in which the application data is prepared.
4. The printing system as set forth in
claim 1
wherein the second intermediate data preparation means includes data conversion means for converting the first intermediate data into data corresponding to print control information specified accompanying the print instruction, thereby preparing the second intermediate data.
5. The printing system as set forth in
claim 4
wherein the print control information is any one of control information pieces specifying N-up print, scaled-up print, and scaled-down print for the application data.
6. The printing system as set forth in
claim 1
further comprising:
operation instruction means for specifying non-print processing operation other than print processing for the application data; and
non-print processing control means for executing the non-print processing operation instructed by the operation instruction means while print data preparation processing is performed by the print data preparation means.
7. The printing system as set forth in
claim 6
wherein the non-print processing operation is at least any one of processing operation of registering the second intermediate data in a server, processing operation of transmitting the second intermediate data by mail, and processing operation of transmitting the second intermediate data with a facsimile machine.
8. A data processing method of a printing system for printing application data instructed to be printed from an application at a printer, the data processing method comprising the steps of:
preparing first intermediate data from the application data;
preparing second intermediate data having the same data format as the first intermediate data from the first intermediate data; and
preparing print data that can be processed at the printer from the second intermediate data.
9. The data processing method as set forth in
claim 8
wherein machine-readable code is merged into the first intermediate data, thereby preparing the second intermediate data.
10. The data processing method as set forth in
claim 9
wherein the machine-readable code is at least any one of identification information, print date information, number-of-page information, source host device information, and information of operation system name in which the application data is prepared.
11. The data processing method as set forth in
claim 8
wherein the first intermediate data is converted into data corresponding to print control information specified accompanying the print instruction, thereby preparing the second intermediate data.
12. The data processing method as set forth in
claim 11
wherein the print control information is any one of control information pieces specifying N-up print, scaled-up print, and scaled-down print for the application data.
13. The data processing method as set forth in
claim 8
further comprising the steps of:
specifying selectively non-print processing operation other than print processing for the application data; and
executing the instructed non-print processing operation while performing print data preparation processing.
14. The data processing method as set forth in
claim 13
wherein the non-print processing operation is at least any one of processing operation of registering the second intermediate data in a server, processing operation of transmitting the second intermediate data by mail, and processing operation of transmitting the second intermediate data with a facsimile machine.
US09/754,313 1997-12-25 2001-01-05 Printing system and data processing method thereof Expired - Fee Related US6394673B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/754,313 US6394673B2 (en) 1997-12-25 2001-01-05 Printing system and data processing method thereof

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP9-357522 1997-12-25
JP35752297A JPH11184657A (en) 1997-12-25 1997-12-25 Print system and data processing method therefor
JPP.HEI.9-357522 1997-12-25
US09/217,948 US6334721B1 (en) 1997-12-25 1998-12-22 Printing system and data processing method thereof
US09/754,313 US6394673B2 (en) 1997-12-25 2001-01-05 Printing system and data processing method thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/217,948 Division US6334721B1 (en) 1997-12-25 1998-12-22 Printing system and data processing method thereof

Publications (2)

Publication Number Publication Date
US20010006585A1 true US20010006585A1 (en) 2001-07-05
US6394673B2 US6394673B2 (en) 2002-05-28

Family

ID=18454564

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/217,948 Expired - Lifetime US6334721B1 (en) 1997-12-25 1998-12-22 Printing system and data processing method thereof
US09/754,313 Expired - Fee Related US6394673B2 (en) 1997-12-25 2001-01-05 Printing system and data processing method thereof

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/217,948 Expired - Lifetime US6334721B1 (en) 1997-12-25 1998-12-22 Printing system and data processing method thereof

Country Status (2)

Country Link
US (2) US6334721B1 (en)
JP (1) JPH11184657A (en)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010054150A1 (en) * 2000-03-18 2001-12-20 Levy Kenneth L. Watermark embedding functions in rendering description files
US20030005369A1 (en) * 2001-06-27 2003-01-02 International Business Machines Corporation System and method for diagnosing printer problems and notarizing prints by evaluating embedded data
US20030142361A1 (en) * 2002-01-30 2003-07-31 Digimarc Corporation Watermarking a page description language file
US6694042B2 (en) 1999-06-29 2004-02-17 Digimarc Corporation Methods for determining contents of media
US20040143685A1 (en) * 2002-12-11 2004-07-22 Unilever Home & Personal Care Usa, Division Of Conopco, Inc. Process and apparatus for keeping records
US20050013462A1 (en) * 1994-11-16 2005-01-20 Rhoads Geoffrey B. Paper products and physical objects as means to access and control a computer or to navigate over or act as a portal on a network
US20050216521A1 (en) * 2003-12-29 2005-09-29 Sivakumar Coramutla Apparatus and method for printing a file while bypassing the file's native application program
US6952485B1 (en) 2000-09-11 2005-10-04 Digimarc Corporation Watermark encoding and decoding in imaging devices and imaging device interfaces
US6985600B2 (en) 1994-03-17 2006-01-10 Digimarc Corporation Printing media and methods employing digital watermarking
US20060031162A1 (en) * 2000-08-03 2006-02-09 Brundage Trent J Linking from paper invoices and statements to on-line resources
US20060050308A1 (en) * 2004-09-07 2006-03-09 Canon Kabushiki Kaisha Information processing device capable of outputting print data to print device, and control method thereof
US7024016B2 (en) 1996-05-16 2006-04-04 Digimarc Corporation Digital watermarking apparatus and methods
US7330564B2 (en) 2001-04-24 2008-02-12 Digimarc Corporation Digital watermarking apparatus and methods
US7744001B2 (en) 2001-12-18 2010-06-29 L-1 Secure Credentialing, Inc. Multiple image security features for identification documents and methods of making same
US7824029B2 (en) 2002-05-10 2010-11-02 L-1 Secure Credentialing, Inc. Identification card printer-assembler for over the counter card issuing
US8050451B2 (en) 2003-04-03 2011-11-01 Digimarc Corporation Electronic forms using indicia, sometimes hidden indicia
US20110273741A1 (en) * 2010-05-10 2011-11-10 Ricoh Company, Ltd. Information processing apparatus, print control program, storage medium, image forming apparatus and printing system
US8103542B1 (en) 1999-06-29 2012-01-24 Digimarc Corporation Digitally marked objects and promotional methods
US8750556B2 (en) 2000-12-21 2014-06-10 Digimarc Corporation Watermark systems and methods
WO2017027076A1 (en) * 2015-07-31 2017-02-16 Hewlett-Packard Development Company, L.P. Print format version with machine-readable link
US9630443B2 (en) 1995-07-27 2017-04-25 Digimarc Corporation Printer driver separately applying watermark and information
CN113383305A (en) * 2019-02-01 2021-09-10 兄弟工业株式会社 Support program, information processing apparatus, and printing method
US11625551B2 (en) 2011-08-30 2023-04-11 Digimarc Corporation Methods and arrangements for identifying objects

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039214B2 (en) * 1999-11-05 2006-05-02 Digimarc Corporation Embedding watermark components during separate printing stages
US6869023B2 (en) * 2002-02-12 2005-03-22 Digimarc Corporation Linking documents through digital watermarking
US8094949B1 (en) 1994-10-21 2012-01-10 Digimarc Corporation Music methods and systems
US6577746B1 (en) * 1999-12-28 2003-06-10 Digimarc Corporation Watermark-based object linking and embedding
US7505605B2 (en) * 1996-04-25 2009-03-17 Digimarc Corporation Portable devices and methods employing digital watermarking
US7602940B2 (en) 1998-04-16 2009-10-13 Digimarc Corporation Steganographic data hiding using a device clock
US6825945B1 (en) * 1999-05-25 2004-11-30 Silverbrook Research Pty Ltd Method and system for delivery of a brochure
EP1081637B1 (en) 1999-09-06 2006-12-20 Seiko Epson Corporation Sending of printer settings to a host device
US6598087B1 (en) * 1999-09-08 2003-07-22 Ge Capital Commercial Finance, Inc. Methods and apparatus for network-enabled virtual printing
JP4240690B2 (en) * 1999-10-28 2009-03-18 キヤノン株式会社 Information processing apparatus, information processing method, information processing system, and recording medium
US7142689B2 (en) * 2000-01-31 2006-11-28 Canon Kabushiki Kaisha Image processing apparatus for determining specific images
EP1160657A3 (en) * 2000-06-02 2004-06-23 Matsushita Electric Industrial Co., Ltd. Printing control interface
JP4317334B2 (en) * 2000-09-08 2009-08-19 株式会社リコー Image forming apparatus and document management system
US7657064B1 (en) 2000-09-26 2010-02-02 Digimarc Corporation Methods of processing text found in images
US7375844B2 (en) * 2000-12-22 2008-05-20 Seiko Epson Corporation Method for generating a print data file, method for storing print data, a data storage medium therefor, and an apparatus for generating a data storage file
JP2002219828A (en) * 2001-01-29 2002-08-06 Jekku:Kk Print data integral processing system and recording medium
JP3503744B2 (en) * 2001-03-13 2004-03-08 セイコーエプソン株式会社 Print control program, medium storing print control program, print control device, and print control method
JP3757847B2 (en) 2001-10-24 2006-03-22 ブラザー工業株式会社 Spool file processing apparatus, program, and recording medium
JP3823846B2 (en) * 2002-02-27 2006-09-20 ブラザー工業株式会社 Spool file processing apparatus, program, and recording medium
JP2005071175A (en) * 2003-08-26 2005-03-17 Ricoh Co Ltd Print data generation method, program for executing its method on computer, client terminal, printer server, print data generation device, and image forming apparatus
JP4485293B2 (en) 2003-09-08 2010-06-16 株式会社リコー Information processing apparatus, client terminal, image forming apparatus, data processing method, and program for causing computer to execute the method
JP2006027145A (en) * 2004-07-16 2006-02-02 Ricoh Co Ltd Image forming system
JP2006123509A (en) * 2004-09-27 2006-05-18 Seiko Epson Corp Printer, and method and program for controlling print controller
CN1791070B (en) * 2004-12-17 2010-04-28 腾讯科技(深圳)有限公司 Method for transmitting document on network
JP4319689B2 (en) * 2005-10-03 2009-08-26 三菱電機株式会社 Digital watermark detection device
JP4555208B2 (en) * 2005-11-02 2010-09-29 株式会社沖データ Virtual printer driver that controls printing authority
JP4673200B2 (en) * 2005-12-01 2011-04-20 キヤノン株式会社 Print processing system and print processing method
US20080158585A1 (en) * 2006-12-27 2008-07-03 Seiko Epson Corporation Apparatus, method, program for supporting printing, system, method, and program for printing, and recording medium
JP4807254B2 (en) * 2006-12-28 2011-11-02 富士ゼロックス株式会社 Image forming apparatus, image forming system, and image forming program
JP2008165467A (en) * 2006-12-28 2008-07-17 C4 Technology Inc Printing system, printing method, program and computer-readable recording medium
WO2009045452A1 (en) * 2007-10-02 2009-04-09 Dnp Photo Imaging America Corp. System and method for multiple printer calibration using embedded image calibration data
SG155807A1 (en) * 2008-03-28 2009-10-29 Radiantrust Pte Ltd Method and system of embedding optical security features using virtual printer
JP5229112B2 (en) * 2009-05-28 2013-07-03 セイコーエプソン株式会社 Controller control method and controller
JP5807343B2 (en) * 2011-02-25 2015-11-10 セイコーエプソン株式会社 Function expansion program, function expansion device, and function expansion method using print data
JP2013175175A (en) * 2012-02-01 2013-09-05 Agreeya Mobility Inc Method and system for printing
JP6047892B2 (en) * 2012-03-07 2016-12-21 株式会社リコー Information processing apparatus, program, and recording medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2039652C (en) * 1990-05-30 1996-12-24 Frank Zdybel, Jr. Hardcopy lossless data storage and communications for electronic document processing systems
JPH0850598A (en) 1994-08-05 1996-02-20 Canon Inc Electronic document retrieval system
US5668636A (en) * 1995-12-20 1997-09-16 Xerox Corporation Embedded data controlled digital highlight color copier
US5970219A (en) * 1996-06-28 1999-10-19 Dainippon Screen Mfg. Co., Ltd. Method of outputting page data in applications programs-integrating environment and an apparatus for the same
US5901224A (en) * 1996-10-21 1999-05-04 Xerox Corporation Quasi-reprographics with variable embedded data with applications to copyright management, and distribution control
US6175714B1 (en) * 1999-09-02 2001-01-16 Xerox Corporation Document control system and method for digital copiers

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985600B2 (en) 1994-03-17 2006-01-10 Digimarc Corporation Printing media and methods employing digital watermarking
US20050013462A1 (en) * 1994-11-16 2005-01-20 Rhoads Geoffrey B. Paper products and physical objects as means to access and control a computer or to navigate over or act as a portal on a network
US7986806B2 (en) 1994-11-16 2011-07-26 Digimarc Corporation Paper products and physical objects as means to access and control a computer or to navigate over or act as a portal on a network
US9630443B2 (en) 1995-07-27 2017-04-25 Digimarc Corporation Printer driver separately applying watermark and information
US7024016B2 (en) 1996-05-16 2006-04-04 Digimarc Corporation Digital watermarking apparatus and methods
US6694043B2 (en) 1999-06-29 2004-02-17 Digimarc Corporation Method of monitoring print data for text associated with a hyperlink
US8103542B1 (en) 1999-06-29 2012-01-24 Digimarc Corporation Digitally marked objects and promotional methods
US6694042B2 (en) 1999-06-29 2004-02-17 Digimarc Corporation Methods for determining contents of media
US20010054150A1 (en) * 2000-03-18 2001-12-20 Levy Kenneth L. Watermark embedding functions in rendering description files
US7142691B2 (en) 2000-03-18 2006-11-28 Digimarc Corporation Watermark embedding functions in rendering description files
US20060031162A1 (en) * 2000-08-03 2006-02-09 Brundage Trent J Linking from paper invoices and statements to on-line resources
US6952485B1 (en) 2000-09-11 2005-10-04 Digimarc Corporation Watermark encoding and decoding in imaging devices and imaging device interfaces
US8750556B2 (en) 2000-12-21 2014-06-10 Digimarc Corporation Watermark systems and methods
US8103877B2 (en) 2000-12-21 2012-01-24 Digimarc Corporation Content identification and electronic tickets, coupons and credits
US8655011B2 (en) 2000-12-21 2014-02-18 Digimarc Corporation Content identification and electronic tickets, coupons and credits
US20080260201A1 (en) * 2001-04-24 2008-10-23 Rhoads Geoffrey B Digital Watermarking Apparatus and Methods
US7330564B2 (en) 2001-04-24 2008-02-12 Digimarc Corporation Digital watermarking apparatus and methods
US20030005369A1 (en) * 2001-06-27 2003-01-02 International Business Machines Corporation System and method for diagnosing printer problems and notarizing prints by evaluating embedded data
US6912674B2 (en) * 2001-06-27 2005-06-28 International Business Machines Corporation System and method for diagnosing printer problems and notarizing prints by evaluating embedded data
US7744001B2 (en) 2001-12-18 2010-06-29 L-1 Secure Credentialing, Inc. Multiple image security features for identification documents and methods of making same
US8025239B2 (en) 2001-12-18 2011-09-27 L-1 Secure Credentialing, Inc. Multiple image security features for identification documents and methods of making same
US6899475B2 (en) 2002-01-30 2005-05-31 Digimarc Corporation Watermarking a page description language file
US20050286948A1 (en) * 2002-01-30 2005-12-29 Walton Scott E Watermarking a page description language file
US20030142361A1 (en) * 2002-01-30 2003-07-31 Digimarc Corporation Watermarking a page description language file
US8228563B2 (en) 2002-01-30 2012-07-24 Digimarc Corporation Watermarking a page description language file
US7824029B2 (en) 2002-05-10 2010-11-02 L-1 Secure Credentialing, Inc. Identification card printer-assembler for over the counter card issuing
US20040143685A1 (en) * 2002-12-11 2004-07-22 Unilever Home & Personal Care Usa, Division Of Conopco, Inc. Process and apparatus for keeping records
EP1429262A3 (en) * 2002-12-11 2004-11-10 Unilever Plc Process and apparatus for keeping records
US8050451B2 (en) 2003-04-03 2011-11-01 Digimarc Corporation Electronic forms using indicia, sometimes hidden indicia
US20050216521A1 (en) * 2003-12-29 2005-09-29 Sivakumar Coramutla Apparatus and method for printing a file while bypassing the file's native application program
US9424501B2 (en) 2004-09-07 2016-08-23 Canon Kabushiki Kaisha Information processing device capable of outputting print data to print device, and control method thereof
US8760698B2 (en) 2004-09-07 2014-06-24 Canon Kabushiki Kaisha Information processing device capable of outputting print data to print data device, and control method thereof
US20060050308A1 (en) * 2004-09-07 2006-03-09 Canon Kabushiki Kaisha Information processing device capable of outputting print data to print device, and control method thereof
US8976386B2 (en) * 2010-05-10 2015-03-10 Ricoh Company, Ltd. Information processing apparatus configured to generate reconfigurable print data, print control program, storage medium, image forming apparatus and printing system
US20110273741A1 (en) * 2010-05-10 2011-11-10 Ricoh Company, Ltd. Information processing apparatus, print control program, storage medium, image forming apparatus and printing system
US11625551B2 (en) 2011-08-30 2023-04-11 Digimarc Corporation Methods and arrangements for identifying objects
WO2017027076A1 (en) * 2015-07-31 2017-02-16 Hewlett-Packard Development Company, L.P. Print format version with machine-readable link
US10387083B2 (en) 2015-07-31 2019-08-20 Hewlett-Packard Development Company, L.P. Print format version with overlaid machine-readable link
CN113383305A (en) * 2019-02-01 2021-09-10 兄弟工业株式会社 Support program, information processing apparatus, and printing method
EP3920019A4 (en) * 2019-02-01 2022-11-09 Brother Kogyo Kabushiki Kaisha Support program, information processing device, and printing method
US11546487B2 (en) 2019-02-01 2023-01-03 Brother Kogyo Kabushiki Kaisha Non-transitory computer-readable recording medium, information processing apparatus and printing method
US11843753B2 (en) 2019-02-01 2023-12-12 Brother Kogyo Kabushiki Kaisha Non-transitory computer-readable recording medium, information processing apparatus and printing method

Also Published As

Publication number Publication date
US6394673B2 (en) 2002-05-28
JPH11184657A (en) 1999-07-09
US6334721B1 (en) 2002-01-01

Similar Documents

Publication Publication Date Title
US6334721B1 (en) Printing system and data processing method thereof
US6522421B2 (en) Method and apparatus for automatically communicating returning status and information from a printer using electronic mail (email).
US8775313B2 (en) Printing control method, apparatus and storage medium therefor, and printing system
US7184169B2 (en) Interleaved document rendering
US7609400B2 (en) Program, recording medium, information processing apparatus, and printing data processing method
US7092117B2 (en) Print system
US20020131070A1 (en) Using e-mail to facilitate soft proofing and for print job status
JP2002063001A (en) Printing control interface and forming method thereof
US20050259289A1 (en) Print driver job fingerprinting
JP2967341B2 (en) Embedding code generation method and apparatus
US20130038889A1 (en) Information processing apparatus, information processing method, and computer-readable memory medium storing program therein
US7016057B1 (en) Electronic mail transmitting apparatus having a printer driver for transmitting electronic mail and method for transmitting electronic mail by a printer driver
JP3039396B2 (en) Print control apparatus and method
US20070263240A1 (en) Image-Forming Apparatus, Image-Forming Control Method, Image-Forming Control Program Storage Medium, Image-Forming Control Data Signal, And Image-Forming Control Apparatus
US7079277B2 (en) Image forming apparatus, image data processing apparatus, and storage medium
US7643160B2 (en) Spool file modifying device
US20040054983A1 (en) Information processing apparatus, information providing apparatus, information processing system, information processing method, program, and recording medium
US8237949B2 (en) System and method for combining at a single location selection of image finishing operations of multiple devices
US6594405B1 (en) Method and apparatus for preprinted forms completion
US6389456B1 (en) Device for forming on recording medium image corresponding to electronic mail
KR100346684B1 (en) Printing method and apparatus therefor
KR100677558B1 (en) Apparatus and method for fax transmission
JPH08279873A (en) Image input output device and setting method for its environmental condition
KR19990038544A (en) Data storage method and device
JP2000200224A (en) Mail generating device and its program recording medium

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20140528