Organizing, editing, and rendering digital ink
First Claim
Patent Images
1. A system for classifying flows comprising:
- an input receiving points; and
a processor for grouping the points into strokes and grouping the strokes into at least a first flow.
2 Assignments
0 Petitions
Accused Products
Abstract
A pen-based computing system supports organizing, editing, and rendering handwritten digital ink. A given page of text may include several word flows, but the flows may be prevented from overlapping one another, and each word and stroke may be assigned to only one flow on the page. Various functions are available to open up additional space in a flow, to reflow the words in a flow, and to normalize the spacing between words in a flow.
83 Citations
43 Claims
-
1. A system for classifying flows comprising:
-
an input receiving points; and
a processor for grouping the points into strokes and grouping the strokes into at least a first flow. - View Dependent Claims (2, 3)
-
-
4. A system for reflowing flows of strokes comprising:
-
a display displaying at least a first flow and a second flow;
an input receiving an indication that said first flow is to be reflowed; and
a processor for modifying a layout of said first flow on said display, wherein said modification is at least partially dependent on the presence of said second flow on said display. - View Dependent Claims (5)
-
-
6. A system for modifying the appearance of space in a flow comprising:
-
a display displaying at least a first flow and a second flow;
an input receiving an indication that space is to be added within said first flow; and
a processor for modifying a layout of said first flow on said display, wherein said modification increases space only within said first flow.
-
-
7. A system for modifying the appearance of space in a flow comprising:
-
a display displaying at least a first flow and a second flow;
an input receiving an indication that space is to be subtracted from within said first flow; and
a processor for modifying a layout of said first flow on said display, wherein said modification decreases space only within said first flow.
-
-
8. A system, comprising:
-
a page template;
a user input device for applying at least a first stroke and a second stroke to the page template, wherein the page template defines a first flow that includes at least the first stroke, a first insertion area laterally adjacent the first stroke on the page template, and a second insertion area on a line of the page template below the first stroke; and
means for determining whether the second stroke is associated with the first flow, wherein the second stroke is determined to be associated with the first flow when at least a predetermined portion of the second stroke is located within the first insertion area or the second insertion area. - View Dependent Claims (9, 10, 11)
-
-
12. A system, comprising:
-
a page template including at least a first flow and an unclaimed region defined thereon, wherein the first flow contains at least a first stroke, and the unclaimed region contains no strokes; and
means for determining whether a second stroke is associated with the first flow, wherein the second stroke includes an initial user input device contact point and a final user input device contact point. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A system, comprising:
-
a page template having an X coordinate direction and a Y coordinate direction, wherein the page template defines a plurality of lines arranged in the Y coordinate direction, wherein each line extends in the X coordinate direction, wherein a plurality of strokes are defined on the page template, wherein one or more of the strokes includes an initial user input device contact point, a final user input device contact point, and a plurality of consecutive points arranged along a direction of user input device motion between the initial user input device contact point and the final user input device contact point;
means for grouping the strokes into a plurality of word groupings, wherein one or more of the word groupings includes a first stroke with respect to the X coordinate direction, a last stroke with respect to the X coordinate direction, and optionally one or more additional strokes extending in the X coordinate direction between the first stroke and the last stroke, wherein, in a word grouping, each stroke overlaps with or is encompassed by a bounding box of another stroke in the word grouping or is located within a first predetermined distance of any adjacent strokes with respect to the X coordinate direction; and
means for grouping a plurality of the word groupings into a first flow region, wherein the first flow region includes a first word, a last word, and optionally one or more additional words between the first word and the last word. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A data structure for storing flows comprising:
a first portion containing spans, each of said spans including a designation of coordinates that are owned by a flow. - View Dependent Claims (26)
-
27. A method, comprising:
-
applying a first stroke to a page template;
defining a first active region of the page template, wherein the first active region includes at least the first stroke, a first insertion area laterally adjacent the first stroke on the page template, and a second insertion area on a line of the page template below the first stroke;
applying a second stroke to the page template; and
determining whether the second stroke is associated with the first active region, wherein the second stroke is determined to be associated with the first active region when at least a predetermined portion of the second stroke is located within the first insertion area or the second insertion area. - View Dependent Claims (28, 29, 30)
-
-
31. A method, comprising:
-
defining at least a first flow region on a page template, wherein the first flow region contains at least a first stroke;
defining at least an unclaimed region on the page template, wherein the unclaimed region contains no strokes;
applying a second stroke to the page template, wherein the second stroke includes an initial user input device contact point and a final user input device contact point; and
determining whether the second stroke is associated with the first flow region. - View Dependent Claims (32, 33, 34, 35, 36, 37)
-
-
38. A method, comprising:
-
defining a page template having an X coordinate direction and a Y coordinate direction, wherein the page template defines a plurality of lines arranged in the Y coordinate direction, and wherein each line extends in the X coordinate direction;
defining a plurality of strokes on the page template, wherein one or more of the strokes includes an initial user input device contact point, a final user input device contact point, and a plurality of consecutive points arranged along a direction of user input device motion between the initial user input device contact point and the final user input device contact point;
grouping the plurality of the strokes into a plurality of word groupings, wherein one or more of the word groupings includes a first stroke with respect to the X coordinate direction, a last stroke with respect to the X coordinate direction, and optionally one or more additional strokes extending in the X coordinate direction between the first stroke and the last stroke, wherein, in a word grouping, each stroke overlaps with or is encompassed by a bounding box of another stroke in the word grouping or is located within a first predetermined distance of any adjacent strokes with respect to the X coordinate direction; and
grouping a plurality of the word groupings into a first flow region, wherein the first flow region includes a first word, a last word, and optionally one or more additional words between the first word and the last word. - View Dependent Claims (39, 40, 41, 42, 43)
-
Specification