Patent application number | Description | Published |
20090244593 | Systems and Methods for Parallel Display List Rasterization - Methods for performing rasterization on a display list are presented, wherein the display list can include bands associated with a virtual page object belonging to a first class of virtual page objects in the display list. In some embodiments, the method comprises: parsing the virtual page object to identify at least one geometric band; identifying at least one available rasterization process to rasterize the at least one geometric band; creating a second virtual page object including the geometric band, wherein the second virtual page object belongs to a second class of virtual page objects derived from the first class of virtual page objects; sending the second virtual page object including the geometric band to an available rasterization process; and rasterizing the one geometric band using the available rasterization process, wherein the rasterization process operates on the geometric band in the second virtual page object. | 10-01-2009 |
20090249017 | Systems and Methods for Memory Management for Rasterization - Methods for managing a single memory pool comprising frame buffer memory and display list memory are presented. The single memory pool can comprise sub-pools including: a super-block pool comprising a plurality of super-block objects; a node pool comprising a plurality of node objects; and a block-pool comprising a plurality of blocks. The method may comprise: receiving a memory allocation request directed to at least one of the sub-pools; allocating an object local to the sub-pool identified in the memory request, if local sub-pool objects are available to satisfy the memory request; allocating an object from super-block pool, if the memory request is directed to the node-pool or block-pool and there are no available local objects in the respective sub-pools to satisfy the memory request; and applying at least one of a plurality of memory freeing strategies, if the sub-pools lack available free objects. | 10-01-2009 |
20110075217 | SYSTEMS AND METHODS FOR MANAGING DATA IN COMPLEX CONTAINERS - Systems and methods for managing data in complex containers permit atomic addition of a plurality of data items to the containers. Each data item can occupy contiguous memory locations, although the plurality of data items may be mutually discontiguous. The method comprises creating a package object, which comprises an externally accessible array of pointer and associated integers. Each pointer points to the start of a memory location holding a distinct data item and the associated integer represents the size of the data item referenced by the pointer. A function associated with an external interface of the container determines a quantity of memory to hold the plurality of data items and invokes an externally accessible write function in the package object to add the plurality of individual data items to the container at specified locations if there is adequate memory available to hold the plurality of data items. | 03-31-2011 |
20110161842 | SYSTEMS AND METHODS FOR THE RENDERING OF PRINTABLE DATA - Methods for utilizing existing typesetting applications to render documents specified in a markup language that may include objects not supported by the typesetting application are presented. In some embodiments, the method comprises parsing the document to identify objects not natively supported by the typesetting application and extract information including bounding box information pertaining to the identified objects. The typesetting application may be invoked and provided with bounding box information for the identified objects and with instructions to disregard the identified objects. The output of the typesetting application is parsed to determine layout information that corresponds to the identified objects and the identified objects may be processed using the corresponding layout information. In some embodiments, the methods disclosed may permit the use of the TeX typesetting application with documents specified in OOXML. | 06-30-2011 |
20120005568 | RENDERING DATA IN THE CORRECT Z-ORDER - A method including: receiving a document encoded in a markup language and having a page with an image and text; creating a first high-level graphics (HLG) object corresponding to the image, where the first HLG object specifies a first z-index less than zero for the first HLG object; generating a first entry in an input file including a pointer to the first HLG object; generating a second entry in the input file corresponding to the text; generating an output file using a typesetting program and the input file; in response to the first z-index not being zero: parsing the output file to identify the page; creating an ItemHandles List (IL) for the page; adding a first ItemHandle corresponding to the first entry to the IL, where the first ItemHandle including the pointer; and generating a display list for the page using the output file and the IL. | 01-05-2012 |
20120102385 | DETERMINING HEIGHTS OF TABLE CELLS - A method for managing tables, including: obtaining a document including a table having a bottom row and a first stacked row; identifying, within the first stacked row, a first plurality of neutral cells having an initial height value; calculating, using a layout engine, a plurality of overall vertical dimensions for the first plurality of neutral cells based on a plurality of data items in the first plurality of neutral cells; identifying a maximum overall vertical dimension (MOVD) of the plurality of overall vertical dimensions; setting, in response to the MOVD exceeding the initial height value, a plurality of height attributes of the first plurality of neutral cells to the MOVD; shifting down the bottom row by a first difference between the MOVD and the initial height value; and rendering a page of the document including the table after shifting down the bottom row. | 04-26-2012 |
20130007582 | SYSTEM AND METHOD FOR PRODUCING OUTER SHADOWS AND REFLECTIONS - A method for rendering a page, including: obtaining an electronic document (ED) identifying a main object and multiple shadow parameters; determining a main bounding box surrounding the main object on the page; creating a main brush including the main object; calculating a shadow bounding box based on the main bounding box and at least one of the multiple shadow parameters; creating a shadow brush by applying a shadow transformation matrix to the main brush, where the shadow transformation matrix maps the main object to a shadow defined by the multiple shadow parameters; inserting, into a main display list for the page, a set of instructions to: paint the shadow bounding box with the shadow brush; and paint the main bounding box with the main brush. | 01-03-2013 |