IP Library Granted Patent US 10,319,129
Granted Patent B2
US 10,319,129 · App. 15/418,319 · Granted Jun 11, 2019

Snapping line generation

Inventors: Praveen Kumar Dhanuka (Howrah, IN); Neeraj Nandkeolyar (Ghaziabad, IN); Chirag Maheshwari (Nodia, IN)
Assignee: Adobe Inc.
G06T11/60G06F17/214G06T3/403G06F3/0482G06F2203/04806G06T2200/24G06T2210/12
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,319,129
App. No.
15/418,319
Granted
Jun 11, 2019
Kind
B2
Abstract

Techniques and systems are described for snapping line generation based on glyphs. Techniques include locating bounding box lines from bounding boxes of glyphs. The bounding box lines may then be analyzed to identify which of the bounding box lines are collinear and at least one snapping line is generated based on the collinearity of the bounding box lines. The generated snapping lines are then output in a user interface to facilitate snapping objects to the snapping line.

Claims (35)

1. In a digital medium environment to generate snapping lines around glyphs, a method implemented by at least one computing device, the method comprising:

locating, by the at least one computing device, a plurality of bounding box lines from a plurality of glyph bounding boxes, each said glyph bounding box corresponding to a glyph for output in a user interface;

identifying, by the at least one computing device, a bounding box line of the plurality of bounding box lines as being collinear with another bounding box line of the plurality of bounding box lines;

generating, by the at least one computing device, a snapping line based at least in part on the bounding box line that is collinear with the another bounding box line; and

outputting, by the at least one computing device, the snapping line in the user interface, the snapping line operable to cause an edge of a digital object to move to the snapping line in response to input moving the edge into proximity of the snapping line in the user interface.

2. A method as recited in claim 1 , wherein the generating is based at least in part on a quantity of the plurality of bounding box lines that are collinear as meeting a threshold quantity for generating the snapping line.

3. A method as recited in claim 2 , further comprising receiving, by the at least one computing device, a user input to modify the threshold quantity.

4. A method as recited in claim 1 , wherein the generating is based at least in part on a ratio of the plurality of glyph bounding boxes having bounding box lines of the plurality of bounding box lines that are collinear to a total quantity of the plurality of glyph bounding boxes.

5. A method as recited in claim 1 , wherein the generating is based at least in part on a quantity of the plurality of bounding box lines that are collinear that are located from consecutive glyph bounding boxes of the plurality of glyph bounding boxes.

6. A method as recited in claim 1 , wherein the generating is based at least in part on a total length of the plurality of glyph bounding boxes having bounding box lines that are collinear and meet a threshold length for generating the snapping line.

7. A method as recited in claim 1 , wherein the generating is based at least in part on a ratio of a total length of the plurality of glyph bounding boxes having bounding box lines that are collinear to a total length of the plurality of glyph bounding boxes.

8. A method as recited in claim 1 , further comprising generating, by the at least one computing device, at least one additional snapping line based on a bounding box line of the plurality of bounding box lines as being one of an upper-most or a lower-most bounding box line.

9. A method as recited in claim 1 , wherein the generating is based at least in part on a distance threshold.

10. A method as recited in claim 9 , further comprising receiving input to modify the distance threshold.

11. A computing device comprising:

a processing system; and

a computer readable storage medium having stored thereon instructions that implement a platform of the computing device that, responsive to execution by the processor, cause the processor to perform operations comprising:

locating a plurality of bounding box lines from a plurality of glyph bounding boxes, each said glyph bounding box corresponding to a glyph for output in a user interface;

identifying a bounding box line from the plurality of bounding box lines as being collinear with another bounding box line of the plurality of bounding box lines;

generating a snapping line based at least in part on the bounding box line that is collinear with the another bounding box line; and

outputting the snapping line in the user interface, the snapping line operable to cause an edge of a digital object to move to the snapping line in response to input moving the edge of the digital object into proximity of the snapping line in the user interface.

12. A computing device as recited in claim 11 , the operations further comprising receiving a user input to select a subset of glyphs in a text box corresponding to the plurality of glyph bounding boxes.

13. A computing device as recited in claim 11 , wherein the generating is based in part on a length of consecutive glyph bounding boxes of the plurality of glyph bounding boxes.

14. A computing device as recited in claim 11 , the operations further comprising repeating one or more of the locating, the identifying, the generating, or the outputting in response to receiving an input to remove a glyph, modify a glyph, or add a glyph corresponding to a glyph bounding box of the plurality of glyph bounding boxes.

15. A computing device as recited in claim 14 , wherein the input to modify the glyph comprises one or more of modifying a font style of the glyph or changing a language of the glyph.

16. In a digital medium environment to generate snapping lines around glyphs, a method comprising:

steps for locating a plurality of bounding box lines in a user interface, each said bounding box line based on an edge of a glyph bounding box;

steps for identifying a first candidate snapping line representing a first quantity of the plurality of bounding box lines that are collinear, one to another;

steps for identifying a second candidate snapping line representing a second quantity of the plurality of bounding box lines that are collinear, one to another;

steps for generating a snapping line based at least in part on the first candidate snapping line being beyond a threshold distance from the second candidate snapping line, the second quantity of bounding box lines being greater than the first quantity of bounding box lines; and

steps for outputting the snapping line based on the first candidate snapping line in the user interface, the snapping line operable to cause an edge of a digital object to move to the snapping line in response to input moving the edge into proximity of the snapping line in the user interface.

17. A method as recited in claim 16 , further comprising steps for receiving input to modify the threshold distance.

18. A method as recited in claim 17 , wherein the input comprises zooming in on the first candidate snapping line.

19. A method as recited in claim 16 , wherein the plurality of bounding box lines is oriented vertically.

20. A method as recited in claim 16 , wherein each said bounding box line is based on glyph bounding boxes corresponding to a subset of glyphs based on one or more of a glyph, a word, or a glyph line where a cursor present.

Assignments (2)
CHANGE OF NAME Recorded Jan 21, 2019
From: ADOBE SYSTEMS INCORPORATED
To: ADOBE INC.
Reel/Frame 048103/0226 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2017
From: DHANUKA, PRAVEEN KUMAR; NANDKEOLYAR, NEERAJ; MAHESHWARI, CHIRAG
To: ADOBE SYSTEMS INCORPORATED
Reel/Frame 041111/0011 →
Continuity (1)
Related Publication 20180218523A1 · Aug 2, 2018
Cited By (1)
US 12,524,934