US20100169767A1 - Method and apparatus for processing layout and storage medium - Google Patents

Method and apparatus for processing layout and storage medium Download PDF

Info

Publication number
US20100169767A1
US20100169767A1 US12/560,979 US56097909A US2010169767A1 US 20100169767 A1 US20100169767 A1 US 20100169767A1 US 56097909 A US56097909 A US 56097909A US 2010169767 A1 US2010169767 A1 US 2010169767A1
Authority
US
United States
Prior art keywords
content
contents
priority
content placement
placement region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US12/560,979
Other versions
US8375298B2 (en
Inventor
Taisuke Ishiguro
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Assigned to CANON KABUSHIKI KAISHA reassignment CANON KABUSHIKI KAISHA ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ISHIGURO, TAISUKE
Publication of US20100169767A1 publication Critical patent/US20100169767A1/en
Application granted granted Critical
Publication of US8375298B2 publication Critical patent/US8375298B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3872Repositioning or masking
    • H04N1/3873Repositioning or masking defined only by a limited number of coordinate points or parameters, e.g. corners, centre; for trimming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Definitions

  • the present invention relates to a method for associating layout contents with templates in accordance with the priority levels (priority attributes) of the contents.
  • Known examples of document layout processing technology include a technology for automatically laying out the contents of a document in a template in accordance with predetermined layout rules.
  • the automatic layout technology executes a layout process by using contents and a template having content placement regions and associating the contents with the content placement regions.
  • Such an automatic layout technology is utilized by a system typified by a variable print system and is broadly used in the field of one-to-one marketing.
  • One of the objects of the automatic layout technology is to create documents customized for individual customers to respond to customer needs.
  • a technology of setting priority levels to a template in the automatic layout process This technology allows a content to be placed in a content placement region given priority to be displayed larger than that placed in the other content placement regions (Japanese Patent Laid-Open No. 2007-122487).
  • the use of a large number of templates is used to present a large number of layout results.
  • the automatic generation of a template is often adopted to prevent storage of a large number of templates or to generate much more layout results.
  • the present invention easily achieves a layout process using priority.
  • the present invention provides a method for executing a layout process using a template having a plurality of content placement regions and contents to be placed in the content placement regions.
  • the method includes a setting step of setting at least one content a priority attribute indicating that the content is larger in size than the other contents; a first selecting step of selecting one content placement region in which the plurality of other contents to which the priority attribute is not set are to be placed from the plurality of content placement regions; a first placing step of placing the plurality of other contents in the one content placement region selected in the first selecting step, without changing the aspect ratios of the plurality of other contents, in the placement direction set for the content placement region; a second selecting step of selecting a priority-content placement region different from the content placement region selected in the first selecting step so that the priority content to which the priority attribute is set is larger in size than the other contents; and a second placing step of placing the priority content in the one content placement region selected in the first selecting step without changing the aspect ratio thereof.
  • FIG. 1 is a diagram showing a network system configuration according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an apparatus configuration according to the embodiment of the present invention.
  • FIG. 3 is a diagram illustrating the outline of a layout process according to the embodiment of the present invention.
  • FIG. 4 is a functional block diagram of the embodiment of the present invention.
  • FIG. 5 is a flowchart showing the outline of the overall process according to the embodiment of the present invention.
  • FIG. 6 is a diagram showing examples of a template according to the embodiment of the present invention.
  • FIG. 7 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 8 is a diagram showing examples of content data according to the embodiment of the present invention.
  • FIGS. 9A and 9B show examples of a layout result according to the embodiment of the present invention.
  • FIG. 10 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 11 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 12 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 13 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 14 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 15 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 16 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 17 is a flowchart showing the process of associating a template and contents according to the embodiment of the present invention.
  • FIG. 18 is a diagram showing an example of an association table according to the embodiment of the present invention.
  • FIG. 19 is a diagram showing an example of a template table according to the embodiment of the present invention.
  • FIG. 20 is a diagram showing an example of a content data table according to the embodiment of the present invention.
  • FIG. 21 is a diagram showing an example of a template management table according to the embodiment of the present invention.
  • FIG. 22 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 23 is a diagram showing examples of content data according to the embodiment of the present invention.
  • FIG. 24 is a diagram showing an example of an association table according to the embodiment of the present invention.
  • FIG. 25 is a diagram showing an example of the association table according to the embodiment of the present invention.
  • FIG. 26 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 27 is a diagram showing examples of a layout result according to the embodiment of the present invention.
  • FIG. 28 is a diagram showing examples of contents according to the embodiment of the present invention.
  • FIG. 29 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 30 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 1 is a diagram showing a network system constituted of information processing apparatuses according to an embodiment of the present invention.
  • the network system includes a plurality of information processing apparatuses connected over a network 102 serving as a transmission medium for various data.
  • the network 102 may be a local area network (LAN), such as Ethernet (a trademark), or a wide-area information network, such as the Internet.
  • the information processing apparatuses 1 to 5 are connected together via a communication apparatus 208 to be described later in FIG. 2 .
  • FIG. 2 is a diagram showing the hardware configuration of an information processing apparatus according to the embodiment of the present invention.
  • a microprocessor central processing unit (CPU) 201 performs operations, logical decision, etc. for various processes and controls the components through a bus 209 .
  • a permanent read only memory (ROM) 202 stores program codes of a layout control program etc. to be executed.
  • a writable random access memory (RAM) 203 is used to temporarily store various data from the components.
  • An input device 204 corresponds to a mouse, a keyboard, etc. used for inputting information (data).
  • Reference numeral 205 denotes a display, such as a CRT or a liquid crystal panel.
  • a display controller 206 controls the display of dot display patterns and a cursor.
  • An external storage 207 stores various information. Examples of the storage medium to store such data and programs are a ROM, a CD-ROM, a DVD-ROM, etc.
  • a communication unit 208 connects to a network, such as Ethernet, to connect the plurality of information processing apparatuses in the network system.
  • the information processing apparatuses made up of such components operate in accordance with input from the input device 204 or input over a network provided by the communication apparatus 208 .
  • an interrupt signal is sent to the CPU 201 .
  • the CPU 201 reads various control signals stored in the external storage 207 and performs various controls in accordance with the control signals.
  • the present invention can also be achieved such that a storage medium that stores a layout control program according to an embodiment of the present invention read is provided to a system or apparatus, and the computer of the system or apparatus executes the program code stored in the storage medium.
  • FIG. 3 is a diagram illustrating the outline of a layout process according to this embodiment.
  • Reference numeral 301 denotes a group of layout contents.
  • Reference numeral 302 denotes a content given priority (priority attribute) among the group of contents.
  • the priority is designated by the user.
  • the content given the priority (priority attribute) is displayed larger than contents given no priority.
  • the content given priority is defined as a priority content.
  • a layout processing apparatus 303 performs a layout process using the contents 301 and templates 304 .
  • Reference numeral 305 denotes the results of layout performed by the layout processing apparatus 303 .
  • the content 302 given the priority attribute is displayed larger than the other contents in the layout results 305 .
  • the user selects a desired layout result from the plurality of layout results 305 and prints or stores it.
  • FIG. 4 is a functional block diagram of this embodiment.
  • the layout processing apparatus 303 includes an input unit 401 , an output unit 402 , a template storage unit 403 , a template selection unit 404 , a content associating unit 405 , and a layout unit 406 .
  • the input unit 401 receives user's operating instructions, such as designation of a content, setting of a priority attribute, and selection of a layout, and input of various data, such as contents.
  • the output unit 402 displays the results of layout, a mouse pointer for a user instruction, etc.
  • the template storage unit 403 stores templates. The templates will be described later with reference to FIG. 6 .
  • the template selection unit 404 selects a template from the template storage unit 403 .
  • the selection of a template is performed depending on the number of contents.
  • the correspondence between the number of contents and templates is defined on a template table shown in FIG. 19 , for example.
  • the content associating unit 405 associates a template selected by the template selection unit 404 and a content designated by the input unit 401 .
  • the layout unit 406 performs a layout process on the basis of the template selected by the template selection unit 404 and the content associated by the content associating unit 405 .
  • the outline of the layout process will be described with reference to FIGS. 7 to 16 .
  • FIG. 5 is a flowchart showing the outline of the process of this embodiment. The steps of the flowchart of the present application are achieved by the CPU 201 reading a program for executing the flowchart from a memory and executing it.
  • step S 5000 the input unit 401 designates a layout target content. Data related to the designated content is stored in a content-data table.
  • the content-data table will be described with reference to FIG. 20 .
  • step S 5001 the input unit 401 sets a priority attribute to the content designated in step S 5000 .
  • the result of setting is reflected to the content-data table in FIG. 20 .
  • step S 5002 the template selection unit 404 selects a template for performing a layout process.
  • step S 5003 the content associating unit 405 associates the content designated in step S 5000 with the template selected in step S 5002 .
  • the details of the content associating process will be described with reference to FIG. 17 .
  • step S 5004 the layout unit 406 executes a layout process on the basis of information on the template-content association executed in step S 5003 .
  • step S 5005 the output unit (display control unit) 402 outputs (displays) the results of the layout process in step S 5004 .
  • An example of the results of the process in step S 5005 is the layout results 305 in FIG. 3 .
  • step S 5005 the input unit 401 selects a layout result from the layout results in step 5005 in accordance with user's instruction and outputs it, such as printing.
  • FIG. 6 is a diagram showing examples of the template of this embodiment.
  • the templates shown in FIG. 6 are composed of a plurality of content placement regions 601 ; however, it may include only one content placement region.
  • various templates can be defined depending on the combination of the content placement regions 601 .
  • a plurality of contents can be placed, in which directions in which the contents are placed (content placement directions 602 ) are defined.
  • the layout process of this embodiment places contents in content placement regions in such a manner as to keep an aspect ratio of the contents without space.
  • FIGS. 9A and 9B show that the content placement region of the template is changed in accordance with the aspect ratios of the contents 801 and 802 .
  • FIG. 10 shows that the aspect ratios of the two contents 801 and 802 are kept.
  • the layout result shown ion FIG. 12 is given.
  • the aspect ratios of the located contents are kept irrespective of the content placement direction.
  • the lateral size of a content placement region whose the content placement direction is vertical corresponds to the lateral size of content data that is first placed in the content placement region. That is, in FIG. 12 , the lateral size of the content 801 corresponds to the lateral size of the content placement region in FIG. 12 .
  • the vertical size of a content placement region whose content placement direction is lateral corresponds to the vertical size of content data that is first placed in the content placement region.
  • FIG. 13 shows an example of a template constructed of a plurality of content placement regions.
  • the content 801 and the content 802 are placed in a content placement region 1301 , and a content 803 is placed in a content placement region 1302 , they are placed such that the aspect ratios of the contents are kept, so that the layout result in FIG. 14 is given.
  • FIG. 16 shows the layout result of the case where the content 801 and the content 802 are placed in a content placement region 1501 of the template in FIG. 15 , and the content 803 is placed in a content placement region 1502 .
  • FIG. 17 is a flowchart showing the process of associating a template and contents in this embodiment.
  • step S 17000 the content associating unit 405 generates a template management table to manage information on a selected template.
  • the selected template is the template selected in step S 5002 in FIG. 5 .
  • the template management table lists template ID 2101 , association table ID 2102 , and process end flag 2103 .
  • the template ID 2102 is a numeral that identifies a template, with which access to the template is obtained.
  • the association table ID 2102 is an ID that specifies a table on which a combination of a template and corresponding content data is defined.
  • the association table ID 2102 will be described with reference to FIG. 18 .
  • the process end flag 2103 is a flag indicating completion of generation of an association table for the template.
  • the content associating unit 405 specifies a target template with reference to the template management table generated in step S 17000 .
  • the content associating unit 405 selects a template whose process end flag is not valid with reference to the template ID in ascending order and generates an association table for managing association of the content placement regions in the template with the content data on the basis of the selected template.
  • the association table includes table ID 1801 , region No. 1802 , and corresponding content No. 1803 .
  • the table ID 1801 is an ID for identifying a generated association table.
  • the region No. 1802 is used to specify the content placement regions in the template and to indicate the correspondence between the content placement regions and the contents.
  • the corresponding content No. 1803 indicates the numbers of the contents placed in the content placement regions.
  • the content No. is associated with the content No. on the content data table, which allows access to the corresponding content using the corresponding content No.
  • the content data table will be described later with reference to FIG. 20 .
  • step S 17002 the content associating unit 405 selects one of the content placement regions in the template and places a priority content in the selected content placement region.
  • the selection of the content placement region is made on the basis of priority-content placement information.
  • the priority-content placement information has an initial value 1, which is changed by a later process.
  • a region in which the priority content is to be placed is a region whose region No. on the association table is 1 .
  • the priority content is placed in the content placement region of region No. 2 on the association table.
  • the result of the placement of the priority content is described in the association table.
  • the association table is generated as shown in FIG. 18 .
  • Contents to be placed in the template in FIG. 22 are nine items of data shown in FIG. 23 , and the priority attribute indicating that it is placed with priority is set to content No. 1 (content 2301 ).
  • step S 17003 the content associating unit 405 derives conditions (numerical expressions) for the priority content to be displayed larger than the other contents (contents to which the priority attribute is not set).
  • the content associating unit 405 derives conditions for determining which content data is to be placed in which content placement region so that the priority content is displayed larger than the other contents (contents to which the priority attribute is not set). For example, in the case where one priority content is placed in a content placement region 1 , the content associating unit 405 mathematically expresses how many contents should be placed in content placement regions 2 and 3 to maximize the size of the priority content placed in the content placement region 1 .
  • the priority content can be displayed large with reference to the content placement directions of the content placement regions in which no priority content is placed.
  • the determination if it is determined that the priority content can be displayed large, conditions for displaying the priority content larger than the other contents are mathematically expressed. In contrast, if it is determined that the priority content cannot be displayed large, information indicating that mathematization is of no use is defined. In the case where the content placement direction of a content placement region in which no priority content is placed is vertical, this determination method determines whether a content placement region in which a priority content is placed is present on the right or left of the content placement region.
  • this determination method determines whether a content placement region in which a priority content is placed is present on or under the content placement region. If this determination is No, it is determined that the priority content cannot be displayed large.
  • the content placement direction of the content placement region 2 in which no priority content is placed is vertical, and the content placement region 1 in which the priority content is placed is present on the left of the content placement region 2 . That is, as the content placement region 2 expands by placing contents in the content placement region 2 , the content placement region 1 in which the priority content is placed is expanded. Such a case corresponds to the case in which the priority content can be displayed large.
  • the size of the contents in the region 2 may become smaller than that placed in the region 1 . Since one content is placed in the content placement region 1 , the number of the contents placed in the content placement region 2 can be expressed as, 1 ⁇ (the number of contents in the region 2 ) . . . Ex. (1).
  • the width of the content placement region 3 is equal to the sum of the widths of the region 1 and the region 2 . That is, the widths of the content placement regions 1 and 2 influence on the size of the content placement region 3 .
  • the content placement region 1 has only one priority content.
  • the content placement region 2 should have a plurality of contents, but the width of the region 2 is not influenced by the number of the contents (since the content placement direction of the region 2 is vertical, the lateral size does not influence on the number of the contents).
  • the content placement region 3 is influenced by the two content placement regions 1 and 2 and does not depend on the number of the contents in the content placement region 2 . That is, the content placement region 3 is influenced by the number of content placement regions.
  • it can be expressed as 2 ⁇ (the number of contents in the content placement region 3 ) . . . Ex. (2).
  • step S 17004 the content associating unit 405 calculates the numbers of contents to be placed in the individual content placement regions from the expressions derived in step S 17003 .
  • the relation, 1 ⁇ (the number of contents in the region 2 ) ⁇ 6, and the relation, 2 ⁇ (the number of contents in the region 3 ) ⁇ 7, can be derived from the expressions (1), (2), and (3) exemplified in step S 17003 .
  • step S 17005 the content associating unit 405 determines whether the numbers of contents could be calculated in step S 17004 .
  • a case in which the number of contents could not be calculated corresponds to a case in which information indicating that mathematization is of no use is defined in step S 17003 .
  • step S 17006 the content associating unit 405 determines contents to be placed in the individual content placement regions on the basis of the numbers of contents calculated in step S 17004 .
  • Content data to be placed in the individual content placement regions is associated at random using a random-number generating algorithm.
  • the contents are placed under the constraints to the numbers of contents to be placed in the individual content placement regions.
  • Information on the associated contents is stored in the association table.
  • step S 17006 an association table, as shown in FIG. 25 , is generated. While the layout process itself will be described later, the layout result of FIG. 25 will be shown in FIG. 26 for the purpose of explanation. As can be seen in FIG. 26 , the content given the priority attribute is displayed large.
  • this embodiment adopts random association using random-number generation
  • a method of association in order of content No. may be used. Furthermore, all patterns conforming to the constraints on the numbers of contents may be generated.
  • step S 17007 the content associating unit 405 makes a determination for all the content placement regions whether the priority content has been placed using the priority-content placement information. This determination is made by comparing the value of the priority-content placement information and the maximum value of the region Nos. on the association table. If the value of the priority-content placement information and the maximum value of the region Nos. on the association table are equal, the content associating unit 405 determines that the determination whether the priority content has been placed was made for all the content placement regions and moves to step S 17008 . If the content associating unit 405 determines that no priority content is placed in all the content placement regions, value 1 is added to the priority-content placement information and returns to step S 17000 .
  • step S 17008 the content associating unit 405 determines whether the process on all the templates defined on the template management table has been completed. If the process has been completed on all the templates, the process is terminated. If the process has not been completed on all the templates, the value of the priority-content placement information is initialized to 1, and the process end flags of the target templates are made valid, and the process returns to step S 17000 . Here, the process end flags are on the template management table.
  • the foregoing content associating process is terminated when the number of associated contents cannot be calculated. If it cannot be calculated, the content placement direction of the template may be changed. By changing the content placement direction of the template, the expressions generated in step S 17003 can be changed to cope therewith.
  • FIG. 27 shows examples of the layout result in the case where the number of contents given the priority attribute is increased to two in the example shown in the foregoing process flow.
  • FIG. 19 is a diagram showing an example of the template table of this embodiment.
  • the template table includes number-of-content 1901 and template ID 1902 and defines the relationship between the number of contents and templates.
  • the number of contents is 1, templates in which a priority content can be displayed larger than the other contents are templates having template IDs 1 , 3 , 4 , 10 , . . . .
  • FIG. 20 is a diagram showing an example of the content data table of this embodiment.
  • the content data table includes content No. 2001 , content width 2002 , content height 2003 , content attribute 2004 , and path 2005 to actual content data on the system.
  • the content No. 2001 is a unique numeral for identifying content data.
  • the content width 2002 and height 2003 express the width and height of content data in pixels.
  • the priority attribute 2004 indicates content-placement priority-attribute information, which is set to 1 for setting a priority attribute, and 0 for setting no priority attribute.
  • this embodiment allows the size of a content given a priority attribute to be displayed larger than that of a content given no priority attribute even if contents and templates are not associated with each other in advance.
  • the priority attribute can be utilized even if it is difficult to associate contents with a large number of templates in advance as in the layout process shown in this embodiment.
  • This embodiment can make the most of the priority attribute while minimizing the processing load.
  • the present invention can also be applied to automatic template generation.
  • the layout process that utilizes the priority attribute can be achieved.
  • the present invention uses the number of contents to select a template, another method may be adopted.
  • the present invention can also adopt a method of analyzing contents and selecting a template on the basis of the analysis.
  • FIG. 30 shows a processing result when the priority content 2801 is associated with a content placement region 2901 .
  • the content 2801 is 50 long by 50 wide
  • the content 2802 is 25 long by 50 wide
  • the content 2803 is 1 long by 100 wide.
  • FIG. 30 shows that the other content 2802 is larger than the priority content 2801 , so that a desired result is not given. This is caused by the excessive difference between the length and width of the content 2802 .
  • the process in FIG. 17 is not executed but an error process is executed.
  • a concrete example of the error process is displaying an error message indicating that the priority content cannot be output in a size larger than the other contents.
  • the layout process may be executed so that the size of the priority content becomes the maximum by this process.
  • the content associating unit 405 determines whether the priority content is larger than the other contents, in which if it is determined to be larger, the process moves to step S 17007 . In contrast, if the content associating unit 405 determines that the priority content is smaller than the other contents, this layout process is cancelled and returns to step S 17000 .
  • the present invention allows a content given a high priority level to be displayed large.
  • the present invention can be achieved also by executing the process below. That is, software (program) for achieving the functions of the above-described embodiment is supplied to a system or apparatus over a network or various storage media, and the computer (or CPU, MPU, etc.) of the system or apparatus reads the program and executes it. In this case, the program and the storage media that store the program constitute the present invention.

Abstract

A plurality of other contents are placed in one content placement region so that a priority content to which a priority attribute is set is displayed larger than the other contents to which the priority attribute is not set.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to a method for associating layout contents with templates in accordance with the priority levels (priority attributes) of the contents.
  • 2. Description of the Related Art
  • Known examples of document layout processing technology include a technology for automatically laying out the contents of a document in a template in accordance with predetermined layout rules.
  • The automatic layout technology executes a layout process by using contents and a template having content placement regions and associating the contents with the content placement regions.
  • Such an automatic layout technology is utilized by a system typified by a variable print system and is broadly used in the field of one-to-one marketing.
  • One of the objects of the automatic layout technology is to create documents customized for individual customers to respond to customer needs. To achieve this object, a technology of setting priority levels to a template in the automatic layout process. This technology allows a content to be placed in a content placement region given priority to be displayed larger than that placed in the other content placement regions (Japanese Patent Laid-Open No. 2007-122487).
  • However, for the above-described known layout process using priority, it is necessary that the template and the contents are associated. Therefore, in a situation in which the association of a template and contents cannot be made in advance, a layout process using priority cannot be made. Examples of the situation in which the association of a template and contents cannot be made in advance include a case in which a large number of templates are used and a case in which a template is automatically generated.
  • The use of a large number of templates is used to present a large number of layout results. The automatic generation of a template is often adopted to prevent storage of a large number of templates or to generate much more layout results. In other words, to present a large number of layout results or to automatically generate a template, it is difficult to perform a layout process utilizing priority setting.
  • SUMMARY OF THE INVENTION
  • The present invention easily achieves a layout process using priority.
  • The present invention provides a method for executing a layout process using a template having a plurality of content placement regions and contents to be placed in the content placement regions. The method includes a setting step of setting at least one content a priority attribute indicating that the content is larger in size than the other contents; a first selecting step of selecting one content placement region in which the plurality of other contents to which the priority attribute is not set are to be placed from the plurality of content placement regions; a first placing step of placing the plurality of other contents in the one content placement region selected in the first selecting step, without changing the aspect ratios of the plurality of other contents, in the placement direction set for the content placement region; a second selecting step of selecting a priority-content placement region different from the content placement region selected in the first selecting step so that the priority content to which the priority attribute is set is larger in size than the other contents; and a second placing step of placing the priority content in the one content placement region selected in the first selecting step without changing the aspect ratio thereof.
  • Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a diagram showing a network system configuration according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an apparatus configuration according to the embodiment of the present invention.
  • FIG. 3 is a diagram illustrating the outline of a layout process according to the embodiment of the present invention.
  • FIG. 4 is a functional block diagram of the embodiment of the present invention.
  • FIG. 5 is a flowchart showing the outline of the overall process according to the embodiment of the present invention.
  • FIG. 6 is a diagram showing examples of a template according to the embodiment of the present invention.
  • FIG. 7 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 8 is a diagram showing examples of content data according to the embodiment of the present invention.
  • FIGS. 9A and 9B show examples of a layout result according to the embodiment of the present invention.
  • FIG. 10 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 11 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 12 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 13 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 14 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 15 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 16 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 17 is a flowchart showing the process of associating a template and contents according to the embodiment of the present invention.
  • FIG. 18 is a diagram showing an example of an association table according to the embodiment of the present invention.
  • FIG. 19 is a diagram showing an example of a template table according to the embodiment of the present invention.
  • FIG. 20 is a diagram showing an example of a content data table according to the embodiment of the present invention.
  • FIG. 21 is a diagram showing an example of a template management table according to the embodiment of the present invention.
  • FIG. 22 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 23 is a diagram showing examples of content data according to the embodiment of the present invention.
  • FIG. 24 is a diagram showing an example of an association table according to the embodiment of the present invention.
  • FIG. 25 is a diagram showing an example of the association table according to the embodiment of the present invention.
  • FIG. 26 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • FIG. 27 is a diagram showing examples of a layout result according to the embodiment of the present invention.
  • FIG. 28 is a diagram showing examples of contents according to the embodiment of the present invention.
  • FIG. 29 is a diagram showing an example of a template according to the embodiment of the present invention.
  • FIG. 30 is a diagram showing an example of a layout result according to the embodiment of the present invention.
  • DESCRIPTION OF THE EMBODIMENT
  • An embodiment of the present invention will be described hereinbelow in detail.
  • FIG. 1 is a diagram showing a network system constituted of information processing apparatuses according to an embodiment of the present invention. The network system includes a plurality of information processing apparatuses connected over a network 102 serving as a transmission medium for various data. The network 102 may be a local area network (LAN), such as Ethernet (a trademark), or a wide-area information network, such as the Internet. The information processing apparatuses 1 to 5 are connected together via a communication apparatus 208 to be described later in FIG. 2.
  • FIG. 2 is a diagram showing the hardware configuration of an information processing apparatus according to the embodiment of the present invention.
  • A microprocessor central processing unit (CPU) 201 performs operations, logical decision, etc. for various processes and controls the components through a bus 209.
  • A permanent read only memory (ROM) 202 stores program codes of a layout control program etc. to be executed.
  • A writable random access memory (RAM) 203 is used to temporarily store various data from the components.
  • An input device 204 corresponds to a mouse, a keyboard, etc. used for inputting information (data).
  • Reference numeral 205 denotes a display, such as a CRT or a liquid crystal panel. A display controller 206 controls the display of dot display patterns and a cursor.
  • An external storage 207 stores various information. Examples of the storage medium to store such data and programs are a ROM, a CD-ROM, a DVD-ROM, etc.
  • A communication unit 208 connects to a network, such as Ethernet, to connect the plurality of information processing apparatuses in the network system.
  • The information processing apparatuses made up of such components operate in accordance with input from the input device 204 or input over a network provided by the communication apparatus 208. When the input from the input device 204 or the input from the communication apparatus 208 is provided, an interrupt signal is sent to the CPU 201. The CPU 201 reads various control signals stored in the external storage 207 and performs various controls in accordance with the control signals.
  • The present invention can also be achieved such that a storage medium that stores a layout control program according to an embodiment of the present invention read is provided to a system or apparatus, and the computer of the system or apparatus executes the program code stored in the storage medium.
  • FIG. 3 is a diagram illustrating the outline of a layout process according to this embodiment.
  • Reference numeral 301 denotes a group of layout contents. Reference numeral 302 denotes a content given priority (priority attribute) among the group of contents. The priority is designated by the user. The content given the priority (priority attribute) is displayed larger than contents given no priority. In the present application, the content given priority is defined as a priority content.
  • A layout processing apparatus 303 performs a layout process using the contents 301 and templates 304. Reference numeral 305 denotes the results of layout performed by the layout processing apparatus 303.
  • The content 302 given the priority attribute is displayed larger than the other contents in the layout results 305. The user selects a desired layout result from the plurality of layout results 305 and prints or stores it.
  • FIG. 4 is a functional block diagram of this embodiment. As shown in FIG. 4, the layout processing apparatus 303 includes an input unit 401, an output unit 402, a template storage unit 403, a template selection unit 404, a content associating unit 405, and a layout unit 406.
  • The input unit 401 receives user's operating instructions, such as designation of a content, setting of a priority attribute, and selection of a layout, and input of various data, such as contents.
  • The output unit 402 displays the results of layout, a mouse pointer for a user instruction, etc.
  • The template storage unit 403 stores templates. The templates will be described later with reference to FIG. 6.
  • The template selection unit 404 selects a template from the template storage unit 403. The selection of a template is performed depending on the number of contents.
  • The correspondence between the number of contents and templates is defined on a template table shown in FIG. 19, for example.
  • The content associating unit 405 associates a template selected by the template selection unit 404 and a content designated by the input unit 401.
  • The process of the content associating unit 405 will be described with reference to FIG. 17.
  • The layout unit 406 performs a layout process on the basis of the template selected by the template selection unit 404 and the content associated by the content associating unit 405. The outline of the layout process will be described with reference to FIGS. 7 to 16.
  • The processes of the above-described units are achieved by the CPU 201.
  • FIG. 5 is a flowchart showing the outline of the process of this embodiment. The steps of the flowchart of the present application are achieved by the CPU 201 reading a program for executing the flowchart from a memory and executing it.
  • In step S5000, the input unit 401 designates a layout target content. Data related to the designated content is stored in a content-data table. The content-data table will be described with reference to FIG. 20.
  • In step S5001, the input unit 401 sets a priority attribute to the content designated in step S5000. The result of setting is reflected to the content-data table in FIG. 20.
  • In step S5002, the template selection unit 404 selects a template for performing a layout process.
  • In step S5003, the content associating unit 405 associates the content designated in step S5000 with the template selected in step S5002. The details of the content associating process will be described with reference to FIG. 17.
  • In step S5004, the layout unit 406 executes a layout process on the basis of information on the template-content association executed in step S5003.
  • In step S5005, the output unit (display control unit) 402 outputs (displays) the results of the layout process in step S5004. An example of the results of the process in step S5005 is the layout results 305 in FIG. 3.
  • After step S5005, the input unit 401 selects a layout result from the layout results in step 5005 in accordance with user's instruction and outputs it, such as printing.
  • FIG. 6 is a diagram showing examples of the template of this embodiment. The templates shown in FIG. 6 are composed of a plurality of content placement regions 601; however, it may include only one content placement region.
  • As shown in FIG. 6, various templates can be defined depending on the combination of the content placement regions 601.
  • In the content placement regions 601, a plurality of contents can be placed, in which directions in which the contents are placed (content placement directions 602) are defined.
  • Next, the outline of the layout process will be described with reference to FIGS. 7 to 16.
  • The layout process of this embodiment places contents in content placement regions in such a manner as to keep an aspect ratio of the contents without space.
  • Concrete examples of the layout results obtained by the layout process using the template in FIG. 7 and the contents in FIG. 8 will be illustrated.
  • In the case where contents 801 and 802 in FIG. 8 are individually placed in the template in FIG. 7, the layout results are as shown in FIGS. 9A and 9B. FIGS. 9A and 9B show that the content placement region of the template is changed in accordance with the aspect ratios of the contents 801 and 802.
  • On the other hand, in the case where the content 801 and the content 802 are placed in the content placement region of the template in FIG. 7, the layout result shown in FIG. 10 is given. FIG. 10 shows that the aspect ratios of the two contents 801 and 802 are kept.
  • In the case where the content 801 and the content 802 are placed in the template in FIG. 11 whose content placement direction is different from the template in FIG. 7, the layout result shown ion FIG. 12 is given. The aspect ratios of the located contents are kept irrespective of the content placement direction. The lateral size of a content placement region whose the content placement direction is vertical corresponds to the lateral size of content data that is first placed in the content placement region. That is, in FIG. 12, the lateral size of the content 801 corresponds to the lateral size of the content placement region in FIG. 12. On the other hand, the vertical size of a content placement region whose content placement direction is lateral corresponds to the vertical size of content data that is first placed in the content placement region.
  • FIG. 13 shows an example of a template constructed of a plurality of content placement regions.
  • In the case where the content 801 and the content 802 are placed in a content placement region 1301, and a content 803 is placed in a content placement region 1302, they are placed such that the aspect ratios of the contents are kept, so that the layout result in FIG. 14 is given.
  • On the other hand, FIG. 16 shows the layout result of the case where the content 801 and the content 802 are placed in a content placement region 1501 of the template in FIG. 15, and the content 803 is placed in a content placement region 1502.
  • FIG. 17 is a flowchart showing the process of associating a template and contents in this embodiment.
  • In step S17000, the content associating unit 405 generates a template management table to manage information on a selected template. The selected template is the template selected in step S5002 in FIG. 5.
  • As shown in FIG. 21, the template management table lists template ID 2101, association table ID 2102, and process end flag 2103. The template ID 2102 is a numeral that identifies a template, with which access to the template is obtained. The association table ID 2102 is an ID that specifies a table on which a combination of a template and corresponding content data is defined. The association table ID 2102 will be described with reference to FIG. 18. The process end flag 2103 is a flag indicating completion of generation of an association table for the template.
  • In step S17001, the content associating unit 405 specifies a target template with reference to the template management table generated in step S17000. The content associating unit 405 selects a template whose process end flag is not valid with reference to the template ID in ascending order and generates an association table for managing association of the content placement regions in the template with the content data on the basis of the selected template. As shown in FIG. 18, the association table includes table ID 1801, region No. 1802, and corresponding content No. 1803. The table ID 1801 is an ID for identifying a generated association table. The region No. 1802 is used to specify the content placement regions in the template and to indicate the correspondence between the content placement regions and the contents. The corresponding content No. 1803 indicates the numbers of the contents placed in the content placement regions. The content No. is associated with the content No. on the content data table, which allows access to the corresponding content using the corresponding content No. The content data table will be described later with reference to FIG. 20.
  • In step S17002, the content associating unit 405 selects one of the content placement regions in the template and places a priority content in the selected content placement region. The selection of the content placement region is made on the basis of priority-content placement information. The priority-content placement information has an initial value 1, which is changed by a later process. In the case where the value of the priority-content placement information is 1, a region in which the priority content is to be placed is a region whose region No. on the association table is 1. In the case where the value of the priority-content placement information becomes 2 by a later process, the priority content is placed in the content placement region of region No. 2 on the association table.
  • The result of the placement of the priority content is described in the association table. For example, in the case of the template shown in FIG. 22, the association table is generated as shown in FIG. 18. Contents to be placed in the template in FIG. 22 are nine items of data shown in FIG. 23, and the priority attribute indicating that it is placed with priority is set to content No. 1 (content 2301).
  • In placement of contents, in the case where the value of the priority-content placement information is 1, content No. 1 (in the example in FIG. 23, the content 2301) to which the priority attribute is set is entered as a corresponding content No. placed in the region No. 1 (FIG. 24).
  • In step S17003, the content associating unit 405 derives conditions (numerical expressions) for the priority content to be displayed larger than the other contents (contents to which the priority attribute is not set).
  • Specifically, the content associating unit 405 derives conditions for determining which content data is to be placed in which content placement region so that the priority content is displayed larger than the other contents (contents to which the priority attribute is not set). For example, in the case where one priority content is placed in a content placement region 1, the content associating unit 405 mathematically expresses how many contents should be placed in content placement regions 2 and 3 to maximize the size of the priority content placed in the content placement region 1.
  • The process of deriving the numerical expressions (conditions) will be described taking an example in which contents 2301 to 2309 shown in FIG. 23 are placed in the template shown in FIG. 22. First, the priority content is placed in the content placement region 1.
  • Subsequently, it is determined whether the priority content can be displayed large with reference to the content placement directions of the content placement regions in which no priority content is placed. As a result of the determination, if it is determined that the priority content can be displayed large, conditions for displaying the priority content larger than the other contents are mathematically expressed. In contrast, if it is determined that the priority content cannot be displayed large, information indicating that mathematization is of no use is defined. In the case where the content placement direction of a content placement region in which no priority content is placed is vertical, this determination method determines whether a content placement region in which a priority content is placed is present on the right or left of the content placement region. On the other hand, if the content placement direction of the content placement region in which no priority content is placed is lateral, this determination method determines whether a content placement region in which a priority content is placed is present on or under the content placement region. If this determination is No, it is determined that the priority content cannot be displayed large. A concrete example will be described with reference to FIG. 22. The content placement direction of the content placement region 2 in which no priority content is placed is vertical, and the content placement region 1 in which the priority content is placed is present on the left of the content placement region 2. That is, as the content placement region 2 expands by placing contents in the content placement region 2, the content placement region 1 in which the priority content is placed is expanded. Such a case corresponds to the case in which the priority content can be displayed large.
  • Subsequently, mathematization of the conditions will be described taking an example.
  • Since the content placement direction of the content placement region 2 is vertical, if contents more than that for the content placement region 1 are placed in the content placement region 2, the sizes of the contents in the region 2 may become smaller than that placed in the region 1. Since one content is placed in the content placement region 1, the number of the contents placed in the content placement region 2 can be expressed as, 1<(the number of contents in the region 2) . . . Ex. (1).
  • Next, consider the content placement region 3. The width of the content placement region 3 is equal to the sum of the widths of the region 1 and the region 2. That is, the widths of the content placement regions 1 and 2 influence on the size of the content placement region 3. The content placement region 1 has only one priority content. On the other hand, the content placement region 2 should have a plurality of contents, but the width of the region 2 is not influenced by the number of the contents (since the content placement direction of the region 2 is vertical, the lateral size does not influence on the number of the contents). This shows that the content placement region 3 is influenced by the two content placement regions 1 and 2 and does not depend on the number of the contents in the content placement region 2. That is, the content placement region 3 is influenced by the number of content placement regions. Thus, it can be expressed as 2<(the number of contents in the content placement region 3) . . . Ex. (2).
  • The number of contents to be placed in the template is nine, as shown in FIG. 23. Since it is decided that one content is to be placed in the content placement region 1, the number of contents to be placed in the content placement regions 2 and 3 are eight. This derives (the number of contents in the content placement region 2)+(the number of contents in the content placement region 3)=8 . . . Ex. (3).
  • In step S17004, the content associating unit 405 calculates the numbers of contents to be placed in the individual content placement regions from the expressions derived in step S17003.
  • The relation, 1<(the number of contents in the region 2)<6, and the relation, 2<(the number of contents in the region 3)<7, can be derived from the expressions (1), (2), and (3) exemplified in step S17003.
  • In step S17005, the content associating unit 405 determines whether the numbers of contents could be calculated in step S17004. A case in which the number of contents could not be calculated corresponds to a case in which information indicating that mathematization is of no use is defined in step S17003.
  • In step S17006, the content associating unit 405 determines contents to be placed in the individual content placement regions on the basis of the numbers of contents calculated in step S17004. Content data to be placed in the individual content placement regions is associated at random using a random-number generating algorithm. Here, the contents are placed under the constraints to the numbers of contents to be placed in the individual content placement regions. Information on the associated contents is stored in the association table.
  • By the process in step S17006, an association table, as shown in FIG. 25, is generated. While the layout process itself will be described later, the layout result of FIG. 25 will be shown in FIG. 26 for the purpose of explanation. As can be seen in FIG. 26, the content given the priority attribute is displayed large.
  • Although this embodiment adopts random association using random-number generation, a method of association in order of content No. may be used. Furthermore, all patterns conforming to the constraints on the numbers of contents may be generated.
  • In step S17007, the content associating unit 405 makes a determination for all the content placement regions whether the priority content has been placed using the priority-content placement information. This determination is made by comparing the value of the priority-content placement information and the maximum value of the region Nos. on the association table. If the value of the priority-content placement information and the maximum value of the region Nos. on the association table are equal, the content associating unit 405 determines that the determination whether the priority content has been placed was made for all the content placement regions and moves to step S17008. If the content associating unit 405 determines that no priority content is placed in all the content placement regions, value 1 is added to the priority-content placement information and returns to step S17000.
  • In step S17008, the content associating unit 405 determines whether the process on all the templates defined on the template management table has been completed. If the process has been completed on all the templates, the process is terminated. If the process has not been completed on all the templates, the value of the priority-content placement information is initialized to 1, and the process end flags of the target templates are made valid, and the process returns to step S17000. Here, the process end flags are on the template management table.
  • The foregoing content associating process is terminated when the number of associated contents cannot be calculated. If it cannot be calculated, the content placement direction of the template may be changed. By changing the content placement direction of the template, the expressions generated in step S17003 can be changed to cope therewith.
  • Although the description in the foregoing process flow shows an example in which one priority content is given a priority attribute, there is no problem even in a plurality of contents are given the priority attribute. In the case where two contents are given the priority attribute, the layout process can be achieved by placing the two priority contents one for each content placement region. FIG. 27 shows examples of the layout result in the case where the number of contents given the priority attribute is increased to two in the example shown in the foregoing process flow.
  • FIG. 19 is a diagram showing an example of the template table of this embodiment. As shown in FIG. 19, the template table includes number-of-content 1901 and template ID 1902 and defines the relationship between the number of contents and templates. For example, in FIG. 19, in the case where the number of contents is 1, templates in which a priority content can be displayed larger than the other contents are templates having template IDs 1, 3, 4, 10, . . . .
  • FIG. 20 is a diagram showing an example of the content data table of this embodiment. The content data table includes content No. 2001, content width 2002, content height 2003, content attribute 2004, and path 2005 to actual content data on the system. The content No. 2001 is a unique numeral for identifying content data. The content width 2002 and height 2003 express the width and height of content data in pixels. The priority attribute 2004 indicates content-placement priority-attribute information, which is set to 1 for setting a priority attribute, and 0 for setting no priority attribute.
  • As has been described above, this embodiment allows the size of a content given a priority attribute to be displayed larger than that of a content given no priority attribute even if contents and templates are not associated with each other in advance.
  • Thus, the priority attribute can be utilized even if it is difficult to associate contents with a large number of templates in advance as in the layout process shown in this embodiment.
  • Users can know a layout in which a content given a priority attribute is displayed large by performing a layout process on all patterns. However, this process significantly increases the processing load. This embodiment can make the most of the priority attribute while minimizing the processing load.
  • While this embodiment has been described when applied to the case of a large number of templates, the present invention can also be applied to automatic template generation. By automatically generating a template according to the combination of fundamental template information to associate contents with the generated template, the layout process that utilizes the priority attribute can be achieved.
  • While this embodiment uses the number of contents to select a template, another method may be adopted. For example, the present invention can also adopt a method of analyzing contents and selecting a template on the basis of the analysis.
  • While this embodiment permits a plurality of contents to be placed in a content placement region of a template, there may be the constraint that only one content may be placed in each content placement region.
  • Meanwhile, when the process in FIG. 17 is applied when contents 2801 to 2803 (the priority content is denoted by 2801) shown in FIG. 28 are associated with the template in FIG. 29, the result shown in FIG. 30 can be given. FIG. 30 shows a processing result when the priority content 2801 is associated with a content placement region 2901. The content 2801 is 50 long by 50 wide, the content 2802 is 25 long by 50 wide, and the content 2803 is 1 long by 100 wide.
  • The result in FIG. 30 shows that the other content 2802 is larger than the priority content 2801, so that a desired result is not given. This is caused by the excessive difference between the length and width of the content 2802. To prevent such a problem, if it is determined that among contents associated with a template, a content whose difference between the length and the width does not meet extraction conditions (for example, the difference between the length and the width is 50 or greater) is present, the process in FIG. 17 is not executed but an error process is executed. A concrete example of the error process is displaying an error message indicating that the priority content cannot be output in a size larger than the other contents.
  • Alternatively, if the priority content cannot be increased in size than the contents given no priority attribute, part of the content having a large difference between the length and the width is deleted. The layout process may be executed so that the size of the priority content becomes the maximum by this process.
  • After executing the process of step S17006 in FIG. 17, the content associating unit 405 determines whether the priority content is larger than the other contents, in which if it is determined to be larger, the process moves to step S17007. In contrast, if the content associating unit 405 determines that the priority content is smaller than the other contents, this layout process is cancelled and returns to step S17000.
  • While the present application has been described using an example of placing contents more than content placement regions, the number of content placement regions and the number of contents may be equal.
  • Even if templates and contents are not associated with each other, the present invention allows a content given a high priority level to be displayed large.
  • The present invention can be achieved also by executing the process below. That is, software (program) for achieving the functions of the above-described embodiment is supplied to a system or apparatus over a network or various storage media, and the computer (or CPU, MPU, etc.) of the system or apparatus reads the program and executes it. In this case, the program and the storage media that store the program constitute the present invention.
  • While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all modifications and equivalent structures and functions.
  • This application claims the benefit of Japanese Patent Application No. 2008-239441 filed Sep. 18, 2008, which is hereby incorporated by reference herein in its entirety.

Claims (12)

1. A method for executing a layout process using a template having a plurality of content placement regions and contents to be placed in the content placement regions, the method comprising;
a setting step of setting at least one content to a priority attribute indicating that the content is larger in size than the other contents;
a first selecting step of selecting one content placement region in which the plurality of other contents to which the priority attribute is not set are to be placed from the plurality of content placement regions;
a first placing step of placing the plurality of other contents in the one content placement region selected in the first selecting step, without changing the aspect ratios of the plurality of other contents, in the placement direction set for the content placement region;
a second selecting step of selecting a priority-content placement region different from the content placement region selected in the first selecting step so that the priority content to which the priority attribute is set is larger in size than the other contents; and
a second placing step of placing the priority content in the one content placement region selected in the first selecting step without changing the aspect ratio thereof.
2. The method for executing the layout process according to claim 1, the method further comprising:
a determining step of determining whether a content having an aspect ratio that satisfies extraction conditions is present in the plurality of contents; and
a notifying step of providing, if it is determined in the determining step that a content having an aspect ratio that satisfies the extraction conditions is present, a notification that the priority content is not displayed larger than the other contents.
3. The method for executing the layout process according to claim 1, wherein
when the priority attribute is set on a plurality of contents in the setting step, in the second selecting step, content placement regions in which the plurality of priority contents are to be placed are selected so that the plurality of contents have the same size and are displayed larger than the other contents.
4. The method for executing the layout process according to claim 1, further comprising:
a display control step of displaying a layout result in which the priority content and the other contents are placed in the content placement regions in the first and second placing steps.
5. A layout processing apparatus that executes a layout process using a template having a plurality of content placement regions and contents to be placed in the content placement regions, the apparatus comprising;
a setting unit configured to set at least one content to a priority attribute indicating that the content is larger in size than the other contents;
a first selection unit configured to select one content placement region in which the plurality of other contents to which the priority attribute is not set are to be placed from the plurality of content placement regions;
a first placing unit configured to place the plurality of other contents in the one content placement region selected in the first selecting step, without changing the aspect ratios of the plurality of other contents, in the placement direction set for the content placement region;
a second selection unit configured to select a priority-content placement region different from the content placement region selected in the first selecting step so that the priority content to which the priority attribute is set is larger in size than the other contents; and
a second placing unit configured to place the priority content in the one content placement region selected in the first selecting step without changing the aspect ratio thereof.
6. The layout processing apparatus according to claim 5, the apparatus further comprising:
a determining unit configured to determine whether a content having an aspect ratio that satisfies extraction conditions is present in the plurality of contents; and
a notifying unit configured to provide, if it is determined by the determining unit that a content having an aspect ratio that satisfies the extraction conditions is present, a notification that the priority content is not displayed larger than the other contents.
7. The layout processing apparatus according to claim 5, wherein
when the priority attribute is set on a plurality of contents by the setting unit, the second selection unit selects content placement regions in which the plurality of priority contents are to be placed so that the plurality of contents have the same size and are displayed larger than the other contents.
8. The layout processing apparatus according to claim 5, further comprising:
a display control unit configured to display a layout result in which the priority content and the other contents are placed in the content placement regions by the first and second placing units.
9. A storage medium that stores a program for executing a layout process using a template having a plurality of content placement regions and contents to be placed in the content placement regions,
wherein the program comprising program codes for;
a setting step of setting at least one content a priority attribute indicating that the content is larger in size than the other contents;
a first selecting step of selecting one content placement region in which the plurality of other contents to which the priority attribute is not set are to be placed from the plurality of content placement regions;
a first placing step of placing the plurality of other contents in the one content placement region selected in the first selecting step, without changing the aspect ratios of the plurality of other contents, in the placement direction set for the content placement region;
a second selecting step of selecting a priority-content placement region different from the content placement region selected in the first selecting step so that the priority content to which the priority attribute is set is larger in size than the other contents; and
a second placing step of placing the priority content in the one content placement region selected in the first selecting step without changing the aspect ratio thereof.
10. The storage medium according to claim 9, wherein the program further comprises program codes for:
a determining step of determining whether a content having an aspect ratio that satisfies extraction conditions is present in the plurality of contents; and
a notifying step of providing, if it is determined in the determining step that a content having an aspect ratio that satisfies the extraction conditions is present, a notification that the priority content is not displayed larger than the other contents.
11. storage medium according to claim 9, wherein when the priority attribute is set on a plurality of contents in the setting step, in the second selecting step, content placement regions in which the plurality of priority contents are to be placed are selected so that the plurality of contents have the same size and are displayed larger than the other contents.
12. The storage medium according to claim 9, wherein the program further comprises a program code for a display control step of displaying a layout result in which the priority content and the other contents are placed in the content placement regions in the first and second placing steps.
US12/560,979 2008-09-18 2009-09-16 Method and apparatus for processing layout and storage medium Expired - Fee Related US8375298B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008239441A JP5183384B2 (en) 2008-09-18 2008-09-18 Layout processing method, layout processing apparatus, and layout control program
JP2008-239441 2008-09-18

Publications (2)

Publication Number Publication Date
US20100169767A1 true US20100169767A1 (en) 2010-07-01
US8375298B2 US8375298B2 (en) 2013-02-12

Family

ID=42204649

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/560,979 Expired - Fee Related US8375298B2 (en) 2008-09-18 2009-09-16 Method and apparatus for processing layout and storage medium

Country Status (2)

Country Link
US (1) US8375298B2 (en)
JP (1) JP5183384B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9076140B2 (en) 2012-06-26 2015-07-07 Wal-Mart Stores, Inc. Image embedding apparatus and method
US20160342327A1 (en) * 2015-05-22 2016-11-24 Lg Electronics Inc. Watch-type mobile terminal and method of controlling therefor
US20210133823A1 (en) * 2015-09-16 2021-05-06 Google Llc Systems and methods for automatically managing placement of content slots in an information resource

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100318916A1 (en) * 2009-06-11 2010-12-16 David Wilkins System and method for generating multimedia presentations
JP5486443B2 (en) * 2010-09-14 2014-05-07 ネイバー コーポレーション Image display device and image display program
JP5676996B2 (en) * 2010-09-27 2015-02-25 キヤノン株式会社 Layout system, information processing apparatus, layout method, and program
US20120299956A1 (en) * 2011-05-28 2012-11-29 Microsoft Corporation Disambiguating picture content and picture frames
JP6054330B2 (en) * 2014-03-27 2016-12-27 富士フイルム株式会社 Image layout generation apparatus, image product generation system, image layout generation method, image layout generation program, and recording medium
JP6055805B2 (en) * 2014-09-17 2016-12-27 Necパーソナルコンピュータ株式会社 Information processing apparatus and program
JP6753115B2 (en) * 2016-03-31 2020-09-09 日本電気株式会社 Content management device, content management method and program
US10409895B2 (en) * 2017-10-17 2019-09-10 Qualtrics, Llc Optimizing a document based on dynamically updating content

Citations (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6004061A (en) * 1995-05-31 1999-12-21 Eastman Kodak Company Dual sided photographic album leaf and method of making
US20020040375A1 (en) * 2000-04-27 2002-04-04 Simon Richard A. Method of organizing digital images on a page
US20020103813A1 (en) * 2000-11-15 2002-08-01 Mark Frigon Method and apparatus for obtaining information relating to the existence of at least one object in an image
US20020122067A1 (en) * 2000-12-29 2002-09-05 Geigel Joseph M. System and method for automatic layout of images in digital albums
US20030117651A1 (en) * 2001-12-26 2003-06-26 Eastman Kodak Company Method for using affective information recorded with digital images for producing an album page
US20030122839A1 (en) * 2001-12-26 2003-07-03 Eastman Kodak Company Image format including affective information
US20040201752A1 (en) * 2003-04-11 2004-10-14 Parulski Kenneth A. Using favorite digital images to organize and identify electronic albums
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US20050128518A1 (en) * 2003-11-27 2005-06-16 Fuji Photo Film Co., Ltd. Apparatus, method and program for editing images
US20050179947A1 (en) * 2004-01-30 2005-08-18 Canon Kabushiki Kaisha Document processing apparatus, document processing method, and document processing program
US20050223320A1 (en) * 1996-09-09 2005-10-06 Microsoft Corporation Automatic layout of content in a design for a medium
US20060029125A1 (en) * 2004-08-06 2006-02-09 Canon Kabushiki Kaisha Layout processing method, information processing apparatus, and computer program
US20060220983A1 (en) * 2005-03-15 2006-10-05 Fuji Photo Film Co., Ltd. Album creating apparatus, album generating method and program
US20060255986A1 (en) * 2005-05-11 2006-11-16 Canon Kabushiki Kaisha Network camera system and control method therefore
US20070055925A1 (en) * 2005-09-08 2007-03-08 Fabio Giannetti Themes for variable data printing
US20070055690A1 (en) * 2005-09-08 2007-03-08 Hewlett-Packard Development Company, L.P. Flows for variable-data printing
US20070055929A1 (en) * 2005-09-08 2007-03-08 Hewlett-Packard Development Company, L.P. Templates for variable data printing
US20080089590A1 (en) * 2005-03-15 2008-04-17 Fuji Photo Film Co., Ltd. Album generating apparatus, album generating method and computer readable medium
US20080155394A1 (en) * 2006-10-31 2008-06-26 Hewlett-Packard Development Company, L. P. Variable data printing
US20080260289A1 (en) * 2005-02-21 2008-10-23 Toshita Hara Apparatus and Method for Laying Out Images and Program Therefor
US20080309795A1 (en) * 2004-12-15 2008-12-18 Nikon Corporation Image Reproduction System
US7474801B2 (en) * 2005-07-07 2009-01-06 Shutterfly, Inc. Automatic generation of a photo album
US7489324B2 (en) * 2005-03-07 2009-02-10 Vistaprint Technologies Limited Automated image processing
US20090146994A1 (en) * 2007-12-07 2009-06-11 Samsung Techwin Co., Ltd. Image displaying method and image display system employing the method
US7548334B2 (en) * 2003-10-15 2009-06-16 Canon Kabushiki Kaisha User interface for creation and editing of variable data documents
US7554689B2 (en) * 2003-10-15 2009-06-30 Canon Kabushiki Kaisha Document layout method
US20100007788A1 (en) * 2008-07-09 2010-01-14 Vizio, Inc. Method and apparatus for managing non-used areas of a digital video display when video of other aspect ratios are being displayed
US7743322B2 (en) * 2003-09-30 2010-06-22 Hewlett-Packard Development Company, L.P. Automatic photo album page layout

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007122487A (en) 2005-10-28 2007-05-17 Canon Inc Automatic layout system
JP4593506B2 (en) * 2006-03-30 2010-12-08 Necパーソナルプロダクツ株式会社 Electronic album automatic creation device

Patent Citations (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6004061A (en) * 1995-05-31 1999-12-21 Eastman Kodak Company Dual sided photographic album leaf and method of making
US20050223320A1 (en) * 1996-09-09 2005-10-06 Microsoft Corporation Automatic layout of content in a design for a medium
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US20020040375A1 (en) * 2000-04-27 2002-04-04 Simon Richard A. Method of organizing digital images on a page
US20020103813A1 (en) * 2000-11-15 2002-08-01 Mark Frigon Method and apparatus for obtaining information relating to the existence of at least one object in an image
US20020122067A1 (en) * 2000-12-29 2002-09-05 Geigel Joseph M. System and method for automatic layout of images in digital albums
US20080094420A1 (en) * 2000-12-29 2008-04-24 Geigel Joseph M System and method for automatic layout of images in digital albums
US7340676B2 (en) * 2000-12-29 2008-03-04 Eastman Kodak Company System and method for automatic layout of images in digital albums
US20030122839A1 (en) * 2001-12-26 2003-07-03 Eastman Kodak Company Image format including affective information
US20030117651A1 (en) * 2001-12-26 2003-06-26 Eastman Kodak Company Method for using affective information recorded with digital images for producing an album page
US7369164B2 (en) * 2003-04-11 2008-05-06 Eastman Kodak Company Using favorite digital images to organize and identify electronic albums
US20040201752A1 (en) * 2003-04-11 2004-10-14 Parulski Kenneth A. Using favorite digital images to organize and identify electronic albums
US7743322B2 (en) * 2003-09-30 2010-06-22 Hewlett-Packard Development Company, L.P. Automatic photo album page layout
US7554689B2 (en) * 2003-10-15 2009-06-30 Canon Kabushiki Kaisha Document layout method
US7548334B2 (en) * 2003-10-15 2009-06-16 Canon Kabushiki Kaisha User interface for creation and editing of variable data documents
US20050128518A1 (en) * 2003-11-27 2005-06-16 Fuji Photo Film Co., Ltd. Apparatus, method and program for editing images
US20050179947A1 (en) * 2004-01-30 2005-08-18 Canon Kabushiki Kaisha Document processing apparatus, document processing method, and document processing program
US7761791B2 (en) * 2004-08-06 2010-07-20 Canon Kabushiki Kaisha Layout processing using a template having data areas and contents data to be inserted into each data area
US20060029125A1 (en) * 2004-08-06 2006-02-09 Canon Kabushiki Kaisha Layout processing method, information processing apparatus, and computer program
US20080309795A1 (en) * 2004-12-15 2008-12-18 Nikon Corporation Image Reproduction System
US20080260289A1 (en) * 2005-02-21 2008-10-23 Toshita Hara Apparatus and Method for Laying Out Images and Program Therefor
US7489324B2 (en) * 2005-03-07 2009-02-10 Vistaprint Technologies Limited Automated image processing
US20060220983A1 (en) * 2005-03-15 2006-10-05 Fuji Photo Film Co., Ltd. Album creating apparatus, album generating method and program
US20080089590A1 (en) * 2005-03-15 2008-04-17 Fuji Photo Film Co., Ltd. Album generating apparatus, album generating method and computer readable medium
US8055080B2 (en) * 2005-03-15 2011-11-08 Fujifilm Corporation Album generating apparatus, album generating method and computer readable medium
US20060255986A1 (en) * 2005-05-11 2006-11-16 Canon Kabushiki Kaisha Network camera system and control method therefore
US7474801B2 (en) * 2005-07-07 2009-01-06 Shutterfly, Inc. Automatic generation of a photo album
US20070055929A1 (en) * 2005-09-08 2007-03-08 Hewlett-Packard Development Company, L.P. Templates for variable data printing
US20070055690A1 (en) * 2005-09-08 2007-03-08 Hewlett-Packard Development Company, L.P. Flows for variable-data printing
US20070055925A1 (en) * 2005-09-08 2007-03-08 Fabio Giannetti Themes for variable data printing
US20080155394A1 (en) * 2006-10-31 2008-06-26 Hewlett-Packard Development Company, L. P. Variable data printing
US20090146994A1 (en) * 2007-12-07 2009-06-11 Samsung Techwin Co., Ltd. Image displaying method and image display system employing the method
US20100007788A1 (en) * 2008-07-09 2010-01-14 Vizio, Inc. Method and apparatus for managing non-used areas of a digital video display when video of other aspect ratios are being displayed

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9076140B2 (en) 2012-06-26 2015-07-07 Wal-Mart Stores, Inc. Image embedding apparatus and method
US20160342327A1 (en) * 2015-05-22 2016-11-24 Lg Electronics Inc. Watch-type mobile terminal and method of controlling therefor
US20210133823A1 (en) * 2015-09-16 2021-05-06 Google Llc Systems and methods for automatically managing placement of content slots in an information resource

Also Published As

Publication number Publication date
JP2010072926A (en) 2010-04-02
US8375298B2 (en) 2013-02-12
JP5183384B2 (en) 2013-04-17

Similar Documents

Publication Publication Date Title
US8375298B2 (en) Method and apparatus for processing layout and storage medium
US6065021A (en) Apparatus and method for alignment of graphical elements in electronic document
US6469722B1 (en) Method and apparatus for executing a function within a composite icon and operating an object thereby
US6366918B1 (en) Computer-implemented optimization of publication layouts
JP4572669B2 (en) Layout rule generation system, layout system, layout rule generation method, and layout rule generation program
US20060209093A1 (en) Method and computer-readable medium for generating graphics having a finite number of dynamically sized and positioned shapes
US8035825B2 (en) Document editing device, program, and storage medium
US20090327853A1 (en) Comparing And Selecting Form-Based Functionality
JP2003288144A (en) Display control method, program using the method and information processing apparatus
US6928611B2 (en) Setting text composition spacing amount
US20070100874A1 (en) Grouping of information items on a page
US7346673B1 (en) Method and apparatus for selecting a device and a computer product
US8370733B2 (en) Information processing apparatus, its control method, and program
US7168037B2 (en) Text composition spacing amount setting device with icon indicators
CN101542585A (en) Image generation system, projector, program, information storage medium, and image generation method
JP2010097564A (en) Information processor and layout processing method
JP2008140158A (en) Document editing device and program
JP2007004383A (en) Document management device, document management method, document management program and recording medium
JP2009258981A (en) Project management device, project management method, project management program, and recording medium
JP2005284883A (en) Determination device, program, recording medium, and determination method
JP2009288994A (en) Business form output management device and business form output management method
US10134363B2 (en) Display device, display control method, and non-transitory recording medium storing computer readable display control program
US7113305B1 (en) Information processing apparatus and information processing method for processing document data having a plurality of objects different in attribution
US20060139352A1 (en) Computer product, operation-analysis support device, and operation-analysis support method
US20030055904A1 (en) Rendering calculation processing status monitoring program, and storage medium, apparatus, and method therefor

Legal Events

Date Code Title Description
AS Assignment

Owner name: CANON KABUSHIKI KAISHA,JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ISHIGURO, TAISUKE;REEL/FRAME:023836/0930

Effective date: 20090903

Owner name: CANON KABUSHIKI KAISHA, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ISHIGURO, TAISUKE;REEL/FRAME:023836/0930

Effective date: 20090903

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20210212