Information Processing System, Control Method, Program, and Storage Medium
Patent Information
- Application Number
- JP2022084980
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-05-25
- Publication Date
- 2025-06-09
AI Technical Summary
Existing print data generation systems struggle with accurately associating text objects in a template with corresponding fields from a database, making it difficult to understand which text object in the template the field included in the database is associated with.
An information processing device that includes a database acquisition unit, a template acquisition unit, an identification unit, and a generation unit to identify and replace character string data in text objects with corresponding record data from a database, ensuring accurate association and generation of layout data for variable printing.
Enables the generation of print data for variable printing by identifying and associating text objects with database fields, allowing for precise insertion of record data into the correct positions within the template, thereby improving the accuracy and efficiency of the printing process.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a technique for generating print data for variable printing. [Background technology]
[0002] There is a technology for generating print data by inserting character string data into a pre-prepared layout template in order to lay out and print a user-desired character or character string (hereinafter simply referred to as "character string"). For example, in the field of printing postcards such as New Year's cards, there is application software that provides a function for reading a database such as an address book and inserting character string data contained in the database into the address field, name field, etc. on the address side of the postcard for printing. This function is also called a print merge function or a variable printing function. Patent Document 1 discloses a technology for embedding visible character strings as attribute names in input fields such as the address field or name field on the address side of a postcard, and inserting and printing the corresponding character string data into input fields where the attribute names match those contained in the database.
[0003] In the field of poster production, there is application software (hereinafter referred to as a "poster production application") for laying out character strings and generating print data. Some poster production applications provide a so-called variable printing function, which inserts data from a record contained in a database into a pre-prepared layout template (hereinafter simply referred to as a "template") and prints the inserted data. When inserting data from a record contained in a database into a pre-prepared template and printing the inserted data, for example, the user first selects any text object in the template on a layout editing screen. Next, the user selects a field corresponding to the record data to be inserted into the selected text object from among multiple attributes (hereinafter referred to as "fields") contained in the loaded database. In this way, the data from the record contained in the database that corresponds to the selected field is inserted into the position corresponding to the text object. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2003-337810 Summary of the Invention [Problem to be solved by the invention]
[0005] When creating print data by inserting data from records contained in a database into a pre-prepared template, it can be difficult to determine which text object in the template corresponds to which field contained in the database. [Means for solving the problem]
[0006] The program according to the present disclosure causes a computer to function as an acquisition means for acquiring a database, an identification means for identifying, from one or more text objects included in editing data indicating a layout, a text object that includes string data corresponding to attribute string data indicating each of one or more attributes included in the database, and a generation means for generating layout data by replacing the string data included in the text object identified by the identification means with data of a record included in the database that corresponds to the attribute associated with the text object. [Effects of the Invention]
[0007] According to the present disclosure, it is possible to generate print data for variable printing using a database that can grasp fields associated with text objects on the database. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 2 is a block diagram illustrating an example of a functional configuration of the information processing device. [Figure 2] FIG. 2 is a block diagram illustrating an example of a hardware configuration of an information processing device. [Figure 3] FIG. 10 is a diagram illustrating an example of a GUI generated by an information processing device. [Figure 4] FIG. 2 is a diagram illustrating an example of a database. [Figure 5] FIG. 10 is a diagram for explaining an example of layout data generated by a generating unit. [Figure 6] 10 is a flowchart illustrating an example of a processing flow of the information processing device. [Figure 7] FIG. 2 is a block diagram illustrating an example of a functional configuration of the information processing device. [Figure 8] 10 is a flowchart illustrating an example of a processing flow of the information processing device. [Figure 9] FIG. 2 is a block diagram illustrating an example of a functional configuration of the information processing device. [Figure 10] 10 is a flowchart illustrating an example of a processing flow of the information processing device. [Figure 11] FIG. 2 is a block diagram illustrating an example of a functional configuration of the information processing device. [Figure 12] 10 is a flowchart illustrating an example of a processing flow of the information processing device. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the disclosure according to the claims. Although multiple features are described in the embodiments, not all of these multiple features are necessarily essential to the disclosure, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same reference numerals are used to denote identical or similar components, and redundant explanations will be omitted.
[0010] [Embodiment 1] An information processing device 100 according to the first embodiment will be described with reference to Figs. 1 to 6. First, the configuration of the information processing device 100 according to the first embodiment will be described with reference to Figs. 1 and 2. Fig. 1 is a block diagram showing an example of the functional configuration of the information processing device 100 according to the first embodiment. The information processing device 100 includes a database acquisition unit 101, a template acquisition unit 102, an identification unit 103, a generation unit 104, and an output control unit 105. The processing of each unit included in the functional configuration of the information processing device 100 will be described later.
[0011] <Hardware configuration of information processing device> The hardware configuration of the information processing device 100 will be described. The processing of each unit of the information processing device 100 shown as an example in FIG. 1 is performed by hardware such as an ASIC (Application Specific Integrated Circuit) built into the information processing device 100. The processing may also be performed by hardware such as an FPGA (Field Programmable Gate Array). The processing may also be performed by software using a processor such as a CPU (Central Processor Unit) or a GPU (Graphic Processor Unit) and a memory such as a RAM (Random Access Memory). In this case, the information processing device 100 is configured, for example, by a personal computer (hereinafter referred to as a "PC"). Note that a PC is merely an example, and any device capable of displaying and editing text and in which the processing of each functional component of the information processing device 100 is performed by software may be used. Specifically, the information processing device 100 may be configured, for example, by a mobile terminal, a notebook PC, a tablet terminal, a PDA (Personal Digital Assistant), or the like.
[0012] Fig. 2 is a block diagram showing an example of the hardware configuration of the information processing device 100 according to the first embodiment, in the case where each unit provided as a functional configuration of the information processing device 100 shown as an example in Fig. 1 operates by software. The information processing device 100 is configured by a computer, and the computer has a CPU 201, a ROM 202, a RAM 203, an auxiliary storage device 204, a display unit 205, an operation unit 206, a communication unit 207, and a bus 208, as shown as an example in Fig. 2.
[0013] The CPU 201 controls the computer using programs or data stored in the ROM 202 or RAM 203, causing the computer to function as each unit included in the functional configuration of the information processing device 100 shown in FIG. 1 . The information processing device 100 may have one or more dedicated hardware components different from the CPU 201, and at least a portion of the processing performed by the CPU 201 may be executed by the dedicated hardware components. Examples of the dedicated hardware components include an ASIC, an FPGA, and a DSP (digital signal processor). The ROM 202 stores programs that do not require modification. The RAM 203 temporarily stores programs or data supplied from the ROM 202 or the auxiliary storage device 204, or data supplied from the outside via the communication unit 207. The auxiliary storage device 204 is, for example, a hard disk drive, and stores programs or various data such as image data or audio data.
[0014] The display unit 205 is configured with, for example, a liquid crystal display or an LED, and displays a GUI (Graphical User Interface) or the like for the user to operate or view the information processing device 100. The operation unit 206 is configured with, for example, a keyboard, a mouse, a joystick, a touch panel, or the like, and receives operations by the user to input various instructions to the CPU 201. The CPU 201 also operates as a display control unit that controls the display unit 205 and an operation control unit that controls the operation unit 206.
[0015] The communication unit 207 is used for communication with devices external to the information processing device 100. For example, when the information processing device 100 is connected to an external device via a wired connection, a communication cable is connected to the communication unit 207. When the information processing device 100 has a function for wireless communication with an external device, the communication unit 207 is equipped with an antenna. The bus 208 connects the various units that the information processing device 100 has as its hardware configuration, and transmits information. In the first embodiment, the display unit 205 and the operation unit 206 are described as being present inside the information processing device 100, but at least one of the display unit 205 and the operation unit 206 may be present as a separate device outside the information processing device 100.
[0016] <Processing of each unit included in the information processing device as a functional configuration> The processing of each unit included in the information processing device 100 as a functional configuration will be described. The output control unit 105 generates a GUI for the user to operate or view the information processing device 100. Furthermore, a signal of the generated GUI is output to the display unit 205, causing the display unit 205 to display the GUI. The GUI generated by the information processing device 100 will be described with reference to FIG. 3. FIG. 3 is a diagram showing an example of a GUI generated by the information processing device 100 according to the first embodiment and displayed on the display unit 205. Specifically, FIG. 3 shows, as an example of the GUI, an example of an editing screen 300 for the user to create or edit (hereinafter collectively referred to as "editing") layout data (hereinafter also referred to as "layout data") of a poster or the like.
[0017] Editing screen 300 includes, for example, a preview area 301, a template selection area 302, a new creation button 304, a database load button 305, and a template creation button 307. Preview area 301 displays a preview image 306 of the layout data being edited, and the user can confirm or change the layout during or after editing in preview area 301. Template selection area 302 displays thumbnail images 303 corresponding to data (hereinafter referred to as "template data") of multiple layout templates (hereinafter simply referred to as "templates") that differ from each other in design or layout.
[0018] The template acquisition unit 102 acquires template data. Specifically, for example, the template acquisition unit 102 acquires template data by reading out template data stored in advance in the auxiliary storage device 204 or the like. For example, the template acquisition unit 102 acquires template data corresponding to a thumbnail image 303 selected by a user operation. The template data acquired by the template acquisition unit 102 is used as editing data.
[0019] The output control unit 105 generates a preview image 306 using the template data acquired by the template acquisition unit 102 and displays it in the preview area 301. Editing of layout data is not limited to editing using template data selected by selecting the thumbnail image 303. For example, the user can also edit layout data from an initial layout state such as a blank page by pressing the new creation button 304.
[0020] In the following description, as an example, the template data acquired by template acquisition unit 102 corresponds to preview image 306 shown as an example in FIG. 3. The template data is also described as including a plurality of text objects 311 to 314, as shown as an example in preview image 306 in FIG. 3. Specifically, the description is based on the assumption that text object 311 includes character string data "XX Bank," and text object 312 includes character string data "XXX Branch." The description is also based on the assumption that text object 313 includes character string data "Yokohama City, Kanagawa Prefecture, XX," and text object 314 includes character string data "0424-xx-xxxx."
[0021] The database acquisition unit 101 acquires database data (hereinafter simply referred to as a "database"). Specifically, for example, the database acquisition unit 101 acquires the database by reading out a database stored in advance in the auxiliary storage device 204 or the like. For example, when a database read button 305 is pressed by a user operation, the output control unit 105 generates a GUI (hereinafter referred to as a "selection GUI") for selecting a file including the database to be read. The output control unit 105 outputs the generated selection GUI (not shown in FIG. 3) to the display unit 205 and displays it on the display unit 205. The user selects a desired file by operating the selection GUI displayed on the display unit 205. The database acquisition unit 101 acquires the database by reading out the file selected by the user operation from the auxiliary storage device 204. The method of acquiring a database is not limited to the above-described one as long as it can uniquely select a file including the database. For example, the user may specify a database to be acquired by the database acquisition unit 101 by dragging and dropping an icon of a file including the database onto the editing screen 300. The template creation button 307 will be explained in the third embodiment described later.
[0022] The database acquired by the database acquiring unit 101 will be described with reference to Fig. 4. Fig. 4 is a diagram illustrating an example of the database 400 according to the first embodiment. The first row 401 of the database 400 contains character string data indicating the attributes of each record data in the database, with the data separated into columns for each attribute. The character strings shown in each column of the first row 401 are the same as the character strings of at least one or more text objects among the text objects 311 to 314 included in the template data. Furthermore, each column of the second and subsequent rows 402 to 404 contains record data corresponding to the attributes shown in the first row 401. The character strings included in each column of the second and subsequent rows 402 to 404 are character strings for replacing the character strings of the text objects included in the template data.
[0023] Specifically, as described above, the selected template data contains, as text objects, data of the character strings "XX Bank," "XXX Branch," "Yokohama City, Kanagawa Prefecture, △XXXX," and "0424-xx-xxxx." Also, column A of first row 401 of database 400 contains "XXX Branch," which corresponds to the character string "XXX Branch" contained in text object 312. Similarly, column B of first row 401 of database 400 contains "Yokohama City, Kanagawa Prefecture, △XXXX," which corresponds to the character string "Yokohama City, Kanagawa Prefecture, △XXXX" contained in text object 313. Similarly, column C of first row 401 of database 400 contains "0424-xx-xxxx," which corresponds to the character string "0424-xx-xxxx" contained in text object 314. Hereinafter, the character strings contained in each row of this first row, i.e., the character strings indicating attributes, will be referred to as field names.
[0024] Column A of second row 402 of database 400 contains the character string "AAA Branch" as a character string to replace "◇○ Branch" in text object 312 included in the template data. Similarly, column B of second row 402 contains the character string "YYY Town, Okayama Prefecture" as a character string to replace "Yokohama City, Kanagawa Prefecture, △○×" included in text object 313. Furthermore, column C of second row 402 contains the character string "aaaa-aa-aaaa" as a character string to replace "0424-xx-xxxx" included in text object 314. The character strings in each column of third row 403 and fourth row 404 of database 400 are the same as the character strings in each column of second row 402, so a description thereof will be omitted.
[0025] For each field name included in the database, the identification unit 103 identifies a text object that includes a character string corresponding to the field name from among one or more text objects included in the edited data. Here, the edited data is, for example, template data acquired by the template acquisition unit 102. Specifically, for a character string included in each row of the first row 401 of the database 400, the identification unit 103 identifies a text object from the text objects 311 to 314 that includes a character string corresponding to the field name. Here, a text object that includes a character string corresponding to the field name is a text object whose character string is the same as the field name. Therefore, the identification unit 103 identifies a text object 312 as a text object that includes a character string included in column A of the first row 401 of the database 400. Similarly, a text object 313 is identified as a text object that includes a character string included in column B of the first row 401 of the database 400. Furthermore, a text object 314 is identified as a text object that includes a character string included in column C of the first row 401.
[0026] The generating unit 104 generates layout data by replacing a character string of a text object included in edited data such as template data with record data. Specifically, the generating unit 104 replaces a character string of a text object identified by the identifying unit 103 with record data in a column of the first row 401 of the database 400 that includes the same character string as the identified character string. The layout data generated by the generating unit 104 will be described with reference to FIG. 5. FIG. 5(a) is a diagram illustrating an example of template data acquired by the template acquiring unit 102 according to the first embodiment. FIGS. 5(b), 5(c), and 5(d) are diagrams illustrating examples of layout data generated by the generating unit 104 according to the first embodiment.
[0027] For example, first, generation unit 104 replaces the character string data included in text object 312 with the character string data included in column A of second row 402 of database 400. Similarly, generation unit 104 replaces the character string data included in text object 313 with the character string data included in column B of second row 402 of database 400. Furthermore, generation unit 104 replaces the character string data included in text object 314 with the character string data included in column C of second row 402 of database 400. In this way, generation unit 104 generates layout data shown as an example in FIG. 5(b).
[0028] Next, generation unit 104 replaces the character string data included in text object 312 with the character string data included in column A of third row 403 of database 400. Similarly, generation unit 104 replaces the character string data included in each of text objects 313 and 314 with the character string data included in columns B and C of third row 403 of database 400. In this way, generation unit 104 generates layout data shown as an example in FIG. 5(c).
[0029] Furthermore, the generation unit 104 replaces the character string data included in text object 312 with the character string data included in column A of fourth row 404 of database 400. Similarly, the generation unit 104 replaces the character string data included in each of text objects 313 and 314 with the character string data included in columns B and C of fourth row 404 of database 400. In this way, the generation unit 104 generates layout data the example of which is shown in Figure 5(d). Furthermore, in this way, the generation unit 104 sequentially generates layout data corresponding to all records included in the database.
[0030] The layout data generated by the generation unit 104 is output to, for example, the auxiliary storage device 204 and stored therein. Note that the output destination of the generated layout data is not limited to the auxiliary storage device 204. For example, the generated layout data may be output to an image forming device such as a printer and recorded (printed) on a recording medium. Note that when the generated layout data is recorded on a recording medium by the image forming device, the generated layout data may be output to a printer driver or the like, and the printer driver may be caused to print the layout data. Also, for example, the generated layout data may be output to a WWW (World Wide Web) server and used for posting on a web page. Also, for example, the generated layout data may be output to an SNS (Social Networking Service) and used for posting on the SNS.
[0031] <Operation of information processing device> The operation of the information processing device 100 will be described with reference to FIG. 6. FIG. 6 is a flowchart showing an example of a processing flow of the information processing device 100 according to the first embodiment. In the description of FIG. 6, the symbol "S" denotes a step. Furthermore, while the flowchart shown in FIG. 6 is being executed, the output control unit 105 generates an appropriate GUI as needed and displays the generated GUI on the display unit 205. First, in S601, the template acquisition unit 102 acquires template data specified by a user operation. Next, in S602, the database acquisition unit 101 acquires the database 400 specified by a user operation.
[0032] Next, the identification unit 103 performs the processes from S603 to S608. Through these processes, for each field name included in the database 400, the identification unit 103 identifies a text object that includes a character string corresponding to the field name from among the text objects included in the template data. Specifically, first, in S603, the identification unit 103 selects an arbitrary column from among the columns in the first row 401 of the database 400 and attempts to acquire the character string included in the selected column, i.e., the field name data. Specifically, for example, the identification unit 103 attempts to acquire the character string data included in the first column in the first row 401 of the database 400, i.e., column A in FIG. 4 . Next, in S604, the identification unit 103 determines whether or not the character string data included in the column selected from among the columns in the first row 401 of the database 400 has been acquired. If it is determined in S604 that the character string data has been acquired, in S605 the identification unit 103 searches the template data acquired in S601 for a text object containing character string data that exactly matches the character string data acquired in S603. After S605, in S606 the identification unit 103 determines whether or not a text object containing character string data that exactly matches in S605 has been detected.
[0033] If it is determined in S606 that a text object containing data of a completely matching character string has been detected, the identification unit 103 performs the following process in S607. In S607, the identification unit 103 identifies the text object detected in S605 as corresponding to a field name included in the selected column in the first row 401 of the database 400, and associates the text object with the field name. At this time, for example, the identification unit 103 stores information indicating the association in the RAM 203 or the like. After S607, or if it is determined in S606 that a text object containing data of a completely matching character string has not been detected, the identification unit 103 performs the following process in S608. In S608, the identification unit 103 selects a column (e.g., column B) that has not yet been selected from the columns in the first row 401 of the database 400, and attempts to acquire the character string included in the selected column, i.e., the field name data. After S608, the identification unit 103 returns to the process of S604 and repeatedly executes the processes from S604 to S608 until it is determined in S604 that the character string data has not been acquired.
[0034] If it is determined in S604 that the character string data could not be acquired, the generation unit 104 performs the processes from S611 to S615 to generate layout data corresponding to each record in the database 400. Specifically, first, in S611, the generation unit 104 selects any record from among the records in the second row and thereafter in the database 400. Specifically, for example, the generation unit 104 selects the record in the second row 402 in the database 400. Next, in S612, the generation unit 104 uses the character string data included in each column of the selected record to replace the character string data of the text object associated with the corresponding field name among the text objects included in the template data. In this way, the layout data corresponding to the record selected in S611 is generated. Next, in S613, the generation unit 104 outputs the layout data generated in S612.
[0035] Next, in S614, the generation unit 104 determines whether or not there is an unselected record in the database 400. If it is determined in S614 that there is an unselected record, in S615 the generation unit 104 selects an arbitrary unselected record (for example, the record in the third row 403). After S615, the generation unit 104 returns to S612 and repeatedly executes the processes from S612 to S615 until it is determined in S614 that there is no unselected record. If it is determined in S614 that there is no unselected record, the information processing device 100 ends the process of the flowchart shown in FIG. 6.
[0036] According to the information processing device 100 configured as above, it is possible to generate print data (layout data) for variable printing using a database that can grasp field names associated with text objects on the database.
[0037] In the present embodiment, as an example, a database 400 has been described in which names indicating columns, such as A in the first column and B in the second column, as shown in FIG. 4 . However, the database is not limited to this. The database may be of any type, as long as field names and records can be distinguished from each other, such as a text file in CSV (Comma-Separated Values) format. In addition, in the present embodiment, a database in which field names are set in the first row and record data are set in the second and subsequent rows, but the database is not limited to this. The database may be of any type, as long as field names and record data can be distinguished from each other, such as a database in which rows and columns are interchanged and field names are set in the first column and record data are set in the second and subsequent columns.
[0038] In the present embodiment, a case has been described in which only one matching text object is detected when a text object containing character string data that completely matches the character string data acquired in S603 is searched for in the template data. For example, if multiple matching text objects are detected in the search, the first detected text object may be identified as corresponding to a field name included in a column selected from among the columns of the first row 401 of the database 400. Note that the above-described method for identifying the correspondence between a text object and a field name in this case is merely an example, and any method may be used as long as it can uniquely identify the correspondence between a text object and a field name. For example, the method may involve allowing the user to select a desired text object from among the multiple text objects detected in the search. In this case, the output control unit 105 generates a GUI that allows the user to select a desired text object from among the multiple detected text objects and displays the generated GUI on the GUI display unit 205.
[0039] Furthermore, in this embodiment, an example has been shown in which template data in which text objects have been previously arranged is used as edited data, and the character string data of the text objects included in the template data is replaced with data of a record included in a database. However, this embodiment is not limited to this configuration. For example, instead of template data, data created by a user by arranging text objects on blank data may be used as edited data. In this case, the character string data of the text objects included in edited data created by the user is replaced with data of a record included in a database. In other words, the information processing device 100 according to this embodiment can be widely applied to edited data including text objects, such as template data or data created by a user.
[0040] [Modification 1 of Embodiment 1] The information processing device 100 according to the first embodiment replaces character string data of a text object using character string data contained in each column of a record. However, there are cases where the length of the character string in the record data that is the source of replacement exceeds the length of the character string in the text object that is the replacement destination. In such cases, if the replacement is performed as is, there is a possibility that the layout will be disrupted, such as the replaced character string extending beyond the print document or overlapping with other objects.
[0041] Therefore, in such a case, the output control unit 105 may perform output control such as displaying a GUI (for example, a warning dialog or the like) for warning the user or for urging attention on the display unit 205. Note that the method of outputting the warning or the like to the user is not limited to displaying a warning dialog or the like as long as it is a method that can be recognized by the user, and may also be output by sound such as a voice or a signal sound, for example.
[0042] The comparison between the length of the character string in the record data to be replaced and the length of the character string in the text object to be replaced is performed by a comparison unit not shown in Fig. 1. The comparison unit, for example, compares the number of characters in the character string in the record data to be replaced with the number of characters in the character string in the text object to be replaced. When the number of characters in the character string in the record data to be replaced exceeds the number of characters in the character string in the text object to be replaced, the output control unit 105 performs output control such as the warning described above.
[0043] The comparison unit's method for comparing the length of the character string in the record data to be replaced with the length of the character string in the text object to be replaced is not limited to comparing the number of characters in the character strings. For example, the comparison unit may compare the display widths of the character strings in two images obtained by rendering the edited data (e.g., template data) and the layout data, respectively. Regardless of the comparison method, if there is a possibility that the length of the character string in the record data to be replaced exceeds the length of the character string in the text object to be replaced, the output control unit 105 may perform output control such as issuing the warning described above.
[0044] According to the information processing apparatus 100 configured as above, the user can recognize that there is a possibility that the layout data may be distorted.
[0045] [Modification 2 of Embodiment 1] The information processing device 100 according to the first modification of the first embodiment controls output of a warning or the like when the length of the character string in the record data that is the source of replacement exceeds the length of the character string in the text object that is the replacement destination. In contrast, the information processing device 100 according to the second modification of the first embodiment reduces the font size of the character string in the text object after replacement in the layout data in this case.
[0046] Specifically, the font size is reduced so that the display width of the replaced text object in the image when the layout data is rendered fits within the display width of the original text object in the image when the edit data is rendered. For example, the font size is reduced by a fixed amount until the display width of the replaced text object fits within the display width of the original text object. The method of reducing the font size is not limited to the method described above, and any method may be used as long as it can reduce the font size so that the display width of the replaced text object fits within the display width of the original text object.
[0047] According to the information processing apparatus 100 configured as above, it is possible to prevent layout data from being distorted.
[0048] [Embodiment 2] An information processing device 100 according to a second embodiment (hereinafter, also simply referred to as "information processing device 100") will be described with reference to FIGS. 7 and 8. The information processing device 100 according to the first embodiment searches edited data for a text object that includes a character string that exactly matches a field name included in the database 400, and identifies the text object. However, in a method of searching for a character string that exactly matches, it may not be possible to identify a text object that corresponds to a desired field name, for example, if the user makes a typo when setting a field name. In this embodiment, a form will be described that improves operability in a case where the user makes a typo when setting a field name in the database 400.
[0049] The configuration of the information processing device 100 will be described with reference to FIG. 7. FIG. 7 is a block diagram showing an example of the functional configuration of the information processing device 100 according to the second embodiment. The information processing device 100 includes a database acquisition unit 101, a template acquisition unit 102, an identification unit 103, a generation unit 704, an output control unit 105, and a similarity search unit 701. In the following description, the same processes as those of the information processing device 100 according to the first embodiment are designated by the same reference numerals as in FIG. 1, and description thereof will be omitted. The processing of each unit included in the functional configuration of the information processing device 100 is performed by hardware such as an ASIC or FPGA built into the information processing device 100, as in the information processing device 100 according to the first embodiment. The processing may also be performed by software using a memory such as a RAM and a processor such as a CPU.
[0050] The similarity search unit 701 searches edited data (e.g., template data) for text objects containing character strings similar to field names included in the database 400 (hereinafter referred to as a "similar search"). Specifically, the similarity search unit 701 performs a similarity search by searching edited data for text objects containing, in part, a character string that completely matches a partial character string of a field name (hereinafter referred to as a "partial character string"). Here, a partial character string is a character string from the first character to a character at a predetermined position (e.g., the fifth character from the first) in the field name (hereinafter referred to as an "initial character string"). The partial character string may also be a character string from a character at a predetermined position (e.g., the fifth character from the end) to the last character (hereinafter referred to as an "end character string"). The partial character string may also be a character string (hereinafter referred to as an "intermediate character string") between two predetermined positions (e.g., the fifth character from the start and the fifth character from the end) in the field name.
[0051] However, if the number of characters in a substring is small, the possibility of an erroneous determination of similarity increases, while if the number of characters is large, the possibility of a determination that the substring is not similar increases. Therefore, the number of characters in a substring may be set appropriately depending on the application, etc. Note that the similarity search unit 701 may perform a similarity search by arbitrarily combining at least two of searches using a starting string, an ending string, and multiple intermediate strings. Furthermore, the substring used in the similarity search may be presented to the user to allow the user to confirm whether the substring is the string desired by the user. Furthermore, the similarity search method is not limited to a method of searching for a string that includes a string that completely matches the substring, and any method may be used as long as it is possible to search for a string similar to a certain string.
[0052] When multiple text objects containing a character string similar to the field name are detected by the similarity search, the similarity search unit 701 determines the text object containing the character string similar to the field name as follows. For example, the similarity search unit 701 determines the text object with the highest similarity among the multiple detected text objects as the text object similar to the field name. Note that the above-described determination method in this case is merely an example, and any method may be used as long as it can uniquely determine a text object containing a character string similar to the field name. For example, a method may be used in which the user selects a text object corresponding to a desired field name from the multiple text objects detected by the similarity search. In this case, the output control unit 105 generates a GUI that allows the user to select a desired text object from the multiple text objects and displays the GUI on the display unit 205.
[0053] The generating unit 104 according to the first embodiment replaces a character string in a text object that includes a character string that exactly matches a field name with record data in a column corresponding to the field name. In contrast, the generating unit 704 performs the following process in addition to the process of the generating unit 104 according to the first embodiment when the identifying unit 103 does not identify a text object that includes a character string that exactly matches a field name. In this case, the generating unit 704 replaces a character string in a text object that includes a character string similar to a field name, detected by the similarity search unit 701, with record data in a column corresponding to the field name.
[0054] The operation of the information processing device 100 will be described with reference to Fig. 8. Fig. 8 is a flowchart showing an example of a processing flow of the information processing device 100 according to the second embodiment. In the description of Fig. 8, the symbol "S" denotes a step. In the following description, the same processes as those of the information processing device 100 according to the first embodiment will be described with the same reference numerals as in Fig. 6, and the description thereof will be omitted. In addition, while the flowchart shown in Fig. 8 is being executed, the output control unit 105 generates an appropriate GUI as appropriate and displays the generated GUI on the display unit 205.
[0055] First, the information processing device 100 executes the processes from S601 to S606. If it is determined in S606 that a text object containing data of a completely matching character string has been detected, the information processing device 100 executes the processes from S607 to S608. If it is determined in S606 that a text object containing data of a completely matching character string has not been detected, the similarity search unit 701 executes the following processes.
[0056] First, in S801, the similarity search unit 701 searches the template data acquired in S601 for a text object containing character string data similar to the character string data acquired in S603. Next, in S802, the similarity search unit 701 determines whether a text object containing similar character string data has been detected in S801. If it is determined in S802 that a text object containing similar character string data has been detected, the similarity search unit 701 performs the following process in S803. In S803, the similarity search unit 701 associates the text object detected in S801 with the field name included in the selected column in the first row 401 of the database 400. At this time, for example, the similarity search unit 701 stores information indicating this association in the RAM 203 or the like. After S803, or if it is determined in S802 that a text object containing similar character string data has not been detected, the information processing device 100 executes the process of S608. After S608, the identification unit 103 returns to the process of S604, and repeatedly executes the processes from S604 to S608, including the processes from S801 to S803, until it is determined in S604 that the character string data has not been acquired.
[0057] If it is determined in S604 that character string data could not be acquired, the generation unit 704 performs the processes from S611 to S615 to generate layout data corresponding to each record in the database 400. After S615, the generation unit 704 returns to S612 and repeatedly executes the processes from S612 to S615 until it is determined in S614 that no unselected records exist. If it is determined in S614 that no unselected records exist, the information processing device 100 ends the processing of the flowchart shown in FIG.
[0058] The information processing device 100 configured as described above can prevent layout data from being distorted. Furthermore, even if the user makes a mistake when setting a field name, the information processing device 100 can associate a text object corresponding to the field name with the field name.
[0059] [Embodiment 3] 9 and 10, an information processing device 100 according to a third embodiment (hereinafter also simply referred to as "information processing device 100") will be described. The information processing device 100 is capable of generating database template data (hereinafter referred to as "template data"). This makes it possible to prevent a situation in which a field name is set incorrectly due to a typo or the like, and a text object corresponding to the field name does not exist in edited data (e.g., template data).
[0060] The configuration of the information processing device 100 will be described with reference to FIG. 9. FIG. 9 is a block diagram showing an example of the functional configuration of the information processing device 100 according to the third embodiment. The information processing device 100 includes a database acquisition unit 101, a template acquisition unit 102, an identification unit 103, a generation unit 104, an output control unit 105, and a template generation unit 901. In the following description, the same processes as those of the information processing device 100 according to the first embodiment are designated by the same reference numerals as in FIG. 1, and description thereof will be omitted. The processing of each unit included in the functional configuration of the information processing device 100 is performed by hardware such as an ASIC or FPGA built into the information processing device 100, as in the information processing device 100 according to the first embodiment. The processing may also be performed by software using a memory such as a RAM and a processor such as a CPU.
[0061] The template generation unit 901 extracts character strings of each text object included in edited data such as template data acquired by the template acquisition unit 102, and generates database template data using the extracted character strings as field names. For example, the template generation unit 901 generates template data when a user presses the template creation button 307 shown in FIG. 3. The identification unit 103 uses a database created based on the template data to identify text objects that include character strings that completely match each field name. Furthermore, the generation unit 104 uses a database created based on the template data to replace character strings of text objects included in edited data, thereby generating layout data.
[0062] The operation of the information processing device 100 will be described with reference to Fig. 10. Fig. 10 is a flowchart showing an example of a processing flow of the information processing device 100 according to the third embodiment. Specifically, the flowchart shown in Fig. 10 is a flowchart when the information processing device 100 generates template data for a database. In the description of Fig. 10, the symbol "S" denotes a step. While the flowchart shown in Fig. 10 is being executed, the output control unit 105 generates an appropriate GUI as needed and displays the generated GUI on the display unit 205. In the following description, it is assumed that the processing of S601 shown in Fig. 6 has been completed when the flowchart shown in Fig. 10 starts.
[0063] The flowchart shown in Fig. 10 starts when the template creation button 307 shown in Fig. 3 is pressed. When the template creation button 307 is pressed, first, in S1001, the template generation unit 901 generates an empty database in which field names and record data are not set. The generated empty database is stored, for example, in RAM 203. Next, in S1002, the template generation unit 901 searches for the first text object from the template data acquired in S601. Next, in S1003, the template generation unit 901 determines whether a text object has been detected.
[0064] If it is determined in S1003 that a text object has not been detected, in S1008 the template generation unit 901 outputs the empty database stored in the RAM 203 as template data to the auxiliary storage device 204 or the like as a file. In this case, the template data stored as a file in the auxiliary storage device 204 or the like is an empty database with no field names set. Therefore, in this case, the template generation unit 901 does not need to output the template data. Also, in this case, the output control unit 105 may generate a GUI indicating an error, such as that appropriate template data could not be output, and display the generated GUI on the display unit 205.
[0065] If it is determined in S1003 that a text object has been detected, in S1004 the template generation unit 901 extracts the character string of the detected text object and sets the character string as the first field name in the database stored in RAM 203. After S1004, in S1005 the template generation unit 901 searches for the next text object from the template data acquired in S601. Specifically, the template generation unit 901 searches for text objects other than the text objects already detected from the template data. After S1005, in S1006 the template generation unit 901 determines whether the next text object has been detected.
[0066] If it is determined in S1006 that a text object has been detected, then in S1007 the template generation unit 901 extracts the character string of the detected text object and sets the character string as the next field name in the database stored in RAM 203. After S1007, the information processing device 100 returns to the process of S1005 and repeatedly executes the processes from S1005 to S1007 until it is determined in S1006 that a text object has not been detected. If it is determined in S1006 that a text object has not been detected, then in S1008 the template generation unit 901 outputs the database stored in RAM 203 as template data to the auxiliary storage device 204 or the like as a file. After S1008, the information processing device 100 ends the process of the flowchart shown in FIG. 10 . The user adds record data to the generated template data as appropriate to create a database. The information processing apparatus 100 acquires a database created using the template data in S602 shown in FIG. 6, and performs the processes from S603 onward shown in FIG. 6 to generate layout data.
[0067] The field names of the database generated by the information processing device 100 configured as described above are not erroneously set due to typos or the like. Therefore, the information processing device 100 uses a database created based on the generated template data, thereby making it possible to prevent erroneous field names from being set due to typos or the like made by the user. As a result, the information processing device 100 makes it possible to prevent failure in replacing character strings of desired text objects.
[0068] The above-mentioned template data has the character strings of all text objects included in the edited data set as field names. Therefore, for example, the user may delete field names for which the user does not want to replace the character string of a text object, and generate a database using the template data after deletion. Also, for example, for field names for which the user does not want to replace the character string of a text object, the user may leave the record data of the column corresponding to the field name blank. In this case, the information processing device 100 does not replace the character string of a text object corresponding to a field name for which the record data is blank.
[0069] In this embodiment, all text objects included in the edited data are searched for sequentially, but the search for text objects is not limited to this. For example, the user may select in advance in the preview image 306 only the text objects that the user wishes to set as field names, and then, with the selected text objects selected, press the template creation button 307. In this way, only the character strings of the selected text objects may be set as field names.
[0070] [Embodiment 4] An information processing device 100 according to a fourth embodiment (hereinafter also simply referred to as the "information processing device 100") will be described with reference to FIGS. 11 and 12. In this embodiment, a form in which layout data for variable printing is generated by a Web application will be described. First, the configuration of the information processing device 100 will be described with reference to FIG. 11. FIG. 11 is a block diagram showing an example of the functional configuration of the information processing device 100 according to the fourth embodiment. The information processing device 100 includes, as functional components, a database acquisition unit 101, a template acquisition unit 102, an identification unit 103, a generation unit 104, and an output control unit 105. In addition to these functional components, the information processing device 100 may also include, as functional components, at least one of a similarity search unit 701 and a template generation unit 901, which are not shown in FIG. 11. The information processing device 100 is configured by a server that operates as a backend of the Web application, and the server has a hardware configuration shown as an example in FIG. 2. The processing of each unit included in the functional configuration of the information processing device 100 is performed by software using, for example, a memory such as a RAM 203 and a processor such as a CPU 201. The processing of each unit provided as a functional configuration of the information processing device 100 is substantially the same as the processing of each unit provided as a functional configuration of the information processing device 100 according to the first to third embodiments, so only the differences will be described below.
[0071] The information processing device 100 is applied to an information processing system 1, which includes the information processing device 100 that operates as a backend of a Web application and a user terminal 10 that operates as a frontend of the Web application. The information processing device 100 and the user terminal 10 are connected to each other so that they can communicate with each other via a communication line 11 such as the Internet. The user terminal 10 is configured as a PC, mobile terminal, notebook PC, tablet terminal, PDA, or the like that is capable of running a Web browser.
[0072] The information processing device 100 generates information for constructing a GUI such as an editing screen 300 shown as an example in Fig. 3, and transmits the information to the user terminal 10 via the communication line 11. The information is rendered by a web browser running on the user terminal 10, and the user terminal 10 displays a GUI corresponding to the information on a display device (not shown in Fig. 11) built into or connected to the user terminal 10.
[0073] The operation of the information processing device 100 will be described with reference to Fig. 12. Fig. 12 is a flowchart showing an example of a processing flow of the information processing device 100 according to the fourth embodiment. In the description of Fig. 12, the symbol "S" denotes a step. Furthermore, while the flowchart shown in Fig. 12 is being executed, the output control unit 105 generates information for constructing an appropriate GUI as appropriate and transmits the information to the user terminal 10. Furthermore, the user terminal 10 generates a GUI corresponding to the received information and displays it on the display device as appropriate.
[0074] First, in S1201, the template acquisition unit 102 acquires template data. Specifically, for example, the user selects thumbnail image 303 that corresponds to the template data and is included in editing screen 300 displayed on the web browser. The user terminal 10 transmits information indicating the selected thumbnail image 303 to the information processing device 100 via communication line 11. The template acquisition unit 102 acquires the template data by reading out, from the auxiliary storage device 204 or the like, the template data that corresponds to the thumbnail image 303 indicated by the information.
[0075] The method of acquiring template data is not limited to the method described above. For example, the user may operate editing screen 300 to create new template data. In this case, template acquisition unit 102 acquires the newly created template data. Alternatively, for example, the user may operate editing screen 300 to select template data that is pre-stored in a storage device (not shown in FIG. 11 ) that is built into or connected to user terminal 10. In this case, user terminal 10 reads the selected template data from the storage device and transmits the template data to information processing device 100 via communication line 11. Template acquisition unit 102 acquires the template data received from user terminal 10.
[0076] Next, in S1202, the database acquisition unit 101 acquires the database 400. Specifically, for example, the user operates the editing screen 300 to select the database 400 that is stored in advance in a storage device (not shown in FIG. 11 ) that is built into or connected to the user terminal 10. The user terminal 10 reads the selected database 400 from the storage device and transmits the read database 400 to the information processing device 100 via the communication line 11. The database acquisition unit 102 acquires the database 400 received from the user terminal 10. Note that the database may contain personal information such as an individual's name or address, so the user terminal 10 may perform processing such as encryption or obfuscation on the read database and transmit the processed database to the information processing device 100.
[0077] Next, in S1203, identification unit 103 performs pre-insertion processing. Pre-insertion processing is processing equivalent to the processing from S603 to S608 shown in Fig. 6. Through this processing, identification unit 103 identifies, for each field name included in database 400, a text object that includes a character string corresponding to the field name from among the text objects included in the template data acquired in S1201.
[0078] Next, in S1204, the generation unit 104 performs a rear insertion process. The front insertion process corresponds to the processes from S611 to S615 shown in FIG. 6. Through this process, the generation unit 104 generates layout data corresponding to each record in the database 400. The information processing device 100 transmits each layout data generated in S1204 to the user terminal 10 via the communication line 11. The user terminal 10 outputs the layout data received from the information processing device 100 to, for example, a storage device (not shown in FIG. 11) built into or connected to the user terminal 10, and stores the data in the storage device. The output destination of the received layout data is not limited to the storage device. For example, the user terminal 10 may output the received layout data to an image forming device (not shown in FIG. 11) such as a printer connected to the user terminal 10, and record (print) the data on a recording medium. When the received layout data is to be recorded on a recording medium by an image forming apparatus, the user terminal 10 may output the received layout data to a printer driver or the like and cause the printer driver to print the layout data. After S1204, the information processing apparatus 100 ends the processing of the flowchart shown in FIG.
[0079] In the present embodiment, the information processing device 100 transmits each piece of layout data generated in S1204 to the user terminal 10, but the output destination of each piece of layout data generated in S1204 is not limited to the user terminal 10. For example, the information processing device 100 may output each piece of layout data generated in S1204 to a file server or an image forming device (not shown in Fig. 11) that is connected to the information processing device 100 and designated in advance by a user or the like.
[0080] Furthermore, in the present embodiment, it has been described that all of the processing of the database acquisition unit 101, template acquisition unit 102, identification unit 103, and generation unit 104 provided in the information processing device 100 is executed within the information processing device 100, but this is not limiting. For example, part or all of the processing of at least one of the database acquisition unit 101, template acquisition unit 102, identification unit 103, and generation unit 104 may be executed within the user terminal 10 that operates as a front end of a Web application.
[0081] According to the information processing device 100 configured as above, layout data for variable printing can be generated by a Web application using a database that can grasp field names associated with text objects on the database.
[0082] [Other embodiments] The present disclosure can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program. It can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
[0083] It should be noted that within the scope of the present disclosure, the embodiments may be freely combined, any component of each embodiment may be modified, or any component of each embodiment may be omitted.
[0084] [Configuration of the present disclosure] <Configuration 1> Computer, An acquisition means for acquiring the database; a specifying means for specifying, from one or more text objects included in the editing data indicating a layout, the text object including character string data corresponding to attribute character string data indicating each of one or more attributes, which are included in the database; a generating means for generating layout data by replacing character string data included in the text object identified by the identifying means with data of a record included in the database, the data corresponding to the attribute associated with the text object; and A program characterized by functioning as
[0085] <Configuration 2> The generating means generates the layout data corresponding to each of the one or more records included in the database. The program according to configuration 1, characterized in that:
[0086] <Configuration 3> The computer a comparison means for comparing the length of the character string included in the text object replaced by the generation means with the length of the character string of the data of the record; an output control means for controlling output of information indicating that the length of the character string of the data of the record exceeds the length of the character string included in the text object in a manner that is recognizable to a user, when the length of the character string of the data of the record exceeds the length of the character string included in the text object; To further function as 3. The program according to claim 1 or 2,
[0087] <Configuration 4> The computer a comparison means for comparing the length of the character string included in the text object replaced by the generation means with the length of the character string of the data of the record; a reduction means for reducing the font size of the character string of the data of the record when the length of the character string of the data of the record exceeds the length of the character string included in the text object; It further functions as When the length of the character string in the data of the record exceeds the length of the character string included in the text object, the generating means replaces the character string data included in the text object with the data of the record after the font size has been reduced by the reducing means. 4. The program according to any one of configurations 1 to 3, characterized in that:
[0088] <Configuration 5> The comparison means compares the length of the character string included in the text object with the length of the character string of the data of the record by comparing the number of characters in two corresponding character strings. 5. The program according to claim 3 or 4,
[0089] <Configuration 6> The comparing means compares the display widths of two corresponding character strings in two images obtained by rendering the edited data and the layout data, respectively, to compare the length of the character string included in the text object with the length of the character string in the data of the record. 5. The program according to claim 3 or 4,
[0090] <Configuration 7> The specifying means specifies the text object in which the character string of the attribute character string data is identical to the character string of the character string data included in the text object as the text object corresponding to the attribute indicated by the attribute character string data. 7. The program according to any one of configurations 1 to 6,
[0091] <Configuration 8> The computer a similarity search means for searching one or more pieces of character string data that are search targets for character string data similar to designated character string data, and detecting character string data corresponding to the designated character string data from the search targets; It further functions as When the specifying means cannot specify the text object corresponding to the attribute, the similarity search means searches for character string data similar to the attribute character string data indicating the attribute for which the corresponding text object could not be identified by the identification means, using character string data included in each of the one or more text objects included in the edited data as the search target; The generating means replaces character string data of the text object detected by the similarity search means with data of the record corresponding to the attribute indicated by the attribute character string data used when the similarity search means searches. 8. The program according to any one of configurations 1 to 7, characterized in that:
[0092] <Configuration 9> The computer an output control means for controlling the output of one or more pieces of character string data detected by the similarity search means so that the data can be recognized by a user; a selection acquisition means for acquiring information indicating character string data selected by the user from one or more character string data items output-controlled by the output control means; It further functions as When the specifying means cannot specify the text object corresponding to the attribute, the similarity search means searches for character string data similar to the attribute character string data indicating the attribute for which the corresponding text object could not be identified by the identification means, using character string data included in each of the one or more text objects included in the edited data as the search target; the output control means controls output of character string data of one or more of the text objects detected by the similarity search means; the selection acquisition means acquires information indicating character string data of the text object selected by the user; The generating means replaces character string data of the text object selected by the user based on the information acquired by the selecting and acquiring means with data of the record corresponding to the attribute indicated by the attribute character string data used when the similarity search means searches. 9. The program according to claim 8,
[0093] <Configuration 10> The similarity search means searches the search target for character string data that at least partially includes a character string equivalent to a part of the character string indicated by the specified character string data, thereby detecting character string data similar to the specified character string data from the search target. 10. The program according to claim 8 or 9,
[0094] <Configuration 11> The specifying means uniquely specifies the text object corresponding to the attribute from among the plurality of text objects including character string data corresponding to the attribute character string data when there are a plurality of text objects including character string data corresponding to the attribute character string data. 11. The program according to any one of configurations 1 to 10,
[0095] <Configuration 12> The computer a template generating means for extracting character string data included in at least one of the one or more text objects included in the edited data, and generating template data for the database in which the extracted character string data is set as the attribute character string data; It further functions as the identifying means identifies the text object corresponding to the attribute by using the database created based on the template data; The generating means generates the layout data using the database created based on the template data. 12. The program according to any one of configurations 1 to 11,
[0096] <Configuration 13> 13. The program according to any one of configurations 1 to 12, wherein the editing data is template data in which the text object is arranged in advance.
[0097] <Configuration 14> 14. The program according to any one of configurations 1 to 13, wherein the edited data is data in which the text object has been arranged by a user.
[0098] <Configuration 15> An acquisition means for acquiring the database; a specifying means for specifying, from one or more text objects included in the editing data indicating a layout, the text object including character string data corresponding to attribute character string data indicating each of one or more attributes, which are included in the database; a generating means for generating layout data by replacing character string data included in the text object identified by the identifying means with data of a record included in the database, the data corresponding to the attribute associated with the text object; and Having An information processing device characterized by:
[0099] <Configuration 16> an acquisition step of acquiring a database; an identifying step of identifying, from one or more text objects included in the editing data indicating the layout, the text object including character string data corresponding to attribute character string data indicating each of one or more attributes included in the database; a generating step of generating layout data by replacing character string data included in the text object identified in the identifying step with data of a record included in the database, the data of the record corresponding to the attribute associated with the text object; Having An information processing method comprising: [Explanation of symbols]
[0100] 100 Information processing device 103 Specific part 104 Generation part
Claims
A first reference means for referring to editing information indicating a layout including text objects, a second reference means for referring to association information in which a pre-replacement string and a plurality of post-replacement strings corresponding to the pre-replacement string are associated, control means for controlling to output a plurality of layout data in which, among the text objects included in the editing information, the string of the text object having a string corresponding to the pre-replacement string is replaced with each of the plurality of post-replacement strings associated with the pre-replacement string in the association information, An information processing system characterized by comprising: In the association information, a plurality of post-replacement strings are associated with each of a plurality of pre-replacement strings including a first pre-replacement string and a second pre-replacement string, The control means, Among the plurality of text objects included in the editing information, the string of the first text object having a string corresponding to the first pre-replacement string is replaced with the post-replacement string for the first layout data among the plurality of post-replacement strings associated with the first pre-replacement string in the association information, and the string of the second text object having a string corresponding to the second pre-replacement string is replaced with the post-replacement string for the first layout data among the plurality of post-replacement strings associated with the second pre-replacement string in the association information, and the first layout data, The string of the first text object is replaced with the post-replacement string for the second layout data among the plurality of post-replacement strings associated with the first pre-replacement string in the association information, and the string of the second text object is replaced with the post-replacement string for the second layout data among the plurality of post-replacement strings associated with the second pre-replacement string in the association information, and the second layout data, Controlling to output a plurality of layout data including The information processing system according to claim 1, characterized in that The association information is tabular information, Among the plurality of post-replacement strings corresponding to the same post-replacement string, one of the rows and columns of the tabular form is the same, corresponding to different post-replacement character strings, and for a plurality of post-replacement character strings for the same layout data, the other of the row and the column in the table format is the same The information processing system according to claim 2, characterized in that.
4. A plurality of post-replacement character strings for the same layout data are data of the same record group among a plurality of record groups included in the association information The information processing system according to claim 3, characterized in that.
5. The control means searches for a text object of a string corresponding to the pre-replacement character string among the text objects included in the editing information, and the string of the searched text object is replaced with each of the plurality of post-replacement character strings associated with the pre-replacement character string in the association information, and controls to output a plurality of layout data The information processing system according to claim 1, characterized in that.
6. The search is a similar search The information processing system according to claim 5, characterized in that.
7. The editing information is a template including a text object having a visible character string The information processing system according to claim 1, characterized in that.
8. Accept an operation from the user to select data to be used as the editing information from a plurality of layout data with different designs or layouts The information processing system according to claim 1, characterized in that.
9. The editing information is data created by the user arranging text objects The information processing system according to claim 8, characterized in that.
10. Further includes a notification means for notifying the user when the number of characters of the post-replacement character string or the display width when rendered is larger than that of the pre-replacement character string The information processing system according to claim 1, characterized in that.
11. The control means controls to output layout data replaced with a post-replacement character string having a font size smaller than that of the pre-replacement character string so that the display width of the post-replacement character string when rendered is within the display width of the pre-replacement character string when rendered The information processing system according to claim 1, characterized in that.
12. Further includes a generation means for generating the association information using the string of the text object extracted from the editing information as the pre-replacement character string The control means controls to perform the output using the association information obtained by adding the replaced character string to the association information generated by the generation means. The information processing system according to claim 1, characterized in that.
13. The generation means generates the association information in response to an operation of a specific display item in a state where a preview image based on the editing information is displayed. The information processing system according to claim 12, characterized in that.
14. The information processing system further includes a display control means for controlling to display a preview image based on the editing information, receives a selection of the association information used in the control by the control means based on an operation of a predetermined display item in a state where the preview image is displayed, The second reference means refers to the selected association information. The information processing system according to claim 1, characterized in that.
15. The plurality of layout data output by the control of the control means are output to and stored in a storage device, or output to a printer and printed, or output to a web server, or output to a social networking service. The information processing system according to claim 1, characterized in that.
16. A first reference step of referring to editing information indicating a layout including a text object, a second reference step of referring to association information in which a pre-replacement character string and a plurality of post-replacement character strings corresponding to the pre-replacement character string are associated, a control step of controlling to output a plurality of layout data in which a character string of a text object having a character string corresponding to the pre-replacement character string among the text objects included in the editing information is replaced with each of the plurality of post-replacement character strings associated with the pre-replacement character string in the association information. An information processing system control method, characterized by comprising.
17. A program for causing a computer to function as each means of the information processing system according to any one of claims 1 to 16.
18. A computer-readable storage medium storing a program for causing a computer to function as each means of the information processing system according to any one of claims 1 to 16.