Apparatus and method for document format conversion

An apparatus and method for document format conversion. The apparatus includes a document parsing unit for parsing a fixed layout document to acquire path primitives of the document; a path grouping unit for dividing the path primitives into groups to generate path groups; a font file generating unit for acquiring path groups that are used to represent characters and generating font files corresponding to the path groups, wherein if there are two or more path groups representing the same character, only one font file is generated and associated with the multiple path groups representing the same character; a document generating unit for generating a converted document using all font files that have been generated. With the above, the problem of data redundancy in fixed layout documents is solved; further, the incorrect rending in reflowing processes may be solved to achieve better display effects.

FIELD OF THE INVENTION

The present invention relates to the field of electronic document format conversion techniques, and more particular, to an apparatus and a method for document format conversion.

DESCRIPTION OF THE RELATED ART

In fixed layout documents, many paths (including points and lines) are used to represent characters, each character corresponding to a set of data. Thereby, a problem may arise, i.e., a large amount of paths are required to represent a large amount of duplicated characters, causing data redundancy significantly. Further, it may be unable to render these characters appropriately in a reflowing process.

Thus, a new document format conversion technique is desirable, which is capable of solving the problem of data redundancy in fixed layout documents to cause documents with smaller volumes, and is capable of solving the problem of incorrect rendering in reflowing processes to achieve better display effects on various terminals.

SUMMARY

In view of the above problems, a new document format conversion technique is provided, which is capable of solving the problem of data redundancy in fixed layout documents to cause documents with smaller volumes, and is capable of solving the problem of incorrect rendering in reflowing processes to achieve better display effects on various terminals.

In view of this, an apparatus for document format conversion is provided in the present invention, comprising: a document parsing unit for parsing a fixed layout document to acquire path primitives of the fixed layout document; a path grouping unit for dividing the path primitives into groups to generate path groups; a font file generating unit for acquiring path groups representing characters and generating font files corresponding to the path groups representing the characters, wherein if there are two or more path groups representing the same character, only one font file is generated, and is associated with the two or more path groups representing the same character; a document generating unit, for generating a converted document using all font files that have been generated. In this technical solution, through dividing path primitives of the fixed layout document into groups, a path group corresponding to each character is obtained (also, there may be path groups that are not used to representing characters); meanwhile, due to the generation of font files and only one font file is generated for those path groups that are used to represent the same character, for those documents having many duplicated characters contained therein, their volumes may be reduced greatly, which is beneficial to store more documents, particularly in the case of mobile devices.

A method for document format conversion is further provided, comprising: parsing a fixed layout document to acquire path primitives of the fixed layout document; dividing the path primitives into groups to generate path groups; acquiring path groups representing characters and generating font files corresponding to the path groups representing the characters, wherein if there are two or more path groups representing the same character, only one font file is generated, and is associated with the two or more path groups representing the same character; generating a converted document using all font files that have been generated. In this technical solution, through dividing path primitives of the fixed layout document into groups, a path group corresponding to each character is obtained (also, there may be path groups that are not used to representing characters); meanwhile, due to the generation of font files and only one font file is generated for those path groups that are used to represent the same character, for those documents having many duplicated characters contained therein, their volumes may be reduced greatly, which is beneficial to store more documents, particularly in the case of mobile devices.

With the above technical solutions, the problem of data redundancy in fixed layout documents may be solved, causing documents with smaller volumes; further, the problem of incorrect rending in reflowing processes may be solved to achieve better display effects on various terminals.

DESCRIPTION OF THE EMBODIMENTS

For a more distinct understanding of the above objects, features and advantageous of this invention, it will be described in a further detail with reference to drawings and particular embodiments below. It should be noticed that, in the case of no conflicts, embodiments and features of embodiments of this invention may be combined with each other.

Many details will be set forth in the following description to achieve a throughout understanding of this invention, however, this invention may be implemented in other ways different from that disclosed herein, and therefore is not limited to the particular embodiments disclosed below.

FIG. 1shows a block diagram of an apparatus for document format conversion according to an embodiment of this invention. As shown inFIG. 1A, the apparatus for document format conversion comprises a document parsing unit102for parsing a fixed layout document to acquire path primitives of the fixed layout document; a path grouping unit104for dividing the path primitives into groups to generate path groups; a font file generating unit106for acquiring path groups representing characters and generating font files corresponding to the path groups representing the characters, wherein if there are two or more path groups representing the same character, only one font file is generated, and is associated with the two or more path groups representing the same character; a document generating unit108for generating a converted document using all font files that have been generated.

FIG. 1Bshows a block diagram of an apparatus for document format conversion according to an embodiment of this invention.

As shown inFIG. 1B, the apparatus100for document format conversion according to the embodiment of the present invention comprises: a document parsing unit102for parsing a fixed layout document to acquire path primitives of the fixed layout document; a path grouping unit104for dividing the path primitives into groups to generate path groups (including path groups to be obtained by the font file generating unit106for representing characters, and other path groups that are not used to represent characters); a font file generating unit106for acquiring path groups representing characters and generating font files corresponding to the path groups representing the characters, wherein if there are two or more path groups representing the same character, only one font file is generated, and is associated with the two or more path groups representing the same character; a document generating unit108for generating a converted document using all font files that have been generated. In this technical solution, through dividing path primitives of the fixed layout document into groups, a path group corresponding to each character is obtained (also, there may be path groups that are not used to representing characters); meanwhile, due to the generation of font files and only one font file is generated for those path groups that are used to represent the same character, for those documents having many duplicated characters contained therein, their volumes may be reduced greatly, which is beneficial to store more documents, particularly in the case of mobile devices.

Specifically, in a fixed layout document for example, each character is represented by individual paths, so that, even for duplicated characters occurred repeatedly, they must be represented by separate paths, causing significant redundancy in a large amount of paths, and resulting to a large document volume accordingly. However, through generating font files, duplicated characters may be represented by only one font file, greatly reducing original path redundancy, which is thus beneficial to achieve reduced document volumes and solve the problem of document data redundancy.

In the above technical solution, preferably, the path grouping unit104comprises: an enclosing rectangle acquisition subunit1042for acquiring a minimum closing rectangle of each path primitive; a group processing subunit1044for detecting position relationships between the minimum enclosing rectangles of the various path primitives; in the case of intersected minimum enclosing rectangles of two path primitives or in the case of a distance between minimum enclosing rectangles of two path primitives that is less than a predetermined character spacing, dividing the two path primitives into the same path group. In other words, if a minimum enclosing rectangle corresponding to a path primitive intersects with a minimum enclosing rectangle corresponding to another path primitive, or if the distance between two path primitives is less than a predetermined character spacing, the path primitive and the other path primitive are divided into the same path group. In this solution, for each path primitive, its minimum enclosing rectangle is considered as an area corresponding to the path primitive, and through an interaction calculation or through a distance calculation performed on rectangular areas, it may be determined whether a path primitive will be divided into the same path group with other path primitives. Actually, each character corresponds to a path group (also, there may be other path groups that are not used to represent characters), and the division of each character of a fixed layout document may be achieved through the grouping process described above.

In the above solution, preferably, further comprises: a representation determination unit110for recognizing each path group through an Optical Character Recognition (OCR) technique. If a character corresponding to a path group is recognized, it is determined that the corresponding path group is used to represent the character, for the processing of the font file generation unit. In this solution, if a path group is used to represent a character, it may be recognized through an OCR technique, so that whether a path group is used to represent a character may be determined.

In the above technical solution, preferably, further comprises: a Unicode recognition unit112for recognizing a Unicode value corresponding to a path group that is used to represent a character; a character representation unit114for representing the character to be described with the recognized Unicode value and a corresponding font file. In this technical solution, a font file comprises path data for describing a character to facilitate proper document content reflowing on different devices and achieve better display effects. Through setting Unicode values, when a character of a document is selected by a user, the system may select a corresponding Unicode value to achieve character copy and the like.

In the above technical solution, preferably, the font file generation unit106generates the font file using the Unicode value recognized by the Unicode recognition unit112and a corresponding path group. In this technical solution, the font file is generated from the Unicode value and the path group, so as to guarantee the appropriate representation of the corresponding character.

In the above technical solution, preferably, the font file generation unit106comprises: a first table generation subunit1062for generating a first table using Unicode values, in which mappings between the Unicode values and font indexes are stored; a second table generation subunit1064for generating a second table using path primitives contained in the path groups, in which the font indexes and font data corresponding to the font indexes are stored; a table processing subunit1066for generating the font file using the first table and the second table. In this technical solution, the first table is a cmap table generated using Unicode values, and the second table is a glyf table that is generated using path groups.

In the above technical solution, preferably, further comprises: a record state determination unit116for determining whether a Unicode value recognized by the Unicode recognition unit112has been recorded; a data acquisition unit118for, if the Unicode value has been recorded, determining that there is a path group representing the same character and acquiring the recorded Unicode value and its corresponding font file that has been generated, for representing the character to be described by the character representation unit114; and if the Unicode value has not been recorded, generating a font file for representing the character to be described by the character representation unit114. In this technical solution, through comparing the recognized Unicode value, it is determined whether a character that is presently processed has been handled, that is, whether there is the same character existed; if so, a font file that has been generated previously and other information may be directly used to avoid data redundancy; otherwise, a font file is generated. From the above comparison, it may be guaranteed that only one font file is generated from each character, so that data redundancy may be avoided so as so as to reduce the volume of the document.

In the above technical solution, preferable, further comprises a file storage unit120for centrally storing the font files, so that the character representation unit114may represent a corresponding character using the name of a font file and a Unicode value corresponding to the Unicode file; and a coordinate determination unit122for, if an acquired Unicode value of a specified path group has been recorded previously, further acquiring coordinates of the specified path group, and determining whether the coordinates of the specified path group are identical to those of the recorded path group; wherein if identical, a determination of the same path group is made and no further process is required; otherwise, a new name is generated for the character representation unit114to represent a corresponding character using the recorded Unicode value and the new name and for the font file generating unit106to generate a font file named with the new name. In this technical solution, through coordinate determination, for a character represented by a path group that is presently processed, it is determined whether there is any other path group representing the same character, so as to guarantee that only one font file and other information is generated for the same character so as to reduce the volume of the document as much as possible and avoid redundancy.

FIG. 1Cis a schematic diagram showing relationships between various units of the apparatus for document format conversion shown inFIG. 1B.

As shown inFIG. 1C, various units of the apparatus100for document format conversion have the following relationships therebetween.

The document parsing unit102is connected to the path grouping unit104. Particularly, the path grouping unit104divides path primitives into groups to generate corresponding path groups according to path primitives obtained through the parsing of the document parsing unit102.

Particularly, the path grouping unit104comprises an enclosing rectangle acquisition subunit1042and a group processing subunit1044. Wherein the enclosing rectangle acquisition subunit1042is connected to the document parsing unit102and acquire a minimum enclosing rectangle for each path primitive based on the path primitives obtained through the parsing of the document parsing unit102; the group processing subunit1044is connected to the enclosing rectangle acquisition subunit1042to detect position relationships between the minimum enclosing rectangles of the various path primitives; and divide the path primitives into groups according to the relationships between the minimum enclosing rectangles.

The font file generating unit106is connected to the path grouping unit104and the document generating unit108respectively. Particularly, based on path groups that are used to represent characters among the path groups generated by the path grouping unit104, the font file generating unit106generates font files, and the document generating unit108generates a converted document using the font files.

The representation determination unit110is connected to the font file generating unit106, and determines whether a path group is used to represent a character through recognizing the path group, so that the font file generating unit106may generate font files from path groups that are used to represent characters.

The Unicode recognition unit112is connected to the representation determination unit110and recognizes a corresponding Unicode value for each path group representing a character as determined by the representation determination unit110.

The Unicode recognition unit112is further connected to the font file generating unit106to enable the font file generating unit106to generate font files using the Unicode values recognized by the Unicode recognition unit112and corresponding path groups generated by the path grouping unit104.

Particularly, the font file generating unit106comprises a first table generation subunit1062, a second table generation subunit1064and a table processing subunit1066. Wherein, the first table generation subunit1062is connected to the Unicode recognition unit112and generates a first table using the Unicode values recognized by the Unicode recognition unit112; the second table generation subunit1064is connected to the path grouping unit104and generates a second table using path primitives contained in the path groups; the table processing subunit1066is connected to the first table generation subunit1062and the second table generation subunit1064respectively to generate font files using the first table and the second table.

The character representation unit114is connected to the Unicode recognition unit112and the font file generating unit106to represent characters to be represented using the Unicode values recognized by the Unicode recognition unit112and the corresponding font files generated by the font file generating unit106.

The record state determination unit116is connected to the Unicode recognition unit112and the data acquisition unit118respectively. Particularly, the record state determination unit116determines whether a Unicode value recognized by the Unicode recognition unit112has been recorded previously, and if so, the data acquisition unit118determines that there is another path group representing the same character and acquire the recorded Unicode value and a font file that has been generated correspondingly for the character representation unit114to represent the character to be described (the data acquisition unit118is further connected to the character representation unit114).

The file storage unit120is connected to the font file generating unit106and the character representation unit114respectively. Particularly, the file storage unit120centrally stores font files generated by the font file generating unit106, so that the character representation unit114may represent corresponding characters using names of the font files and Unicode values corresponding to the font files.

The coordinate determination unit122is connected to the record state determination unit116and the character representation unit114respectively. Particularly, if the record state determination unit116determines that an acquired Unicode value of a specified path group has been recorded, the coordinate determination unit122further acquires coordinates of the specified path group, and determines whether the coordinates of the specified path group are identical to those of the recorded path group; if not identical, a new name is generated, so that the character representation unit114may represent a corresponding character using the recorded Unicode value and the new name, and the font file generating unit106generates a font file named by the new name.

FIG. 2shows a flowchart of a method for document format conversion according to an embodiment of this invention.

As shown inFIG. 2, the method for document format conversion according to the embodiment of this invention comprises: at step202, parsing a fixed layout document to acquire path primitives of the fixed layout document; at step204, dividing the path primitives into groups to generate various path groups (including path groups representing characters that are acquired at step206and other path groups that are not used to represent characters); at step206, acquiring path groups representing characters and generating their corresponding font files, wherein if there are two or more path groups representing the same character, only one font file is generated, and is associated with the two or more path groups representing the same character; at step208, generating a converted document using all font files that have been generated. In this technical solution, through dividing path primitives of the fixed layout document into groups, a path group corresponding to each character is obtained (also, there may be path groups that are not used to representing characters); meanwhile, due to the generation of font files and only one font file is generated for those path groups that are used to represent the same character, for those documents having many duplicated characters contained therein, their volumes may be reduced greatly, which is beneficial to store more documents, particularly in the case of mobile devices.

Particularly, in a fixed layout document, for example, each character is represented by individual paths, so that, even for duplicated characters occurred repeatedly, they must be represented by separate paths, causing significant redundancy in a large amount of paths, and resulting to a large document volume accordingly. However, through generating font files, duplicated characters may be represented by only one font file, greatly reducing original path redundancy, which is thus beneficial to achieve reduced document volumes and solve the problem of document data redundancy.

In the above technical solution, preferably, the step204comprises: acquiring a minimum enclosing rectangle of each path primitive; detecting position relationships between the minimum enclosing rectangles of the various path primitives, wherein if two path primitives have their minimum enclosing rectangles intersected with each other or if a distance between the minimum enclosing rectangles of the two path primitives is less than a predetermined character spacing, the two path primitives are divided into the same path group. In other words, if a minimum enclosing rectangle corresponding to a path primitive intersects with a minimum enclosing rectangle corresponding to another path primitive, or if the distance between two path primitives is less than a predetermined character spacing, the two path primitives are divided into the same path group. In this solution, for each path primitive, its minimum enclosing rectangle is considered as an area corresponding to the path primitive, and through an interaction calculation or through a distance calculation performed on rectangular areas, it may be determined whether a path primitive will be divided into the same path group with other path primitives. Actually, each character corresponds to a path group (also, there may be other path groups that are not used to represent characters), and the division of each character of a fixed layout document may be achieved through the grouping process described above.

In the above technical solution, preferably, at step206, the step of obtaining path groups representing characters comprises: recognizing each path group through an Optical Character Recognition (OCR) technique; if a character corresponding to a path group is recognized, it is determined that the corresponding path group is used to represent the character. In this solution, if a path group is used to represent a character, it may be recognized through an OCR technique, so that whether a path group is used to represent a character may be determined as described above.

In the above technical solution, preferably, after step206, further comprises: recognizing a Unicode value corresponding to a path group that is used to represent a character; representing the character to be described with the recognized Unicode value and a corresponding font file. In this technical solution, a font file comprises path data for describing a character to facilitate proper document content reflowing on different devices and achieve better display effects. Through setting Unicode values, when a character of a document is selected by a user, the system may select a corresponding Unicode value to achieve character copy and the like.

In the above technical solution, preferably, the step of generating font files comprises: generating the font file using the recognized Unicode value and a corresponding path group. In this technical solution, the font file is generated from the Unicode value and the path group, so as to guarantee the appropriate representation of the corresponding character.

In the above technical solution, preferably, the step of generating font files using the Unicode values and corresponding path groups comprises: generating a first table using the Unicode values, in which mappings between the Unicode values and font indexes are stored; generating a second table using path primitives contained in the path groups, in which the font indexes and font data (or path data) corresponding to the font indexes are stored; generating the font file using the first table and the second table. In this technical solution, the first table is a cmap table generated using the Unicode values, and the second table is a glyf table that is generated using the path groups.

In the above technical solution, preferably, further comprises determining whether a recognized Unicode value has been recorded, wherein if the Unicode value has been recorded, it is determined that there is a path group representing the same character and the recorded Unicode value and its corresponding font file that has been generated are acquired to represent the character to be described; and if the Unicode value has not been recorded, a font file is generated to represent the character to be described. In this technical solution, through comparing the recognized Unicode value, it is determined whether a character that is presently processed has been handled, that is, whether there is the same character existed; if so, a font file that has been generated previously and other information may be directly used to avoid data redundancy; otherwise, a font file is generated. From the above comparison, it may be guaranteed that only one font file is generated from each character, so that data redundancy may be avoided so as to reduce the volume of the document.

In the above technical solution, preferably, further comprises: centrally storing the font files, and representing a corresponding character using the name of a font file and a Unicode value corresponding to the Unicode file, wherein if an acquired Unicode value of a specified path group has been recorded previously, coordinates of the specified path group are further acquired, and it is determined whether the coordinates of the specified path group are identical to those of the recorded path group, wherein if identical, a determination of the same path group is made and no further process is required; otherwise, a new name is generated to represent a corresponding character using the recorded Unicode value and generate a font file named with the new name. In this technical solution, through coordinate determination, for a character represented by a path group that is presently processed, it is determined whether there is any other path group representing the same character, so as to guarantee that only one font file and other information is generated for the same character so as to reduce the volume of the document as much as possible and avoid redundancy

Below, with reference toFIGS. 3 to 7, a detailed description will be given to the process of fixed layout document format conversion based on the technical solution of the present invention.

First, an introduction of general steps will be given with reference toFIG. 3, whereinFIG. 3shows a particular flowchart of converting a fixed layout document according to an embodiment of this invention.

As shown inFIG. 3, the particular flowchart of the process of converting a fixed layout document according to the embodiment of this invention comprises the following steps.

At step302, the fixed layout document is parsed. Particularly, the original fixed layout document is parsed using a parsing engine.

At step304, path primitives of the fixed layout document are acquired according to the parsing result.

At step306, it is determined whether the path primitives are paths. Particularly, through parsing the data of the fixed layout document, primitive IDs, primitive types, primitive data, etc., may be acquired. Thus, through parsing the types of the primitives, it may be determined whether the primitives are paths. Wherein, if so, the process proceeds to step308, otherwise, the process proceeds to step310.

At step308, the paths are divided into groups to obtain path groups, wherein each path group is used to represent a complete element, such as, a character.

At step310, corresponding processes are performed in accordance with primitive types.

At step312, it is determined whether a path represents a character, if so, the process proceeds to step314; otherwise, the process proceeds to step316.

At step314, a font file is generated.

At step316, it is processed as regular paths.

As to step308, particularly,FIG. 4shows a flowchart of dividing path primitives into groups according to an embodiment of this invention.

As shown inFIG. 4, the process of dividing path primitives into groups according to an embodiment of this invention comprises the following steps.

At step402, path primitive data is acquired, i.e., a path primitive belonging to the path type.

At step404, a minimum enclosing rectangle is calculated for the path primitive and is used as an area corresponding to the path primitive.

At step406, it is determined whether a path primitive that is processed presently is a starting path, i.e., a first path of a path group; if so, the process proceeds to step408; otherwise, the process proceeds to step410. Particularly, a path primitive to be processed immediately following the completion of the grouping of a previous path group is used as a starting path.

At step408, coordinates of the minimum enclosing rectangle are stored and the process returns to step402.

At step410, a distance between minimum enclosing rectangles of a starting path and a calculated path is calculated, to determine the relationship therebetween. Herein, the minimum enclosing rectangle of the calculated path is the coordinate data stored at step408.

At step412, according to the calculation result of step410, it is determined whether the both intersect with each other, or if the both do not intersect with each other, whether the distance therebetween is less than a character spacing. Wherein, if they intersect with each other or if the distance is less than the character spacing (or another predetermined distance), the process proceeds to step416; otherwise, the process proceeds to step414.

At step414, the path primitive is used as a starting path of a next path group, and the process proceeds to step408.

At step416, these paths are within the same path group.

As to step312, particularly,FIG. 5shows a flowchart of determining whether a path group is used to represent a character according to the embodiment of this invention.

As shown inFIG. 5, the process of determining whether a path group is used to represent a character according to the embodiment of this invention comprises the following steps.

At step502, a path group is acquired.

At step504, a minimum enclosing rectangle of the path group is calculated as an area corresponding to the path group.

At step506, a corresponding character is acquired through recognizing the path group using an OCR technique.

At step508, it is determined whether a corresponding Unicode value may be recognized based on the recognized character; if so, the process proceeds to step512; otherwise, it proceeds to step510.

At step510, the path group is processed as regular paths.

At step512, the path group is processed as a character.

Step312further comprises determining whether two or more path groups represent the same character. Particularly,FIG. 6shows a flowchart of determining whether path groups represent the same character and its corresponding processing method according to the embodiment of this invention.

As shown inFIG. 6, the process of determining whether path groups represent the same character and its corresponding processing method according to the embodiment of this invention comprises the following steps.

At step602, a path group is acquired.

At step604, a Unicode value of a character represented by the path group is recognized, and a processed character list is searched, wherein the processed character list is used to store Unicode values of characters represented by path groups that have been processed previously.

At step606, based on the search result, it is determined whether the Unicode value of the character that is searching is within the processed character list. If so, the process proceeds to step612; otherwise, it proceeds to step608.

At step608, it is indicated that the character represented by the present path group occurs in the fixed layout document for the first time, and the recognized Unicode value is added into the processed character list.

At step610, a font file is generated according to the Unicode value and the paths, and the process returns to step602to continue with the process of other path groups.

At step612, coordinates of the present path group and the founded path group are acquired, and the both sets of coordinates are transformed. Particularly, the coordinates may be shifted to an origin for comparison.

At step614, it is determined whether the two sets of coordinates are identical, wherein, if so, the process proceeds to step616; otherwise, it proceeds to step610.

At step616, it is indicated that they represent the same character, and the character is represented by substituting the stored Unicode value and a font name (an internal name of the font file) for the original path data; then the process returns to step602to continue with the process of other path groups.

At step314, particularly,FIG. 7; shows a flowchart of generating a font file according to the embodiment of this invention.

As shown inFIG. 7, the process of generating font files according to the embodiment of this invention comprises the following steps.

At step702, Unicode values and their path representations (i.e., path groups corresponding to the Unicode values) are inputted.

At step704, a cmap table is generated using the Unicode values.

At step706, the path representations are stored in a glyf table. Certainly, other representation tables required by OpenType font files must be generated as well.

At step708, corresponding OpenType font files are generated using the generated cmap table, the glyf table and the other representation tables, and the font files are stored.

One or more computer readable media having computer executable instructions contained therein are further provided in this disclosure, when executed on a computer, the instructions executing a digital right combination method, the method comprising: parsing a fixed layout document to acquire path primitives of the fixed layout document; dividing the path primitives into groups to generate path groups; acquiring path groups representing characters and generating font files corresponding to the path groups representing the characters, wherein if there are two or more path groups representing the same character, only one font file is generated, and is associated with the two or more path groups representing the same character; generating a converted document using all font files that have been generated.

A computer provided with one or more computer readable media having computer executable instructions contained therein is further provided in this disclosure, when executed by the computer, the instructions implementing the method of claim9.

Exemplary Operating Environment

The computer or computing device as described herein comprises hardware, including one or more processors or processing units, system memory and some types of computer readable media. By way of example and not limitation, computer readable media comprise computer storage media and communication media. Computer storage media comprises volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically embody computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism and include any information delivery media. Combinations of any of the above are also included within the scope of computer readable media.

Various embodiments of the invention may be described in a general context of computer executable instructions such as program modules executed on one or more computers or other devices. The computer-executable instructions may be organized into one or more computer-executable components or modules as software. Generally, program modules include, but are not limited to, routines, programs, objects, components, and data structures that perform particular tasks or implement particular abstract data types. Aspects of the invention may be implemented with any number and organization of such components or modules. For example, aspects of the invention are not limited to the specific computer-executable instructions or the specific components or modules illustrated in the figures and described herein. Other embodiments of the invention may include different computer-executable instructions or components having more or less functionality than illustrated and described herein. Aspects of the invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.

The technical solution of this invention has been described in detail above in connection with figures. In view of a large amount of data redundancy in fixed layout documents, an apparatus and a method for document format conversion is provided in this invention, capable of solving the problem of data redundancy in fixed layout documents to cause documents with smaller volumes, and capable of solving the problem of incorrect rendering in reflowing processes to achieve better display effects on various terminals.

What are described above are merely preferred embodiments of the present invention, but do not limit the protection scope of the present invention. Various modifications or variations can be made to this invention by persons skilled in the art. Any modifications, substitutions, and improvements within the scope and spirit of this invention should be encompassed in the protection scope of this invention.