Patents.com Logo
Choose Language:
 

Title:  Document processing method and apparatus
Patent ID: US7203898
Issue Date:  April 10, 2007
Abstract:

A document processing technique using a computer having an application program for creating application data and a layout program for performing layout processing of document data is provided. A document processing method according to the present invention includes a conversion step of converting application data created by the application program into document data processible by the layout program, in response to an instruction from the application program, and a control step of controlling to open the document data obtained in conversion processing, by the layout program in response to conversion processing in the conversion step.

 

 






Translations
Inventor(s): 
Miyazato;  Takuya  (Kanagawa,  JP) , Email and Contact Information
Kizaki;  Junichiro  (Kanagawa,  JP) , Email and Contact Information
Nishikawa;  Satoshi  (Kanagawa,  JP) , Email and Contact Information
Mori;  Yasuo  (Kanagawa,  JP) , Email and Contact Information
Sato;  Junko  (Kanagawa,  JP) Email and Contact Information
Assignee:  Canon Kabushiki Kaisha;  (Tokyo,  JP)
Agent:  Fitzpatrick, Cella, Harper & Scinto
Application No.:  10/739,332
Filing Date:  December 19, 2003
Primary Class:  715/500
Other Classes:  715/517 
Field of Search:  715/500,517
Intern'l Class:  G06F 15/00 (20060101) 
Primary Examiner:Huynh; Cong-Lac
US Patent Document(s):
  5517621    Fukui et al.    May 01, 1996
  5581752    Inoue et al.    December 01, 1996
  5960444    Jackson    September 01, 1999
  6182092    Francis et al.    January 01, 2001
  6480866    Mastie    November 01, 2002
  6848079    Ito    January 01, 2005
  7051047    Jung et al.    May 01, 2006
  7054891    Cole    May 01, 2006
  20010011283    Kato et al.    August 01, 2001
  20010051964    Warmus et al.    December 01, 2001
  20020060802    Hino    May 01, 2002
  20020069228    Mori et al.    June 01, 2002
  20020114009    Stevens et al.    August 01, 2002
  20020116418    Lachhwani et al.    August 01, 2002
  20020138519    Miller    September 01, 2002
  20030028553    Kondo    February 01, 2003
  20030053113    Nishikawa et al.    March 01, 2003
  20030055748    Bezrukov et al.    March 01, 2003
  20030056177    Nara et al.    March 01, 2003
  20030056179    Mori    March 01, 2003
  20030056180    Mori    March 01, 2003
  20030090717    Yoshida et al.    May 01, 2003
  20030120602    Jung et al.    June 01, 2003
  20030160977    Nishikawa et al.    August 01, 2003
  20030177119    Cole    September 01, 2003
  20030177247    Dunning et al.    September 01, 2003
  20030210898    Juen et al.    November 01, 2003
  20030233363    Cohen et al.    December 01, 2003
  20040003121    Tanimoto    January 01, 2004
  20040098414    Chan et al.    May 01, 2004
  20040210561    Shen    October 01, 2004
  20050283721    Warmus et al.    December 01, 2005
  20060150091    Suzuki et al.    July 01, 2006
  20060158706    Mori et al.    July 01, 2006
Foreign Reference(s):WO 01/59696  WO  August 01, 2001


Claim(s):

What is claimed is:

1. A document processing method using a computer which can execute an application program for creating application data, a document writer for acting as a device driver, anda layout program for performing layout processing of document data, comprising: a conversion step of converting application data created by the application program into a first document data file processible by the layout program by using the documentwriter, in response to a print instruction from the application program; an activation step of automatically activating the layout program in response to the conversion processing in said conversion step by using the document writer such that the layoutprogram processes the first document data file converted in said conversion step and displays document data of the processed first document data file on an operating screen; and a setting step of setting either of a first mode in which the layoutprogram newly opens the first document data file obtained in the conversion processing regardless of a second document data file which has already been opened by the layout program before the conversion processing in said conversion step, and a secondmode in which the layout program adds the document data of the first document data file obtained in the conversion processing to the second document data file, wherein the document data of the first document data file is displayed in accordance with amode set in said setting step.

2. The method according to claim 1, wherein, when the second mode is set in said setting step and the second document data file has already been opened by the layout program before the conversion processing in said conversion step, the documentdata of the first document data file obtained in the conversion processing is added to the second document data file by the layout program.

3. The method according to claim 2, further comprising a selection step of, when a plurality of document data have already been opened by the layout program before the conversion processing in said conversion step, selecting document data towhich the document data of the first document data file obtained in the conversion processing is to be added.

4. The method according to claim 2, further comprising a reduction step of, if the document data of the first document data file obtained in the conversion processing exceeds a size processible by the layout program, reducing the document datato the processible size.

5. A computer-executable program which causes a computer having an application program for creating application data, a document writer for acting as a device driver, and a layout program for performing layout processing of document data toexecute: a conversion step of converting application data created by the application program into a first document data file processible by the layout program by using the document writer, in response to a print instruction from the application program; an activation step of automatically activating the layout program in response to the conversion processing in said conversion step by using the document writer such that the layout program processes the first document data file converted in saidconversion step and displays document data of the processed first document file on an operating screen; and a setting step of setting either of a first mode in which the layout program newly opens the first document data file obtained in the conversionprocessing regardless of a second document data file which has already been opened by the layout program before the conversion processing in said conversion step, and a second mode in which the layout program adds the document data of the first documentdata file obtained in the conversion processing to the second document data file, wherein the document data of the first document data file is displayed in accordance with a mode set in said setting step.

6. A document processing apparatus having an application program for creating application data, a document writer for acting as a device driver, and a layout program for performing layout processing of document data, comprising: conversionmeans for converting application data created by the application program into a first document data file processible by the layout program by using the document writer, in response to a print instruction from the application program; activation meansfor automatically activating the layout program in response to the conversion processing by said conversion means by using the document writer such that the layout program processes the first document data file convened by said conversion means anddisplays document data of the processed first document data file on an operating screen; and setting means for setting either of a first mode in which the layout program newly opens the first document data file obtained in the conversion processingregardless of a second document data file which has already been opened by the layout program before the conversion processing by said conversion means, and a second mode in which the layout program adds the document data of the first document data fileobtained in the conversion processing to the second document data file. wherein the document data of the first document data file is displayed in accordance with a mode set by said setting means.

7. A document processing method using a computer which can execute an application program for creating application data, a document writer for acting as a device driver, and a layout program for performing layout processing of document data,comprising: a setting step of setting either of a first mode in which a first document data file is newly created regardless of a second document data file opened by the layout program and a second mode in which document data of the first document datafile is added to the second document data file opened by the layout program by using the document writer, before a conversion process; a conversion step of converting application data created by the application program into the document data of thefirst document data file processible by the layout program by using the document writer, in response to an instruction from the application program; an addition step of adding the converted document data to the second document data file opened by thelayout program in response to the conversion processing in said conversion step, in a case where the second mode is set in said setting step; and a creation step of newly creating the first document data file, which is different from the second documentfile, including the converted document data in response to the conversion processing in said conversion step, in a case where the first mode is set in said setting step.

8. The method according to claim 7, further comprising a selection step of, when a plurality of existing document data files have already been opened by the layout program, selecting a document data file to which the document data of the firstdocument data file converted in said conversion step is to be added.

9. A document processing apparatus having an application program for creating application data, a document writer for acting as a device driver, and a layout program for performing layout processing of document data, comprising: setting meansfor setting either of a first mode in which a first document data file is newly created regardless of a second document data file opened by the layout program and a second mode in which document data of the first document data file is added to the seconddocument data file opened by the layout program by using the document writer, before a conversion process; conversion means for converting application data created by the application program into the document data of the first document data fileprocessible by the layout program by using the document writer, in response to an instruction from the application program; addition means for adding the converted document data to the second document data file opened by the layout program in responseto the conversion processing by said conversion means, in a case where the second mode is set by said setting means; and creation means for newly creating the first document data file, which is different from the second document file, including theconverted document data in response to the conversion processing by said conversion means, in a case where the first mode is set by said setting means.

10. A computer-executable program which causes a computer having an application program for creating application data, a document writer for acting as a device driver, and a layout program for performing layout processing of document data to execute: a setting step of setting either of a first mode in which a first document data file is newly created regardless of a second document data file opened by the layout program and a second mode in which document data of the first document data file is added to the second document data file opened by the layout program by using the document writer, before a conversion process; a conversion step of converting application data created by the application program into the document data of the first document data file processible by the layout program by using the document writer, in response to an instruction from the application program; an addition step of adding the converted document data to the second document data file opened by the layout program in response to the conversion processing in said conversion step, in a case where the second mode is set in said setting step; and a creation step of newly creating the first document data file, which is different from the second document file, including the converted document data in response to the conversion processing in said conversion step, in a case where the first mode is set in said setting step.



Description:

FIELD OF THE INVENTION

The present invention relates to a document processing technique which provides a data conversion function in transferring document data to another program.

BACKGROUND OF THE INVENTION

Conventionally, to open application data created by a general word processing application (general application) by a layout application which performs layout processing for printing, a document data file is created by a data conversion program ofa dedicated printer driver format in accordance with a printing processing operation sequence from the general application. The document data file is inserted into a layout application (by, e.g., drag-and-drop operation) from a desktop window providedby the OS. If a document serving as an original data source is closed, drop operation is performed from the desktop window of the OS. In accordance with this operation, the data is converted into a document data file, and the file is inserted into thelayout application.

In any case, application data must be opened in the layout application through an operation in the desktop window of the OS, and cannot be directly opened in the application window. Especially, application data cannot be opened in the layoutapplication from the application window in which the application data is opened, thus resulting in two operation steps.

SUMMARY OF THE INVENTION

It is an object of the present invention to allow inserting application data created by a general application into a layout application by simpler operation.

According to one aspect of the present invention, preferably, a document processing method using a computer which stores an application program for creating application data and a layout program for performing layout processing of document data,comprises: a conversion step of converting application data created by the application program into document data processible by the layout program, in response to an instruction from the application program; and a control step of controlling to open thedocument data obtained in conversion processing, by the layout program in response to the conversion processing in the conversion step.

Other features and advantages of the present invention will be apparent from the following descriptions taken in conjunction with the accompanying drawings, in which like reference characters designate the same or similar parts throughout thefigures thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the descriptions, serve to explain the principle of the invention.

FIG. 1 is a block diagram showing the software configuration of a document processing system according to an embodiment;

FIG. 2 is a block diagram showing an example of a hardware configuration which implements the document processing system according to the embodiment;

FIG. 3 is a flow chart showing an example of a sequence of opening a book file;

FIG. 4 is a view showing an example of a user interface window when a new book file is opened;

FIG. 5 is a view showing an example of a user interface window when an existing book file is opened;

FIG. 6 is a flow chart showing a conventional electronic document import sequence;

FIG. 7 is a flow chart showing an electronic document import sequence according to the embodiment;

FIG. 8 is a flow chart showing another electronic document import sequence according to the embodiment;

FIG. 9 is a view showing a display example of a UI window for prompting the user to select a book file; and

FIG. 10 is a view for explaining a page reduction function according to the embodiment.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Preferred embodiments of the present invention will now be described in detail in accordance with the accompanying drawings.

The outline of a document processing system according to an embodiment of the present invention will be described. This document processing system converts a data file created by a general application into an electronic document file by anelectronic document writer. A layout application provides a function of editing the electronic document file. Details of the system will be explained below.

FIG. 1 is a block diagram showing the software configuration of the document processing system according to the embodiment of the present invention.

The document processing system is implemented by a digital computer 100 as an embodiment suited to an information processing apparatus according to the embodiment. A general application 101 is an application program which provides functions suchas wordprocessing, spreadsheet, photo-retouch, draw, paint, presentation, and text editing. The general application 101 has a printing function. Such application programs utilize a predetermined interface provided by the OS (Operating System) inprinting application data such as created document data or image data. To print created data, the application 101 transmits an output command (GDI function) which is determined in advance for the output module of the OS providing the interface and hasan OS-dependent format. The output module which has received the output command converts the command into a format processible by an output device such as a printer, and outputs the converted command (DDI function). Since the format processible by theoutput device changes depending on the type of device, the manufacturer, and the model, a device driver is provided for each device. The OS converts a command by using the device driver to generate printing data, and combines printing data by JL (JobLanguage) to generate a print job. When the OS is Microsoft Windows.RTM., the output module is a GDI (Graphical Device Interface) module.

An electronic document writer 102 is an improvement of the above-mentioned device drivers, and is a software module provided to implement the document processing system. The electronic document writer 102 does not target a specific outputdevice, and generates an electronic document file 103 by converting an output command into a format processible by a layout application 104 or printer driver 106 (to be described later). The format (to be referred to as an "electronic document format"hereinafter) converted by the electronic document writer 102 is not particularly limited as long as each document page can be expressed by a detailed format. Of substantial standard formats, for example, the PDF format by Adobe Systems and the SGMLformat can be adopted as electronic document formats.

When the application 101 utilizes the electronic document writer 102, the electronic document writer 102 is designated as a device driver used for output, and then caused to execute printing. An electronic document file created by the electronicdocument writer 102 does not have a complete electronic document file format. For this reason, the electronic document writer 102 is designated as a device driver by the layout application 104, and executes conversion of application data into anelectronic document file under the management of the layout application 104.

The layout application 104 completes a new incomplete electronic document file generated by the electronic document writer 102 as an electronic document file having the following format. In case of necessity to definitely discriminate thesefiles, a file created by the electronic document writer 102 will be called an "electronic document file", and an electronic document file given a structure by the layout application 104 will be called a "book file". If these files need not beparticularly discriminated, a document file generated by an application, an electronic document file, and a book file are called document files (or document data).

As described above, the electronic document writer 102 is designated as a device driver, and the general application 101 prints the data. Application data is converted into an electronic document format in pages (to be referred to as "logicalpages" or "document pages" hereinafter) defined by the application 101. The converted data is stored as the electronic document file 103 in a storage medium such as a hard disk. The hard disk may be the local drive of the computer which implements thedocument processing system according to the embodiment, or when the computer is connected to a network, may be a drive provided on the network.

The layout application 104 provides the user with a function of loading and editing the "electronic document file" or "book file" 103. The layout application 104 provides no function of editing the contents of each page, but a function ofediting a chapter or book structure (to be described later) made up of pages as a minimum unit.

To print the book file 103 edited by the layout application 104, the layout application 104 activates an electronic document despooler 105. The electronic document despooler 105 reads out a designated book file from the hard disk. To print eachpage in a format described in the book file, the electronic document despooler 105 generates an output command complying with the output module of the OS described above, and outputs the command to the output module (not shown). At this time, theprinter driver 106 of a printer 107 used as an output device is designated as a device driver. The output module converts the output command received using the designated printer driver 106 of the printer 107 into a device command interpretable by theprinter 107. The device command is transmitted to the printer 107, which prints an image corresponding to the command.

FIG. 2 is a block diagram showing the hardware configuration of the digital computer 100 shown in FIG. 1.

In FIG. 2, a CPU 201 executes a program such as an OS, the general application 101, or the layout application 104 which is stored in the program ROM of a ROM 203 or loaded from a hard disk 211 to a RAM 202, and realizes the software configurationin FIG. 1 or flow chart sequence (to be described later). The RAM 202 functions as the main memory or work area of the CPU 201. A keyboard controller (KBC) 205 controls a key input from a keyboard 209 or an input from a pointing device (not shown) suchas a mouse. A CRT controller (CRTC) 206 controls the display on a display 210. The display 210 is not limited to a CRT, and may be a liquid crystal display or plasma display. A disk controller (DKC) 207 controls access to the hard disk (HD) 211 orflexible disk (FD) which stores a boot program, various applications, font data, user files, editing files (to be described later), and the like. A PRTC 208 controls signal exchange with the connected printer 107. An NC 212 is connected to a network,and executes communication control processing with another device connected to the network.

A sequence of creating a book file by the layout application 104 and electronic document writer 102 will be explained. Creation of a book file is realized as part of book file editing operation by the layout application 104.

FIG. 3 is a flow chart for explaining a sequence of opening a book file by the layout application 104 according to the embodiment.

In step S701, whether a book file to be opened is one to be newly created or an existing one is determined. If YES in step S701, the processing advances to step S702 to newly create a book file containing no chapter. In the example shown inFIG. 3, the newly created book file is a book node which has only the book node 301 without any link to a chapter node. As the book attribute, a set of attributes prepared in advance for creation of a new book file is applied. The processing advancesto step S704 to display a UI (User Interface) window for editing the new book file.

FIG. 4 is a view showing an example of the UI window when a book file is newly created. In this case, a UI window 1100 does not display any information because the book file does not have any substantial content.

If NO in step S701, the processing advances to step S703 to open a designated book file and display a UI (User Interface) window in accordance with the structure, attribute, and contents of the book file.

FIG. 5 is a view showing an example of the displayed UI window.

The UI window 1100 has a tree portion 1101 representing a book structure, and a preview portion 1102 displaying a state to be printed. The tree portion 1101 displays (displays a tree) chapters contained in the book and pages contained in eachchapter by a tree structure. The tree portion 1101 displays page numbers, and the page numbers represent document page numbers. The preview portion 1102 displays reduced printing page contents. The display order reflects the book structure.

Application data converted into an electronic document file by the electronic document writer 102 can be added as a new chapter to the open book file. This function is called an "electronic document import function". Conventionally, thisfunction is activated by drag-and-drop operation of application data to the window in a desktop window provided by the OS.

FIG. 6 is a flow chart showing a conventional electronic document import sequence. A flow on the left side of a bold line a represents processing of the general application 101; a flow between bold lines a and b, processing of the OS; and a flowon the right side of the bold line b, processing of the layout application 104.

The general application 101 is activated (step S601). The general application creates application data B (step S602), and saves it (step S603). During this operation, the layout application 104 is activated (step S604), and-opens and displays,e.g., an existing book file A (step S605). An example of the display form of the UI window is shown in FIG. 5.

In this state, the application data B saved in step S603 is dropped to the UI window which displays the book file A (step S606). The layout application 104 then converts the application data B into a book file B of the electronic document formatusing the electronic document writer 102 (step S607). The layout application 104 adds the converted book file B to the currently displayed book file A, and displays the resultant book file (step S608). The layout application 104 combines the book filesA and B into a book file AB (step S609).

Conventional electronic document import processing has roughly been described above. To add application data created by the general application 101 to a book file in the layout application 104, the application data must be added to the UI windowor icon of the layout application 104 by drag-and-drop operation in the desktop window provided by the OS. The application data cannot be directly added from the window of the general application 101, as described above.

FIG. 7 is a flow chart showing an electronic document import sequence according to the embodiment in which application data is displayed as a new file in the layout application 104. A flow on the left side of a central bold line a representsprocessing of the general application 101; and a flow on the right side, processing of the layout application 104.

The general application 101 is activated (step S701), and creates application data A (step S702). At the end of creation, a printing sequence starts on the basis of an instruction by the user via a keyboard or mouse. In this embodiment, theelectronic document writer 102 can be designated as a printing destination (output destination) instead of a general printer driver. If the electronic document writer 102 is designated as a printing destination, the electronic document writer 102 isactivated and converts the application data A into a book file A of the electronic document format (step S704). That is, the user can convert the application data A into the book file A by the same operation as that of printing the application data A.

Before execution of step S704, either "new creation" of newly creating a converted book file or "additional loading" of adding the converted book file to an existing book file can be separately selected in the setting window of the electronicdocument writer 102. In this case, "new creation" is selected (step S703). If the user knows in advance that "new creation" has been set, the setting window need not be particularly opened.

After that, the layout application 104 is activated (step S705), opens the book file A converted in step S704, and displays it in the UI window (step S706). In step S705, the layout application 104 may be activated automatically in response toexecution of step S704 or activated on the basis of a user instruction.

FIG. 8 is a flow chart showing an electronic document import sequence according to the embodiment in which application data is added to a book file that has already been opened by the layout application 104. Similar to FIG. 7, a flow on the leftside of a central bold line a represents processing of the general application 101; and a flow on the right side, processing of the layout application 104.

The general application 101 is activated (step S801), and creates application data B (step S802). At the end of creation, a printing sequence starts on the basis of an instruction by the user via a keyboard or mouse. In this embodiment, theelectronic document writer 102 can be designated as a printing destination instead of a general printer driver. If the electronic document writer 102 is designated as a printing destination, the electronic document writer 102 is activated and convertsthe application data B into a book file B of the electronic document format (step S804). That is, similar to FIG. 7, the user can convert the application data B into the book file B by the same operation as that of printing the application data B.

Before execution of step S804, not "new creation" of designating a new creation mode, but "additional loading" of designating a document addition mode is set in the output setting window of the electronic document writer 102 (this window is theproperty setting window of the electronic document writer 102, and the property window of a general printer driver can be opened by the same operation). If the user knows in advance that "additional loading" has been set, the setting window need not beparticularly opened. In step S804, the electronic document writer 102 determines which of the new creation mode and document addition mode has been selected as an output setting.

During this operation, the layout application 104 is activated (step S805), and opens and displays, e.g., an existing book file A (step S806). An example of the display form of the UI window is shown in FIG. 5.

If the document addition mode has been selected in step S804, the layout application 104 acquires the book file B converted in step S804 from the electronic document writer 102, adds the book file B to the book file A, and displays the resultantbook file (step S807). The layout application 104 combines the book files A and B into a book file AB (step S808). If the new creation mode has been designated in step S804, the electronic document writer 102 transfers the converted/generated book fileB to the layout application 104, and notifies the layout application 104 of the new creation mode. The layout application 104 which has been notified of the new creation mode recognizes the book file B as a new book, and displays the book file Btransferred from the electronic document writer 102 as a new book in a window different from that of the existing book file A.

In this way, application data is automatically added to a book file opened by the layout application 104 through a printing operation in the general application 101. This eliminates a cumbersome operation of dropping application data in thedesktop window of the OS, greatly simplifying the file insertion operation in the layout application 104.

If the layout application 104 has already been activated at the end of executing step S804 and a plurality of book files have been opened, a UI window which prompts the user to select a book file to be inserted is preferably displayed. FIG. 9 isa view showing a display example of the UI window for prompting the user to select a book file. As shown in FIG. 9, book files which have already been opened are listed. However, a book file concerning an operation of, e.g., opening another dialog inthe layout application 104 cannot be additionally loaded and is not listed. If the user selects one of listed book files, the book file B is added to the book file.

If the layout application 104 has not been activated yet upon execution of step S804 while the electronic document writer 102 is set to "additional loading", the layout application 104 displays a new window shown in FIG. 4 upon activation, andthen "additionally loads" the book file B transferred in step S804. As a result, the layout application 104 performs the same processing as that of FIG. 7 upon activating the layout application 104 in "new creation".

To add a book file containing a page exceeding a size processible by the layout application 104 in adding a book file, a function of reducing the page to the processible size is preferably adopted. FIG. 10 is a view for explaining the pagereduction function according to the embodiment. As shown in FIG. 10, when the maximum size processible by the layout application 104 is A3, only a page of a book file to be added with a size exceeding A3 is reduced.

As described above, according to the embodiment, the window of the general application allows direct application data insertion operation to the layout application without the mediacy of the desktop window of the OS. The number of work steps bythe user decreases, increasing the productivity.

<Other Embodiments>

Note that the present invention can be applied to an apparatus comprising a single device or to a system constituted by a plurality of devices.

Furthermore, the invention can be implemented by supplying a software program, which implements the functions of the foregoing embodiments, directly or indirectly to a system or apparatus, reading the supplied program code with a computer of thesystem or apparatus, and then executing the program code. In this case, so long as the system or apparatus has the functions of the program, the mode of implementation need not rely upon a program.

Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. In other words, the claims of the present invention also cover a computerprogram for the purpose of implementing the functions of the present invention.

In this case, so long as the system or apparatus has the functions of the program, the program may be executed in any form, such as an object code, a program executed by an interpreter, or scrip data supplied to an operating system.

Examples of storage media that can be used for supplying the program are a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a CD-RW, a magnetic tape, a non-volatile type memory card, a ROM, and a DVD (a DVD-ROMand a DVD-R).

As for the method of supplying the program, a client computer can be connected to a website on the Internet using a browser of the client computer, and the computer program of the present invention or an automatically-installable compressed fileof the program can be downloaded to a recording medium such as a hard disk. Further, the program of the present invention can be supplied by dividing the program code constituting the program into a plurality of files and downloading the files fromdifferent websites. In other words, a WWW (World Wide Web) server that downloads, to multiple users, the program files that implement the functions of the present invention by computer is also covered by the claims of the present invention.

It is also possible to encrypt and store the program of the present invention on a storage medium such as a CD-ROM, distribute the storage medium to users, allow users who meet certain requirements to download decryption key information from awebsite via the Internet, and allow these users to decrypt the encrypted program by using the key information, whereby the program is installed in the user computer.

Besides the cases where the aforementioned functions according to the embodiments are implemented by executing the read program by computer, an operating system or the like running on the computer may perform all or a part of the actualprocessing so that the functions of the foregoing embodiments can be implemented by this processing.

Furthermore, after the program read from the storage medium is written to a function expansion board inserted into the computer or to a memory provided in a function expansion unit connected to the computer, a CPU or the like mounted on thefunction expansion board or function expansion unit performs all or a part of the actual processing so that the functions of the foregoing embodiments can be implemented by this processing.

As many apparently widely different embodiments of the present invention can be made without departing from the spirit and scope thereof, it is to be understood that the invention is not limited to the specific embodiments thereof except asdefined in the appended claims.

* * * * *

US Patent:  7203898