Template-Based Page Layout for Hosted Social Magazines
First Claim
1. A method of performing page layout of content items based on templates, the method comprising:
- receiving a plurality of content items from a plurality of sources;
determining size constraints of each of the content items; and
laying out the content items on a page based on a template, comprising;
selecting a cardinality for the content items to place on a page;
selecting a candidate template from a plurality of candidate templates, wherein a candidate template has a number of slots equal to the selected cardinality; and
selectively attempting to place individual ones of the plurality of content items in the slots of the candidate template by matching the size constraints of the content items to sizes of the slots of the candidate template.
1 Assignment
0 Petitions
Accused Products
Abstract
Page layout of content items from a variety of sources is performed. A content processing system queues content items, such as user-generated blogs, tweets, social networking status updates and other postings, received from a variety of sources. Each content item comprises one or more assets from one or more asset types. The asset types include text, images, and video. A page builder retrieves items from the queue and determines the item'"'"'s size constraints. A template is selected from a template database to use as a layout for the items on a page; each template has a number of slots into which content can be placed. A layout module lays out the items into the slots of the selected template based on the respective size and aspect ratio constraints of the items, in order to build a page to serve a client device.
463 Citations
22 Claims
-
1. A method of performing page layout of content items based on templates, the method comprising:
-
receiving a plurality of content items from a plurality of sources; determining size constraints of each of the content items; and laying out the content items on a page based on a template, comprising; selecting a cardinality for the content items to place on a page; selecting a candidate template from a plurality of candidate templates, wherein a candidate template has a number of slots equal to the selected cardinality; and selectively attempting to place individual ones of the plurality of content items in the slots of the candidate template by matching the size constraints of the content items to sizes of the slots of the candidate template. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer program product comprising a non-transitory computer-readable storage medium containing computer program code for performing page layout of content items based on templates, the code for:
-
receiving a plurality of content items from a plurality of sources; determining size constraints of each of the content items; and laying out the content items on a page based on a template, comprising; selecting a cardinality for the content items to place on a page; selecting a candidate template from a plurality of candidate templates, wherein a candidate template has a number of slots equal to the selected cardinality; and selectively attempting to place individual ones of the plurality of content items in the slots of the candidate template by matching the size constraints of the content items to sizes of the slots of the candidate template. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
Specification