Generally, the present invention relates to page-layout and illustration software. Specifically, the present invention is a system and method for interleaving elements of master pages with elements of child pages based on these master pages.
In traditional page-layout and illustration programs, a master page is a component that allows a user to have a common background or foreground, or other common elements on multiple pages. With existing implementations, a user creates a master page having one or more elements and when child pages are created based on the master page, all those master page elements appear in one layer, in the “Z”-ordering or depth of the drawing context, generally in the background of the illustration. In the prior art, the order in which the elements are rendered is relatively inflexible. Typically, the master page elements are rendered first, and on top of those master page elements, all the child elements are rendered. Problematically, the prior art fails to allow interleaving of child page elements and master page elements. In the prior art, master pages have layers, but these master page layers are typically independent of the child page layers and the two sets of layers do not interrelate nor may they be interleaved. So, in the prior art all master page elements, regardless of the layer of the master page on which they are disposed, typically appear underneath all of the child page layers and the child page layers' elements. Therefore, when using prior art page-layout programs it is not possible to create a child page where master page elements appear in different levels of the drawing context.
Another problem in the prior art is an inability for master page elements to affect the rendering of a child page element by applying some effect to a child page element. Traditional prior art master pages fail to allow the creation of some complicated illustrations. Additionally, prior art programs typically will not allow a user to have multiple master pages associated with a child page. With a traditional rendering master page, each master page element is rendered prior to the child elements. Therefore, even if multiple master pages were employed, it would appear as if only one master page is underneath the child pages.
The present invention is directed to systems and methods for layered master pages which allow insertion of elements disposed on the master page in whatever “Z”-order a user desires and have the elements appear in different positions on the child pages, using layers. Preferably, the layered master pages of the present invention may be employed consistently across multiple child pages. Additionally, the present invention gives the user of a page layout program control of the layered master pages, which gives control of multiple pages at a time and enables organization of pages in a central control location by the user. The present invention also provides the user of a page layout program control over interleaving of elements from the layered master pages with elements from the child page(s) based on the master page(s). Whereas the concept of layering objects in a drawing document is known in the art, interleaving elements in a master page with elements in a child page in accordance with the present invention is heretofore unknown in the art. To facilitate interleaving in the present invention, master page elements are preferably at the same hierarchical level of objects as child page elements.
In page layout programs a definition of a class of objects may be designated a layer. That layer generally has some properties and attributes associated with it. A page in a page layout program generally has a list of layers associated with the page. Therefore, one of the data structures inside of a page object is a list of layer objects. A layer object generally has a list of drawing objects, oftentimes in the form of shapes. These shapes are preferable programming objects or classes that render the actual end result drawing on a screen or to a printer. Thus, “objects” as used herein generally means drawing objects or elements that are generally found in page layout and illustration applications, or the like. Herein, a “page” refers to a program object that has a list of layers and a “layer” refers to a programming object that has a list of drawing object shapes or the like. A layered master page preferably has a list of layers as other pages have a list of layers. In the present invention, the master page and the child page share the same layer list. In the present invention, the list of layers does not necessarily have to reside on a child page, but a child page preferably has an ability to reference a list of layers for associated layered master page(s) and draw from the list of layers for the layered master page(s) onto the child page.
In accordance with the present invention, elements on master pages may be interleaved with child page elements, creating a child page that was not possible using prior art page layout programs. Additionally, elements in a layered master page of the present invention can affect child page elements in ways that were not possible in the prior art. For example, a layered master page may be used to add a lens effect, transparency effect, smudge effect or the like to a child element underneath a master element. Thus in one embodiment of the present invention object instances on one of the master page layers is interleaved among objects on a corresponding layer of the child page. Further, the present invention provides an ability to have complex relationships between multiple master pages and a child page so that the hierarchy of page relationships can be manipulated to give a user an ability to create complex hierarchies of child-to-master page relationships. This ability to create complex child-to-master page relationships allows the user to have global control over areas of the child page. For example, if two master pages are associated with a child page, each master page can control certain aspects of the layered elements in the final rendered page, such as the background and/or the foreground.
To employ layered master pages in accordance with the present invention in a page layout program, first a layered master page is created. Then a layer of the master page is edited to accomplish the user's purpose. Then the edited master page is applied to make a child page. Advantageously, the present invention provides that an update to a master page is concurrently rendered on the associated child page(s).
The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which form the subject of the claims of the invention. It should be appreciated by those skilled in the art that the conception and specific embodiment disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present invention. It should also be realized by those skilled in the art that such equivalent constructions do not depart from the spirit and scope of the invention as set forth in the appended claims. The novel features which are believed to be characteristic of the invention, both as to its organization and method of operation, together with further objects and advantages will be better understood from the following description when considered in connection with the accompanying figures. It is to be expressly understood, however, that each of the figures is provided for the purpose of illustration and description only and is not intended as a definition of the limits of the present invention.
For a more complete understanding of the present invention, reference is now made to the following descriptions taken in conjunction with the accompanying drawing, in which:
For a more complete understanding of the present invention, reference is now made to the following descriptions taken in conjunction with the accompanying drawing, in which:
A layered master page is a specific virtual pasteboard, or specific area of a virtual pasteboard, in a page layout or illustration program where a user may place shapes to describe the elements of the layered master page. A layered master page is stored electronically or resides in memory apart from child pages of a document. This allows a user to describe layered master pages separately from child pages. In short, the layered master pages each have their own individual document context. In accordance with the present invention, one or more child pages can be based on, or reference, one or more layered master pages. The layered master page is a page object that has drawing objects that may be replicated across each child page associated with the layered master page. In accordance with the present invention, a child page is a page which inherits page information and object instances, in various layers, from a layered master page. Drawing objects may include, but are not limited to text objects, path objects, shape objects, image objects, effect objects, blend objects, clip objects, chart objects, imported file objects; extruded objects, page objects, guide objects, grid objects, and effect objects.
A document context, as used herein, is a special type of proxy (or surrogate) document that modifies the behavior of an original document, allowing the user to view and/or access different aspects of the document based on the “context”. This allows the user to access the document by proxy through different document contexts using the same processes regardless of the definition of the individual document context, while allowing the user to achieve different results by accessing different data based upon an individual document context. In accordance with the present invention a document context may contain data that overrides data in the original document.
As used herein, a symbol is a special object that can be repeatedly referenced in a document. A reference to a symbol used in a document is called a symbol instance. A layered master page is a special symbol which is associated with a special document context that contains one page and multiple layers in which different kinds of objects can be placed.
A symbol class defines the description of all the shapes associated with a symbol. This allows creation of instances that refer back to the symbol class to provide the aforementioned symbol instance. All the shape objects in a symbol class can be output to a device, whether it is a printer or a screen, at a particular location on a page, with any applied transformations on the output shape object. In a drawing document there may be multiple instances of one symbol class. The symbol class may reference vector objects, bitmap objects, or the like. Preferably, only instances are drawn. But the symbol class preferably contains all the information needed to describe all the shapes for each instance.
In accordance with the present invention when an item or a shape is inserted into a layer, a symbol instance refers back to the symbol class. Whereas, the symbol class resides in the document, or related data structure, symbol instances reside in the page or document layers, which then can be drawn as pages. Such use of symbol classes saves storage space and memory capacity and provides an ability to change one object and have the change propagate throughout all symbol instances. Also, this facilitates the use of layered master pages in accordance with the present invention, allowing illustration of the same object on multiple pages.
A master page layer symbol is a special symbol that contains references to all the objects in one layer in a layered master page document context. A master page layer symbol instance is an instance of a master page layer symbol, which will be placed in the child page in the document. The present invention leverages these symbol instances to provide objects on the child layers as instances of these master page layers, so that the child page relationship to the layered master page symbol is made via these instances.
The present invention applies symbol classes to define a layered master page. In accordance with the present invention a layered master page may be considered a special symbol class. A symbol class can be referenced in multiple cases using instances as described above. Similarly, master page elements may be referenced multiple times in accordance with the present invention. Thus, layered master pages are a special symbol class because the master page's symbol class is associated with a layered document so that a user may, for example, add an object to the master page symbol class and that addition applies to all child pages based on the layered master page. So the layer that is on a child page is a virtual copy of the layer on the master page. However, when editing the master page the child page objects are not seen. Conversely, when editing the child page, the layered master page objects are seen and may be rendered first.
In accordance with the present invention, every shape in a layer preferably resides in a context. This context may be a “document management system.” Therefore, in an embodiment of the present invention, an item may reside in the general document context while a second item may reside in a master page context. Preferably, this second item only exists in the master page. In accordance with the present invention, a user may interleave items that reside in multiple contexts. In this way, the present invention allows a user to interleave objects on a same layer, but the objects reside in separate contexts. Extending the example above, a first object may reside in a document, a second object may reside in a master page and a third object may reside in another master page, but the objects may all be interleaved together as the user desires. Furthermore, instances, which are also shapes or basic drawing objects, can reside in the document as well. Thusly, a master page layer class and a master page layer instance may reside in a single document.
In operation, all the items that are in, by way of example, layer one of master page one, are in a master page layer class that contains all of those items. Another master page class for all the items on layer two of master page one is maintained, and so on. So in accordance with the present invention, there is a master page class that exists for each one of the layers for each master page. So multiple master page layer classes result, one for each layer of each master page. Each child page has a master page layer instance for each one of the master page symbol classes, for the master page the child is based on. For example, if three child pages are based on master page one above, there will be one master page layer instance of master page one, layer one, for child page one; there will be one master page layer instance of master page one, layer one, for the second page that references master page one; and one master page layer instance of master page one, layer one, for child page three. Each child page will similarly have an instance associated with layer two of master page one. This results in a per layer, per master page, per child page hierarchy. Thus in accordance with the present invention, one embodiment enables object instances on one or more master page layers, or from more than one master page, to be interleaved among objects on a corresponding layer of one or more child pages. For example, instances of master page objects may be spatially positioned relative to child page objects on a corresponding, or same, layer through the use of arrange commands such as move to front, move to back, move back and move forward.
Conversely, in
Turning to
The user experience preferably sees a layered master page in a list of symbols for an active document. A layered master page in the list represents a master page symbol class. Preferably the layered master page from the list can be dropped on a page and the layered master page will be applied to the page making it a child page of the layered master page. That resultant child page is preferably based on the selected master page symbol class.
Turning to
Turning now to
In accordance with the present invention, layered master pages may be exported for use by other users of the present inventive illustration and page layout software. Export process 1200 for a layered master page is flow charted in
Although the present invention and its advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the invention as defined by the appended claims. Moreover, the scope of the present application is not intended to be limited to the particular embodiments of the process, machine, manufacture, composition of matter, means, methods and steps described in the specification. As one of ordinary skill in the art will readily appreciate from the disclosure of the present invention, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized according to the present invention. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps.
This application is a continuation application of U.S. Ser. No. 12/333,156 filed on Dec. 11, 2008, allowed, which is a continuation of U.S. Ser. No. 10/062,576 filed on Jan. 31, 2002, now U.S. Pat. No. 7,467,351, the contents of both of which are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
5469536 | Blank | Nov 1995 | A |
5873106 | Joseph | Feb 1999 | A |
6023715 | Burkes et al. | Feb 2000 | A |
6813746 | O'Shea | Nov 2004 | B1 |
7467351 | Spells et al. | Dec 2008 | B1 |
8020092 | Spells et al. | Sep 2011 | B1 |
20010026277 | Dorrell | Oct 2001 | A1 |
20030014442 | Shiigi et al. | Jan 2003 | A1 |
Entry |
---|
Microsoft Press Computer Dictionary, Third Edition, Copyright 1997 Microsoft Corp.; pp. 55, 88, 93, 170, 187, 222, 223, 245, 246, 349, 356, 432, 465. |
Mok Oh, et al., ‘Image-based modeling and photo editing,’ Proceedings of the 28th annual conference on Computer graphics and interactive techniques, published 2001, pp. 433-442. |
Peachpit Essential books for the creative community Informit network, ‘Macromedia FreeHand 10: Training from the Source,’ 03 pages, Copyright 2006. |
BooksInPrint.com™ Professional, ‘Macromedia Freehand 10: Training from the Source,’ (05 pages), Copyright 2005. |
Macromedia® Freehand® 10 Training From the Source, Macromedia Press, Tony Roame and Subir Choudhury, Table of Contents, pp. v-viii, 30-33, 62-68, 89, 94, 132, 144, 205-210, 229, 243-247, 269, 350, 457, Copyright 2002, Published by Macromedia Press, in association with Peachpit Press, a division of Pearson Education. |
U.S. Appl. No. 12/333,156, filed Dec. 11, 2008. |
Notice of Allowance dated Apr. 27, 2011 in parent U.S. Appl. No. 12/333,156. |
U.S. Appl. No. 10/062,576, filed Jan. 31, 2002. |
Office Action dated Apr. 20, 2005 in parent U.S. Appl. No. 10/062,576. |
Office Action dated Sep. 1, 2005 in parent U.S. Appl. No. 10/062,576. |
Office Action dated Dec. 23, 2005 in parent U.S. Appl. No. 10/062,576. |
Pre-Appeal Decision dated Apr. 3, 2006 in parent U.S. Appl. No. 10/062,576. |
Examiner Answer dated Aug. 9, 2006 in parent U.S. Appl. No. 10/062,576. |
BPAI Decision dated May 29, 2008 in parent U.S. Appl. No. 10/062,576. |
Notice of Allowance dated Aug. 15, 2008 in parent U.S. Appl. No. 10/062,576. |
Number | Date | Country | |
---|---|---|---|
Parent | 12333156 | Dec 2008 | US |
Child | 13224657 | US | |
Parent | 10062576 | Jan 2002 | US |
Child | 12333156 | US |