Multi-threaded text rendering
First Claim
1. A method for rendering text with an image comprising:
- receiving, by one or more computing devices, a source image;
receiving, by the one or more computing devices, a separate block of text to be associated with the source image, wherein the block of text is not included in the source image when received;
segmenting, by the one or more computing devices, the block of text into a plurality of text segments, wherein each text segment comprises a sequence of alpha-numeric characters;
on each of a plurality of threads running in parallel, generating a text bitmap for a respective text segment from the plurality of text segments, the text bitmap illustrating the sequence of alpha-numeric characters for the respective text segment; and
compositing, by the one or more computing devices, each of the text bitmaps with an image bitmap of the source image, wherein the composited image bitmap comprises a rendering of the block of text onto the source image.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems and computer-readable storage mediums encoded with computer programs executed by one or more processors for rendering text within an image are disclosed. A block of text is segmented into a plurality of text segments, wherein each text segment comprises a sequence of characters. On each of a plurality of threads running in parallel, a text bitmap is generated for a respective text segment from the plurality of text segments, the text bitmap illustrating the sequence of characters for the respective text segment. Each of the text bitmaps are composited with an image bitmap of a source image, wherein the composited image bitmap comprises a rendering of the block of text onto the source image.
38 Citations
20 Claims
-
1. A method for rendering text with an image comprising:
-
receiving, by one or more computing devices, a source image; receiving, by the one or more computing devices, a separate block of text to be associated with the source image, wherein the block of text is not included in the source image when received; segmenting, by the one or more computing devices, the block of text into a plurality of text segments, wherein each text segment comprises a sequence of alpha-numeric characters; on each of a plurality of threads running in parallel, generating a text bitmap for a respective text segment from the plurality of text segments, the text bitmap illustrating the sequence of alpha-numeric characters for the respective text segment; and compositing, by the one or more computing devices, each of the text bitmaps with an image bitmap of the source image, wherein the composited image bitmap comprises a rendering of the block of text onto the source image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system for rendering text with an image comprising:
-
a segmenter configured to receive a source image and a separate block of text to be associated with the source image, the segmenter being further configured to segment the block of text into a plurality of text segments, wherein each text segment comprises a sequence of alpha-numeric characters and wherein the block of text is not included in the source image when received; a plurality of threads running in parallel, each thread configured to generate a text bitmap for a respective text segment from the plurality of text segments, the text bitmap illustrating the sequence of alpha-numeric characters for the respective text segment; and a composite engine configured to composite each of the text bitmaps onto an image bitmap of the source image, wherein the composited image bitmap comprises a rendering of the text block onto the source image. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable storage medium having code stored thereon for rendering text that, when executed by one or more processors, causes the one or more processors to:
-
receive a source image; receive a separate block, of text to be associated with the source image, wherein the block of text is not included in the source image when received; segment the block of text into a plurality of text segments, including a first text segment and a second text segment, wherein each text segment comprises a sequence of characters; determine formatting information, for each text segment, associated with a rendering of the corresponding sequence on the source image; generate, using a first thread, a first text bitmap for the first text segment; generate, using a second thread, a second text bitmap for the second text segment, wherein the second thread is configured to generate the second text bitmap in parallel with the first thread generating the first text bitmap; and composite, the first text bitmap and the second text bitmap onto an image bitmap of the source image, wherein the composited image bitmap comprises a rendering of the block of text onto the source image, wherein each string is rendered based on the formatting information. - View Dependent Claims (20)
-
Specification