10. A non-transitory computer-readable storage medium storing executable computer program instructions for document content reconstruction, the computer program instructions comprising instructions for: ingesting a document page in an unstructured document format, having a specified layout; extracting one or more images and metadata associated with the images from the document page; extracting text, and fonts associated with the texts, from the document page, wherein extracting the texts comprises: determining Unicode mappings of the texts in the document page by: mapping a first glyph of a letter to a standard code number in a Unicode chart table, and mapping each of the one or more glyphs of the same letter to a unique code number in Private Use Area (PUA) of the Unicode, wherein each code number in PUA is obtained by masking the standard code number of the first glyph with a unique highest byte offset, extracting all text characters and glyphs from the document page, identifying horizontal and vertical positions of the extracted text characters and glyphs, and extracting fonts associated with every character extracted; coalescing the text into paragraphs; and creating a structured document page in a markup language format using the extracted images, the text and the fonts rendered in accordance with the specified layout of the original ingested document page.
10. A non-transitory computer-readable storage medium storing executable computer program instructions for document content reconstruction, the computer program instructions comprising instructions for: ingesting a document page in an unstructured document format, having a specified layout; extracting one or more images and metadata associated with the images from the document page; extracting text, and fonts associated with the texts, from the document page, wherein extracting the texts comprises: determining Unicode mappings of the texts in the document page by: mapping a first glyph of a letter to a standard code number in a Unicode chart table, and mapping each of the one or more glyphs of the same letter to a unique code number in Private Use Area (PUA) of the Unicode, wherein each code number in PUA is obtained by masking the standard code number of the first glyph with a unique highest byte offset, extracting all text characters and glyphs from the document page, identifying horizontal and vertical positions of the extracted text characters and glyphs, and extracting fonts associated with every character extracted; coalescing the text into paragraphs; and creating a structured document page in a markup language format using the extracted images, the text and the fonts rendered in accordance with the specified layout of the original ingested document page. 14. The storage medium of claim 10 , wherein coalescing text into paragraphs comprises: assembling the extracted text characters into individual words; assembling words into lines, and lines into paragraphs; and assembling paragraphs into respective bounding boxes or regions.