The present invention relates generally to computer-implemented automated electronic product design.
Many individuals, businesses, and organizations occasionally have a need for custom printed materials, such as business cards, party invitations, product or service brochures, promotional postcards, or any number of other items. Some of these individuals and businesses turn to sources such as a local print shop for assistance in preparing the materials. Others may attempt to create the product themselves using specialized software purchased and installed on a personal computer to design the product and using their local printer attached to their personal computer to perform the printing.
An increasingly popular alternative for obtaining these types of materials is the use of a Web-based printing service provider that takes advantage of the capabilities of the Web and modern Web browsers to provide document design services from any computer with Web access at whatever time and place is convenient to the user. Computerized systems typically provide their customers with the ability to access and view a wide range of pre-designed product templates, select a desired template, and enter information to create a customized product design. Typically, a user can add, modify, and position custom text and upload images to be added to the electronic product design. When a user is satisfied with the design of the product, the user can place an order with the printing service provider for the production of a desired quantity of high quality printed versions of the product to be delivered to the customer's home or business.
In another computer-related field, high quality mapping software is available from various vendors either online or on a CD or other media and mapping software applications have become common. Examples include mobile applications, like handheld and automotive map systems using global positioning technology, and commercial establishment applications, such as customized driving maps printed at car rental offices for individual customers. In the Web environment, various free services available on the Web, such as MapQuest.com and Yahoo.com, allow an individual to enter a street address and view a corresponding map. Tools to modify the displayed map by zooming or scrolling are also commonly provided. Businesses maintaining Web sites frequently incorporate access to a mapping service to display maps for stores and custom driving directions from an address entered by the user.
Printed business and promotional materials incorporating a map depicting the location of an office or a special event can provide an edge in a competitive business environment and be of significant value in assisting new and infrequent customers. There is, therefore, a need for an improved electronic product customization system that allows a user of a Web-based product design system to easily incorporate a high resolution customized map into a product design intended for subsequent printing.
The present invention is directed to satisfying the need for computer implemented systems and methods providing improved electronic product design tools that allow a user increased ability to select and control the colors used in a product being designed.
In accordance with the invention, in response to information identifying at least a location and received by a server from a user of a client computer system, the server makes a request for a high resolution map for that identified location. A lower resolution display map version is generated by the server from the high resolution map and transmitted to the client computer for viewing by a user engaged in creating an electronic product design at the client system. The user can incorporate at least a portion of the map into the electronic product design. The description of the electronic product design supplied from the client to the server identifies the portion of the map incorporated into the design by the user. A high resolution version of the identified map portion is associated with the electronic product design such that, when the product is subsequently printed, the map will be printed using the high resolution image.
It is an advantage of the invention that a custom map for a location specific to the user can be readily incorporated into the electronic design of a product.
Other objects, features, and advantages of the invention will be better understood with reference to the accompanying drawings, description, and claims.
Referring to
When UCS 100 is operating, an instance of the USC 100 operating system will be running, represented in
Memory 111 represents all components and subsystems that provide server data storage, such as RAM, ROM, and disk drives or arrays. Template memory 112 contains the layout information provided by the service provider to enable the creation and rendering of electronic product design templates at UCS 100. As used in this embodiment, a layout is an XML (extensible markup language) and VML (vector markup language) description that specifies the size, position, z-index, and other attributes of all product elements such as text containers, image containers, graphics, default fonts, default colors, and so forth. Technical details of XML and VML are publicly available from the World Wide Web Consortium at www.w3c.org. While the embodiment of the invention disclosed herein describes the use of XML and VML, it will be understood that other languages could be employed.
Image memory 113 represents the portion of memory 111 that contains the image content information and related attributes used in combination with the layouts to generate various product designs. In the embodiment discussed herein, image memory 113 will also contain multiple versions of any map or maps requested by the user. For the purpose of this discussion, the portions of memory 113 devoted to storing the map versions are identified as print image memory PI 115, display image memory DI 116, and thumbnail image memory TNI 117, but it will be understood that these are logical memory divisions and need not be physically separate memory areas.
This flexible template structure mentioned above allows the service provider to combine layouts and images to assemble custom templates in response to user inputs, such as keywords or other user preferences, and allows the user to select and modify or replace individual template components. Co-pending and co-owned U.S. application Ser. No. 10/646,554 entitled “Automated Image Resizing and Cropping”, filed Aug. 22, 2003, the complete contents of which are hereby incorporated by reference into this application, discloses electronic product creation and editing systems for combining separately stored content and layouts to create custom product designs.
Local map 114 is a commercially available mapping software program, for example MapPoint from Microsoft Corporation. Having the mapping software available at server 110 allows for rapid access to relatively high resolution map data so that the display image version of the map can be returned to UCS 100 for viewing without excessive delays. As an alternate embodiment, if performance requirements can be satisfied and adequate data transfer capacity is available, remotely located mapping software Network Map 150 could be employed.
As an illustrative example, it will be assumed that the user of UCS 100 desires to create a personalized business card and, therefore, selects the business card option, for example by clicking with the user's mouse cursor on the business cards 210 image. The user is then presented with one or more additional selection screens, not shown, from which the user can review the various business card categories organized, for example, by industry or general style. When a desired category is selected, the user can review one or more pages of thumbnail images of pre-designed business card templates prepared by the service provider. As an alternative to providing a large gallery of thumbnail template images for the user to scan, the service provider could provide a keyword searching tool to allow the service provider to display only thumbnails of templates with images or other content corresponding to the user's search terms. Each template will contain a different combination of features, such as colors, textures, images, fonts, and text arrangements.
Referring to
In the example shown in
As shown in
Each of the text fields shown in template 302, such as “Full Name” or “Address Line 1”, is a separate markup language text box pre-designed and positioned by the template designer. Each text box can be individually modified or repositioned. For users desiring to change fonts or font attributes, move text, or perform other customizing actions beyond merely entering text using the default font, edit tool bar 306 is provided. Edit Tool Bar 306 contains various buttons, controls, and menus allowing the user to add additional text boxes, insert text, change the font, change font attributes, and perform other typical editing actions. Text boxes and the techniques for designing and using edit tool bars are well known in the art.
It is not necessary that both edit tool bar 306 and text boxes 304 are provided to a user and, if both are provided, it is not necessary that they be provided simultaneously. A service provider could opt to provide only a single tool or, depending on the level of customizing capabilities the service provider desires to give to the user, the service provider may also choose to provide the user with one or more additional instructions, tools, or controls, not shown, to facilitate user editing of template 300, such as tools for changing the template layout, the design effects, or the font scheme. Co-pending and co-owned U.S. application Ser. No. 10/449,836 entitled “Electronic Document Modification”, filed May 20, 2003, the complete contents of which are hereby incorporated by reference into this application, describes a document editing system and method using separately selectable layouts, designs, color schemes and font schemes.
Navigation buttons back 308 and next 310 allow the user to move back to the previous display screen or ahead to the next. Different or additional navigation means could also be employed. When the user has entered the user's information for the business card and performed any other desired editing operations, the user can proceed to edit the backside of the card by clicking next button 310.
Referring to
To provide the user with the flexibility to select an appropriate backside of the card, the service provider makes various other backside templates available. In the disclosed embodiment, the user accesses the alternate backside choices by clicking on text button 404. Referring to
In the category of maps, three different backside thumbnail images 504, 506 and 508 are displayed for the user's review. The portion of the backside template that will be occupied by a map is indicated in
When the user clicks on the thumbnail of the desired backside map template, the user is presented with map function window 600, as shown in
Referring to
In the disclosed embodiment, zoom level drop down menu 708 is provided to allow the user to select among different zoom levels. The zoom level is initially set to a predetermined default level selected by the service provider and called “normal”. The “normal” level can be set by the service provider to any desired value that is supported by local map 114. At this point, the user can continue with generating a custom map at the default zoom level using the pre-filled address information by clicking next button 712 or can modify the displayed address or the zoom level as desired before proceeding with map generation.
When the user clicks next 712, design tool 106 sends the address line contents and zoom level information to server 110 together with map container information. The map container information could be, for example, the height and width of the map container in the template or a container identifier established by the service provider that enables the server to determine the height to width ratio of the map image container. At server 110, the server structures a map request to local map 114 using the address and the zoom level. The map request is also structured such that the resulting map returned by local map 114 will have sufficient information to provide a printable image of high quality, typically 300 dots per inch or greater, when the map image is placed in the template map container and will have a height to width ratio that is substantially the same as the height to width ratio of the map container in the template.
If local map 114 is unable to recognize the supplied information as a valid address, local map 114 will return an error message to server 110 which will notify design tool 106 and cause a user message, not shown, to be displayed, such as “Could not generate map. Please make sure the address below is correct.” The user can then review and make any required corrections to the address in address fields 702, 704 and 706 or, if the address is correct and a map is for some reason not available, the user can return to the display of
If a map corresponding to the submitted address is successfully returned by local map 114, the returned map is stored by server 110 in print image memory 115 as a high resolution map version to be used as the source of the product map during subsequent printing of the product. A lower resolution version of the map suitable for displaying to the user, typically at 72 dpi, is generated by server 110 from the returned user map and transmitted to UCS 100. The lower resolution version is stored in image memory 113 in display image memory 116 for possible future use. A smaller thumbnail version of the map is also created and stored in thumbnail image memory 117 for possible future use, as discussed below.
Referring now to
Crop box 804 is displayed over image 802. The operation of crop boxes is well known. The portion of image 802 inside of crop box 804 will be the portion of the map image that will be incorporated into template 402. As a default, the crop box is initially established to be smaller than the total available map 502. The user can reposition the crop box by positioning the user's mouse over the crop box and executing a drag-and-drop operation. The user can also, if desired, resize crop box 804 by using the mouse to grab one of the four resizing handles 806, 808, 810 and 812 located at the corners of the box and dragging the handle in a substantially diagonal motion to either enlarge or reduce the box size. The height to width ratio of crop box 804 is locked by the system to be the same as the map area of the selected backside template. The user can resize the box using the corner handles, but, regardless of the manner in which the user attempts to move the user's mouse, any resizing will be constrained by the system to maintain a constant height to width ratio. Co-pending and co-owned application Ser. No. 10/713,446 entitled “Image Cropping System and Method”, which is hereby incorporated by reference in its entirety, discloses crop boxes having locked height to width ratios that correspond to the height and width ratio of the associated image area in a product template.
The user can repeat repositioning and resizing operations as often as desired until the desired portion of image 802 is inside of box 804. If the user desires to change the zoom level of image 802, the user can select back button 814, return to
When the user is satisfied with the zoom level and the portion of image 802 contained in crop box 804, the user can select next button 816. This return the user to the backside editing screen depicted in
If the user desires to change the backside again, the user can select choose a different backside button 404 to cause window 500 to be displayed or can position the mouse cursor over the map area of template 402 and double click. Executing a double click operation while positioned over the map area will cause map options window 600 to be displayed again. As mentioned above, window 600 offers the user three options. If the user selects create new map 602, the map generation process will repeat as discussed above in connection with
As indicated in
It will be appreciated that the sequence of steps, options, and windows described above is but one possible way of implementing the invention. More, fewer, or different steps, options, and windows could be employed depending on the number and variety of map customization options the service provider desires to provide to the user. For example, in a business card application, instead of displaying generic map area indicators in
Various illustrative embodiments have been discussed, but other alternate embodiments could also be employed. Therefore, the described embodiments are to be considered as illustrative rather than restrictive and the scope of the invention is as indicated in the following claims and all equivalent methods and systems.