Creation and manipulation of canvases based on ink strokes
First Claim
1. A computer-readable storage medium having stored thereon a set of instructions which when executed performs a method for creating and manipulating a presented canvas based on an ink stroke, the method executed by the set of instructions comprising:
- detecting the ink stroke;
recording the ink stroke;
growing the presented canvas to cover the ink stroke, when the ink stroke is outside the presented canvas and not in a command area;
determining a command to be executed and executing the command, when the ink stroke is in the command area; and
when the ink stroke is in a typed text area, inserting a new canvas based on a location of the ink stroke and a size of the ink stroke, wherein inserting the new canvas based on the location of the ink stroke and the size of the ink stroke comprises;
when an insertion point associated with the ink stroke is on one of two lines, determining which of the two lines to separate based on the location of the ink stroke and a location of the insertion point associated with the ink stroke relative to a line center, andseparating the two lines based on the size of the ink stroke.
2 Assignments
0 Petitions
Accused Products
Abstract
A canvas in an inking application is created and manipulated based on ink strokes. An ink stroke outside a presented canvas, even outside a user interface of the inking application, is recorded and the presented canvas enlarged to cover the recorded ink stroke. If the ink stroke begins on a command area such as a canvas size control icon, the command associated with the area is executed. If the ink stroke begins in a typed text area, lines are frozen and separated responsive to the first stroke. A new canvas is presented between the separated lines. A size of the new canvas is adjusted based on ink entry or a size of the first ink stroke.
28 Citations
23 Claims
-
1. A computer-readable storage medium having stored thereon a set of instructions which when executed performs a method for creating and manipulating a presented canvas based on an ink stroke, the method executed by the set of instructions comprising:
-
detecting the ink stroke; recording the ink stroke; growing the presented canvas to cover the ink stroke, when the ink stroke is outside the presented canvas and not in a command area; determining a command to be executed and executing the command, when the ink stroke is in the command area; and when the ink stroke is in a typed text area, inserting a new canvas based on a location of the ink stroke and a size of the ink stroke, wherein inserting the new canvas based on the location of the ink stroke and the size of the ink stroke comprises; when an insertion point associated with the ink stroke is on one of two lines, determining which of the two lines to separate based on the location of the ink stroke and a location of the insertion point associated with the ink stroke relative to a line center, and separating the two lines based on the size of the ink stroke. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer-implemented method to be executed at least in part in a computing device for manipulating a presented canvas in an inking application, the method comprising:
-
detecting a stroke outside the presented canvas while in an inking mode; recording the stroke including a portion of the stroke that is not continued within the presented canvas; growing the presented canvas such that the recorded stroke is covered by the presented canvas; displaying a full length of the recorded stroke in an expanded area of the grown presented canvas; determining whether a starting point of the stroke is in a typed text area; and in response to determining that the starting point of the stroke is in the typed text area, inserting a new canvas based on a location of the stroke and a size of the stroke, wherein inserting the new canvas based on the location of the stroke and the size of the stroke comprises; when an insertion point associated with the stroke is on one of two lines, determining which of the two lines to separate based on the location of the stroke and a location of the insertion point associated with the stroke relative to a line center, separating the two lines, wherein separating the two lines comprises increasing, when the insertion point associated with the stroke is in between the two lines, the distance in between the two lines, the distance being determined by the size of the stroke, determining whether the stroke comprises at least one inked text character, and in response to determining that the stroke comprises the at least one inked text character, recognizing and integrating the at least one inked text character into existing text in the typed text area. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A system for creating and manipulating a presented canvas based on an ink stroke, the system comprising:
-
a memory storage; and a processing unit coupled to the memory storage, wherein the processing unit is operative to; detect a stroke outside the presented canvas while in an inking mode; record the stroke including a portion of the stroke that is not continued within the presented canvas; grow the presented canvas such that the recorded stroke is covered by the presented canvas; display a full length of the recorded stroke in an expanded area of the grown presented canvas; determine whether a starting point of the stroke is in a typed text area; in response to determining that the starting point of the stroke is in the typed text area; insert a new canvas based on a location of the stroke and a size of the stroke, separate two lines based on the size of the stroke and a location of an insertion point associated the ink stroke relative to a line center with an increase of a distance between two existing lines when the insertion point associated with the ink stroke is in between two existing lines, preserve at least one text attribute from a set of;
line lengths, font size and type, line spacing, and text flow,separate the existing text in the typed text area around the new canvas based on the location of the ink stroke by pushing the existing text in at least one direction according to a user preference, determine whether the stroke comprises at least one inked text character, and in response to determining that the stroke comprises the at least one inked text character, recognize and integrate the at least one inked text character into the existing text in the typed text area, wherein integrating the at least one inked text character into the existing text in the typed text area comprises applying at least one attribute of the existing text to the recognized inked text character.
-
Specification