IP Library Granted Patent US 10,713,430
Granted Patent B2
US 10,713,430 · App. 15/365,459 · Granted Jul 14, 2020

Systems and methods for applying layout to documents

Inventors: Vishnu Sivaji (New York, NY); ANdrea Dulko (Brooklyn, NY); Li-Wei Lee (Brooklyn, NY); Peter Likarish (Jersey City, NJ); Julian Rajeshwar (New York, NY); Steven Joseph Saviano (Brooklyn, NY); Jonathan Bronson (New York, NY); Aaron Zemach (Brooklyn, NY)
Assignee: Google LLC
G06F40/186G06F3/0482G06F3/04845G06F16/958G06F40/106
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,713,430
App. No.
15/365,459
Granted
Jul 14, 2020
Kind
B2
Abstract

A computer-implemented method for providing templates for a document to a user, the method comprising detecting a first object in the document, generating a score for each document template in a plurality of document templates, by applying a ranking scheme to the document templates, wherein the ranking scheme is based on the first object placed in the document, providing to the user, a first subset of the plurality of document templates based on each document template's respective score, receiving a selection of a document template from the first subset of the plurality of document templates from the user, and applying the selected document template to the first object in the document.

Claims (61)

1. A computer-implemented method for providing a template for a document, the method comprising:

providing the document for presentation;

detecting an addition of a first object to the document, the first object comprising a text;

identifying a theme of the document based on a subject matter of one or more words included in the text of the first object;

generating a score for each document template in a plurality of document templates by ranking the document templates based on the theme of the document;

providing, for selection, a first subset of the plurality of document templates based on the respective score for each document template, wherein the first subset of the plurality of document templates comprises a first portion of the plurality of document templates;

identifying a user interaction with the document;

providing, for selection, a second subset of the plurality of document templates based on the first subset of the plurality of document templates and the user interaction with the document, wherein the second subset of the plurality of document templates comprises a second portion of the plurality of document templates;

receiving a selection of a document template from the second subset of the plurality of document templates; and

applying the selected document template to the document, wherein applying the selected document template comprises creating one or more additional objects defined by the selected document template that are missing from the document, wherein the one or more additional objects comprise content items for insertion into the document.

2. The method of claim 1 , wherein generating the score further comprises:

detecting at least a type and metadata for the first object; and

matching the detected type and metadata of the first object to a second object in each document template in the plurality of document templates to generate a score for each template in the plurality of templates.

3. The method of claim 1 , wherein generating the score further comprises:

matching the identified theme to each document template in the plurality of document templates to generate a score for each document template in the plurality of templates.

4. The method of claim 3 , further comprising providing a plurality of suggestions to create a new object based on the identified theme of the document.

5. The method of claim 1 , wherein applying the selected document template further comprises resizing and repositioning of the first object placed in the document.

6. The method of claim 1 , wherein generating the score for each document template is further based on a size of the first object and a shape of the first object.

7. The method of claim 1 , wherein the first object is provided by a combination of collaborators to the document.

8. The method of claim 1 , further comprising:

receiving a second object at the document;

generating a new score for each document template in the plurality of document templates by ranking the document templates based on the first object and the second object placed in the document; and

providing a third subset of the plurality of document templates based on each document template's respective score.

9. The method of claim 8 , wherein a second object is automatically placed in a blank region of the document.

10. The method of claim 9 , wherein the placement of the second object comprises cropping of the first object.

11. A system for providing a template for a document, the system comprising a processor coupled to memory:

the processor configured to:

provide the document for presentation;

detect an addition of a first object to the document, the first object comprising a text;

identify a theme of the document based on a subject matter of one or more words included in the text of the first object;

generate a score for each document template in a plurality of document templates by ranking the document templates based on the theme of the document;

provide, for selection, a first subset of the plurality of document templates based on the respective score for each document template, wherein the first subset of the plurality document templates comprises a first portion of the plurality of document templates;

identify a user interaction with the document;

provide, for selection, a second subset of the plurality of document templates based on the first subset of the plurality of document templates and the user interaction with the document, wherein the second subset of the plurality of document templates comprises a second portion of the plurality of document templates;

receive a selection of a document template from the first subset of the plurality of document templates; and

apply the selected document template to the document, wherein applying the selected document template comprises creating one or more additional objects defined by the selected document template that are missing from the document, wherein the one or more additional objects comprise content items for insertion into the document.

12. The system of claim 11 , wherein generating the score further comprises:

detecting at least a type and metadata for the first object; and

matching the detected type and metadata of the first object to a second object in each document template in the plurality of document templates to generate a score for each template in the plurality of templates.

13. The system of claim 11 , wherein generating the score further comprises:

matching the identified theme to each document template in the plurality of document templates to generate a score for each document template in the plurality of templates.

14. The system of claim 13 , wherein the processor is further configured to provide a plurality of suggestions to create a new object based on the identified theme of the document.

15. The system of claim 11 , wherein the processor is further configured to apply the selected document template by resizing and repositioning of the first object placed in the document.

16. The system of claim 11 , wherein the processor is further configured to generate the score for each document template based on a size of the first object and a shape of the first object.

17. The system of claim 11 , wherein the first object is provided by a combination of collaborators to the document.

18. The system of claim 11 , wherein the processor is further configured to:

receive a second object at the document;

generate a new score for each document template in the plurality of document templates by ranking the document templates based on the first object and the second object placed in the document; and

provide a third subset of the plurality of document templates based on each document template's respective score.

19. The system of claim 18 , wherein a second object is automatically placed in a blank region of the document.

20. The system of claim 19 , wherein the placement of the second object comprises cropping of the first object.

21. A non-transitory computer-readable medium comprising instructions, which when executed by a processor, cause the processor to perform operations comprising:

providing a document for presentation;

detecting an addition of a first object to the document, the first object comprising a text;

identifying a theme of the document based on a subject matter of one or more words included in the text of the first object;

generating a score for each document template in a plurality of document templates by ranking the document templates based on the theme of the document;

providing, for selection, a first subset of the plurality of document templates based on the respective score for each document template, wherein the first subset of the plurality of document templates comprises a first portion of the plurality of document templates;

identifying a user interaction with the document;

providing, for selection, a second subset of the plurality of document templates based on the first subset of the plurality of document templates and the user interaction with the document, wherein the second subset of the plurality of document templates comprises a first portion of the plurality of document templates;

receiving a selection of a document template from the first subset of the plurality of document templates; and

applying the selected document template to the document, wherein applying the selected document template comprises creating one or more additional objects defined by the selected document template that are missing from the document, wherein the one or more additional objects comprise content items for insertion into the document.

Assignments (2)
CHANGE OF NAME Recorded Oct 20, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044567/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2016
From: SIVAJI, VISHNU; DULKO, ANDREA; LEE, LI-WEI; LIKARISH, PETER; RAJESHWAR, JULIAN; SAVIANO, STEVEN JOSEPH; BRONSON, JONATHAN; ZEMACH, AARON
To: GOOGLE INC.
Reel/Frame 040524/0556 →
Continuity (1)
Related Publication 20180150446A1 · May 31, 2018