Exposing various levels of text granularity for animation and other effects
First Claim
1. In a computing environment, a method for individually animating text elements at an author-selected level of granularity, the method comprising:
- receiving information indicating that part of a text object model is to be animated, the part of the text object model to be animated at a user-definable granularity of text elements, and the part of the text object model to be animated comprising a set of consecutive text elements;
subsequent to receiving the information indicating that part of the text object model is to be animated, identifying text to render;
binding the identified text to the text object model;
laying out the page containing the animated text elements;
laying out the line containing the animated text elements;
laying out the text object model by producing a glyph animation property for the part of the text object model to be animated and attaching the glyph animation property to a character run in a layout tree, the glyph animation property being associated with the part of the text object model to be animated and independent of actual text characters to be animated, a non animated part of the text object model being associated with a character run in the layout tree having no glyph animation property; and
at rendering time, generating a separate glyph run for each run of glyphs having a distinct associated glyph animation property and applying the associated glyph animation property to each glyph run, and rendering each glyph run to a display device.
2 Assignments
0 Petitions
Accused Products
Abstract
Described is a system and method by which text elements to be rendered on a computer display (e.g., paragraph, line or any subset of text including a character or glyph) may be individually or collectively animated, at an author-selected level of granularity. Animation of text may be specified by setting animation properties via direct coding (e.g., in markup) or by specifying animation code to execute on text-related data, just prior to rendering. The text to animate may be static, or dynamically obtained at runtime from an external source. The text to animate is maintained as a whole with other text of the same element, in a text object, until a processing level that produces separate glyph runs, with an animation transform associated with each glyph run to be animated. Also described is an API that supports text animation.
30 Citations
12 Claims
-
1. In a computing environment, a method for individually animating text elements at an author-selected level of granularity, the method comprising:
-
receiving information indicating that part of a text object model is to be animated, the part of the text object model to be animated at a user-definable granularity of text elements, and the part of the text object model to be animated comprising a set of consecutive text elements; subsequent to receiving the information indicating that part of the text object model is to be animated, identifying text to render; binding the identified text to the text object model; laying out the page containing the animated text elements; laying out the line containing the animated text elements; laying out the text object model by producing a glyph animation property for the part of the text object model to be animated and attaching the glyph animation property to a character run in a layout tree, the glyph animation property being associated with the part of the text object model to be animated and independent of actual text characters to be animated, a non animated part of the text object model being associated with a character run in the layout tree having no glyph animation property; and at rendering time, generating a separate glyph run for each run of glyphs having a distinct associated glyph animation property and applying the associated glyph animation property to each glyph run, and rendering each glyph run to a display device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. In a computing environment, a system for individually animating text elements at an author-selected level of granularity, the system comprising:
computer-readable media, wherein at least a portion of the computer-readable media is storage, non-communication type media, and wherein the computer-readable media has stored thereon; a text object, the text object including a text element for containing text and having a property associated therewith indicating that part of the text of the text element is to be animated, the part of the text being selected at a user-definable granularity and the part of the text to be animated comprising a set of consecutive text elements; a text handling stack, the text handling stack having a series of components wherein each component calls a lower level component until an actual glyph run is produced for rendering, the text handling stack components comprising; a topmost component comprising a high level language that, when parsed, generates a tree of elements; at least one layout component, wherein each element in the tree is capable of using the layout component to lay out its own part of the text; and a glyph run production component, wherein the glyph run production component produces a glyph run for each element in the tree, the glyph run production component being at a lower level than the layout components; and means for associating animation information with the part of the text element that is to be animated, the animation information associated with the part of the text element that is to be animated being applied to a glyph run corresponding to the part of the text element that is to be animated during glyph run production by the glyph run production component. - View Dependent Claims (9, 10, 11, 12)
Specification