Compression of text contents for display remoting
First Claim
1. A method for compressing an image, comprising:
- determining, by one or more computing devices, a top and bottom of a row of text within the image based on a number of background pixels in two adjacent horizontal rows of pixels of the image;
determining, by the one or more computing devices, a first vertical band of pixels of the row of text, the first vertical band of pixels spanning between the top and bottom and comprising a first image portion;
storing, by the one or more computing devices, the first image portion in a first memory location; and
in response to determining that a second vertical band of pixels of the row of text comprises a second image portion that matches the first image portion, storing, by the one or more computing devices, a reference to the first image portion.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the invention compress an image that contains a representation of text. Embodiments take an image of graphical data and determines one or more portions of that image that have a high probability of containing text. Embodiments then take each such portion of the image and determines one or more rows of text within each portion (where text does, in fact, exist within the portion). The embodiments then traverse each vertical band of pixels of each row to determine sub-glyphs. Where a particular sub-glyph is encountered for the first time, the embodiments cache that sub-glyph, and send it (or a compressed representation thereof) to a client in a remote presentation session. Where a particular sub-glyph has been cached already, the embodiments send a reference to that cached vertical band to the client.
13 Citations
20 Claims
-
1. A method for compressing an image, comprising:
-
determining, by one or more computing devices, a top and bottom of a row of text within the image based on a number of background pixels in two adjacent horizontal rows of pixels of the image; determining, by the one or more computing devices, a first vertical band of pixels of the row of text, the first vertical band of pixels spanning between the top and bottom and comprising a first image portion; storing, by the one or more computing devices, the first image portion in a first memory location; and in response to determining that a second vertical band of pixels of the row of text comprises a second image portion that matches the first image portion, storing, by the one or more computing devices, a reference to the first image portion. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for compressing an image, comprising:
-
a processor; and a memory communicatively coupled to the processor when the system is operational, the memory bearing processor-executable instructions that, upon execution by the processor, cause the system at least to; determine a top and bottom of a row of text within the image based on a number of background pixels in two adjacent horizontal rows of pixels of the image; determine a first vertical band of pixels of the row of text, the first vertical band of pixels spanning between the top and bottom and comprising a first sub-glyph; store the first sub-glyph in a first memory location; and in response to determining that a second vertical band of pixels of the row of text comprises a second sub-glyph that matches the first sub-glyph, store a reference to the first sub-glyph. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer-readable storage medium for compressing an image, bearing computer-readable instructions that, when executed upon a computer, cause the computer to perform operations comprising:
-
determining a top and bottom of a row of text within the image based on a number of background pixels in two adjacent horizontal rows of pixels of the image; determining a first vertical band of pixels of the row of text, the first vertical band of pixels spanning between the top and bottom and comprising a first sub-glyph; storing the first sub-glyph in a first memory location; and in response to determining that a second vertical band of pixels of the row of text comprises a second sub-glyph that matches the first sub-glyph, storing a reference to the first sub-glyph.
-
Specification