The structure and the technical means adopted by the present invention to achieve the above and other objects can be best understood by referring to the following detailed description of the preferred embodiments and the accompanying drawings, wherein
The e-book allowing note and corrigendum sharing as well as differential update produced according to the process and system of the present invention is an XML file composed of vector graphic elements satisfying XML syntax standards and a script program. Each vector graphic element, which will be briefly referred to as “an/the element” hereinafter, in the file represents a part of the content of the e-book, such as one or more lines, one or more paragraphs, one or more chapters and/or sections, one or more illustrations, one or more pages, etc. Every one of the elements is assigned a unique identification (ID) and a group of attributes for identifying information about the source, provider, and last update of the element. All the elements in the original version of thee-book have a default Source attribute of NULL, so as to distinguish them from the note markups added by users. The script program is inserted into the e-book by way of embedding or linking, so that users may insert note markups into the e-book and execute differential update.
One of the advantages of the XML vector graphics is that the Document Object Model (DOM) of the XML would pass back an object reference and other events, including mouseClick, mouseMove, mouseDown, mouseUp, or mouseOver, as well as information about the coordinate of the position of a pointing device when a user uses the pointing device, such as a mouse, or a pen using with a tablet computer or a pen tablet, to act on any one of the elements. These events would trigger a corresponding function in the script program, so that new elements may be inserted into the e-book, attributes of existing elements may be changed, one or more existing elements may be deleted, etc. For example, when a user clicks the pointing device at any position in the e-book, DOM would pass back the event mouseDown and the coordinate of the position at where the pointing device is clicked. When the pointing device is being moved, DOM would constantly pass back the event mouseMove and new displacement coordinates. When the user releases the pointing device, DOM would pass back the event mouseUp. The functions in the script program correspondingly triggered by the events mouseDown, mouseMove, and mouseUp would add a new graphic element representing a path, record the tracking coordinates of the moving pointing device and add the same to the tracking information of the path element, and terminate the record of tracking coordinates, respectively. The new element so obtained would then show an effect of handwriting note in the e-book. For example, when the Stroke Color attribute of the path element is changed to red, a user is allowed to simulate writing a note with a red pen. Or, when the Stroke Width and the Opacity attribute of the path element are set to Thicker and Translucent, respectively, the user may use the path element to simulate the effect of using a fluorescent marker.
With these features, a user may dynamically add note markups in the e-book. That is, via the script program embedded in the e-book, the user may add to the e-book more than one vector graphic markup, which is referred to as the note markup vector graphic object, and may include the following different types:
The above-mentioned note markups and corrigenda added to the e-book by a user may be shared with other users through differential update. When the user adds one note markup vector graphic object, the script program would record the Source attribute of the object as a note markup, so as to distinguish the added object from the original elements. When the user decides to share some of the note markups with other users, simply uploads the note markup vector graphic objects to be shared to the server. Other users who want to adopt these shared note markup vector graphic objects need only to download these objects without the need of downloading the whole e-book file again. That is, the note markups added to the e-book by one user would not be overwritten by the downloaded updates. Since every note tag records the page number and the coordinate point of the note in the e-book, the note is shown as is when being shared with other users.
(1) A digital content file is received by a server and converted into vector graphic elements for storing in a digital content bank;
(2) Produce an XML vector graphic e-book based on predetermined production requirements and the vector graphic elements stored in the digital content bank, insert a script program, and upload the e-book to an e-book bank server;
(3) Link an electronic data processing apparatus at a user end to the e-book bank server, so as to download and open the e-book, which is then stored in the user's electronic data processing apparatus;
(4) Insert more than one note markup vector graphic object into the e-book via the electronic data processing apparatus at the user end, and specify whether the inserted note markup vector graphic objects are to be shared with other users or not. The note markup vector graphic objects being specified to be shared are transmitted to the e-book bank server via appropriate browsing software; and
(5) Automatically download the note markup vector graphic objects to be shared and insert the downloaded note markup vector graphic objects into the same locations in another user's e-book when the same e-book is opened via that user's electronic data processing apparatus that is in the state of linking to the e-book bank server.
Through the above-described steps, different digital contents, including electronic document files, pictures, animations, sounds, texts, etc., may be uploaded to the server by a content provider, and converted by appropriate software run on the server into XML vector graphic elements, which are then stored in a digital content bank. The digital content bank may be built in the server or be built in an external databank. An e-booked it or may, based on predetermined production requirements, read from the digital content bank the needed contents, which are then edited via appropriate e-book editing software to produce an e-book, and inserts a script program into the e-book. The produced e-book is then stored in an e-book bank. The e-book editing software may be run via the server or the e-book bank server. The e-book is stored in an e-book bank, which may be built in the e-book bank server or be built in an external databank. A user may initialize appropriate e-book reading software via his electronic data processing apparatus, and links to the e-book bank server via a communication network, so as to download, store, and read the e-book. The electronic data processing apparatus may be a personal computer, a notebook computer, a tablet computer, a PDA, or a server. And, the user may handle the above procedures by moving a pointing device, such as a mouse or a pen, which is connected to the electronic data processing apparatus.
The above-described process for producing e-book allowing note and corrigendum sharing as well as differential update according to the present invention is implemented via a system, which includes a server, an e-book bank server, and a plurality of electronic data processing apparatus. The electronic data processing apparatus are linked to the e-book bank server via a wired or a wireless communication network to communicate with the e-book bank server.
The server is used to receive a digital content file and converts the latter into vector graphic elements for storing in a digital content bank. The e-book bank server is able to provide appropriate e-book editing software, with which an e-book editor produces an XML vector graphic e-book based on predetermined production requirements and the vector graphic elements in the digital content bank, and inserts the script program. The produced e-book is then stored in the e-book bank.
The electronic data processing apparatus are used by different users for linking to the e-book bank server via network, so that the users may download and open the e-book for browsing, handling, and storing in the users' electronic data processing apparatus. A user may insert more than one note markup vector graphic object into the e-book and specifies whether the inserted objects are to be shared among other users or not. The note markup vector graphic objects being specified as to be shared are transmitted to the e-book bank server via appropriate browsing software. When another user is linked to the e-book bank server and open the same e-book, the note markup vector graphic objects to be shared are automatically downloaded and inserted into the same locations in that user's e-book.
The present invention has been described with a preferred embodiment thereof and it is understood that many changes and modifications in the described embodiment, such as combining or splitting the functions or steps included in the system or the process of the present invention, or combining the server and the e-book bank server into one server, can be carried out without departing from the scope and the spirit of the invention that is intended to be limited only by the appended claims.