4.8 数据合并

数据合并用于批量制作名片、胸卡、邀请函等。先完整制作一个模板,然后数据源里的数据(文本、图片)会自动逐条填进相应的位置,自动生成多张作品,省去了人工复制、粘贴的麻烦。本节涉及的内容较多,建议放在第9章以后阅读。

4.8.1 每个页面一个记录

在最终生成的文档里,每个页面里只有一张名片。所以页面尺寸就是一张名片的尺寸。

案例4-15:制作代表证

某公司召开会议,邀请了很多公司出席。与会人员的资料都被登记在了Excel文档里,现在要给每人制作一个代表证,见图4-78。

图4-78 代表证

制作Excel文件,见图4-79。

图4-79 Excel数据文件

删除一切无关的东西(批注可不删)。

横向是项目;纵向是个体。

项目名称不能为空,但具体内容不重要,因为它最终不会在页面里出现。

数据里不能有手动转行(按Alt+Enter组合键)。

内部不能有空列或空行。

在完成后,保存文档。

制作数据源,见图4-80。

图4-80 数据源

Excel文档里只保留核心数据,无关内容一律删除。甚至外围的单元格里连空格也不要有。

把Excel文档另存为Unicode文本。

如有图片,宜与图片放在同一文件夹里,否则还要在Excel文档里对图片的数据加上路径,如D:\客户图片\顾香茹.jpg。

关闭该Excel文档,单击【不保存】。

制作一个完整的样板。即选一个典型的人,并在InDesign里制作好,见图4-81。

图4-81 完整的样板

对于变化的文本(如职务、公司名称),要给最长的文本留够空间,否则长文本可能会溢流。

可以实现这样的效果:把文本框的宽度固定。当文本较多时,会自动压缩每个文字的宽度,使文本框恰好能放置这些文本。本例就对公司名称这样设置,方法如下所述(如果不需要这样的效果,就忽略下面的步骤A、B、C)。

A在文本框宽度够用时,宽度不变;在文本框宽度不够用时,宽度会自动扩大到恰好够用。操作如下所述。

选中文本框,【对象】→【文本框架选项】,打开“文本框架选项”对话框,见图4-82。

图4-82 “文本框架选项”对话框

【自动调整大小】选【仅宽度】,表示高度不变,宽度自动适应文本。

选择中心的锚点,表示文本框的中心固定不变,宽度在左右方向上平均增减。

【最小宽度】输入68mm,表示当文字较少,即文本框的宽度有富余时,宽度不会变窄,而是仍然保持68mm。

勾选【不换行】,表示文本始终保持一行。

B把文本框放进一个尺寸相同的框架内。

使用[矩形框架工具](见图4-83)在文本框上画一个相同尺寸的框架,即框架与文本框恰好完全重叠。

图4-83 矩形框架工具

选中文本框(第一次单击,选中的会是刚才画的框架;按住Ctrl键,再次单击,就会选中文本框);按Ctrl+X组合键,选中框架,按Ctrl+Alt+V组合键,即可将其粘贴进框架内部。

本步骤把文本框放在一个等尺寸的容器内,可以通过这个容器限制文本框的尺寸。

C对框架应用对象样式,规定容器尺寸不变,让文本框去适应容器。即当文本框变大后,会压缩尺寸以适应容器。

选中框架,【对象样式】面板菜单→【新建对象样式】,勾选【将样式应用于选区】,单击【框架适合选项】,见图4-84。

图4-84 “新建对象样式”对话框(局部)

【适合】选【内容适合框架】。

【对齐方式】选中心锚点,表示以中心位置为基准。

引入数据源,见图4-85。

图4-85 【数据合并】面板

打开【数据合并】面板的方法:【窗口】→【应用程序】→【数据合并】。

【数据合并】面板菜单→【选择数据源】,选刚才另存的Unicode文本。

一个文档只能引入一个数据源文件。

添加数据变量,见图4-86。

图4-86 添加数据变量

文本变量:选中样板里的“顾香茹”,单击【数据合并】面板里的【姓名】;选中“销售副经理”,单击【职务】;等等。

图片变量:选中图片,单击【相片】。如果图片的尺寸不一,就要设置怎样显示这些图片,【数据合并】面板菜单→【内容置入选项】,见图4-87。

图4-87 “内容置入选项”对话框

二维码:选中放置二维码的框架,单击【网址】。

预览效果,见图4-88。

图4-88 预览效果

在【数据合并】面板中勾选【预览】。

本步骤非必须,只是为了预先查看有无明显错误。

批量生成代表证,见图4-89。

图4-89 批量生成代表证

【数据合并】面板菜单→【创建合并文档】,打开如图4-90所示的对话框。

图4-90 “创建合并文档”对话框

【每个文档页的记录】选【单个记录】。

如果要限制文档页数,就打开【选项】选项卡,勾选【每个文档的记录限制】,输入限制的页数。

单击【确定】,会自动新建一个文档,包含批量生成的代表证。

解决溢流文本。

本例设置了自动压缩文字宽度,但是该功能不会自动更新,所以造成了部分文本被遮挡(见图4-88)。我们可以通过查找、替换来一次性解决上述问题。按Ctrl+F组合键,切换到【对象】选项卡,单击【查找对象格式】下面的方框区域,打开“查找对象格式选项”对话框,在【对象样式】中选前面新建的那个对象样式,单击【确定】;用同样的方法,在【更改对象格式】中也选这个新建的对象样式,见图4-91。单击【全部更改】,则凡是使用了这个新建的对象样式的对象(即“公司名称”框架)都会重新应用这个新建的对象样式。

图4-91 “查找/更改”对话框

如果没有设置自动压缩文字宽度,就要逐个进行手动处理。

代表证有两面,另一面的内容通常是固定内容,如日程安排等。有以下两种方案。

方案1:这两面各自一个文档,单独制作,每个文档只有一个页面。

方案2:这两面在一个文档里一起制作,这个文档有两个页面。引入数据源、添加变量等操作与上例相同,只是在最后批量生成时会以这两面为单位,见图4-92。

图4-92 批量生成代表证(两面一起制作)

4.8.2 每个页面多个记录

在最终生成的文档里,每个页面含有多张名片,页面尺寸较大。

案例4-16:制作代表证(需要拼版)

同上例,但是要求将多张代表证拼在A4打印纸大小的页面里。

不必使用拼版软件,在InDesign里就可以解决。

接上例的步骤6(也可以认为是接步骤5,因为在步骤6里并没有改动)。更改页面尺寸为A4纸大小,见图4-93。

图4-93 更改页面尺寸

按Ctrl+Alt+P组合键,在【页面大小】中选【A4】预设。

只有单页面文档才能使用这种拼版功能,多页文档必须拆分成多个单页文档。

批量生成代表证。

锁定的对象必须先解锁,按Ctrl+Alt+L组合键即可。

【数据合并】面板菜单→【创建合并文档】,打开如图4-90所示的对话框。

在【每个文档页的记录】中选择【多个记录】。

单击【多个记录版面】选项卡,见图4-94。勾选【预览多个记录版面】,在【栏间】【行间】中调整代表证间距;在【上】【左】中调整页边距。

图4-94 “创建合并文档”对话框

单击【确定】,会自动新建一个文档,包含批量生成的代表证,见图4-95。

图4-95 批量生成代表证(拼版)

解决溢流文本,同上例的步骤8。

如果要自己打印,则适宜采用拼版以节约纸张。如果要交给印刷厂印刷,则可以直接给印刷厂提供单个记录。印刷厂是拼版方面的专家,不需要设计师先拼一次。

另外,如果日后代表们的资料需要变更,而在修改完Excel文件后,InDesign文档不会自动随之变更,就需要重新制作数据源,继续在包含变量的InDesign文档里更新数据源,最后重新批量生成代表证,并处理溢流文本。

最后,讨论一下Excel里手动转行的问题。

Excel单元格的宽度有限,里面的文本可以设置为自动转行,当文本流到达尽头时,会自动转行;也可以不设置自动转行,但多出的文本可能显示不出来(实际上还在,只是看不到)。不管是否自动转行,其本质仍是一行文本,所以完全可以在InDesign里进行数据合并。

但是如果在Excel里对文本设置了手动转行(即按Alt+Enter组合键),那么在InDesign里进行数据合并的结果就很难令人满意。

遇到确实需要在Excel里对文本设置手动转行的情形(见图4-96),可以采用以下方法解决。

图4-96 Excel文本手动转行

把整个Excel数据表格,复制并粘贴到Word文档中。在Word文档里进行查找和替换,把手动换行符替换为一个肯定不会出现的字符串(如“RRR”),查找和替换的操作如下所述。

按Ctrl+H组合键,打开“查找和替换”对话框。

将光标放在【查找内容】里,【特殊格式】→【手动换行符】,会自动填上相应的语句。

在【替换为】里输入“RRR”,见图4-97。

图4-97 Word“查找和替换”对话框(局部)

单击【全部替换】。

选中该Word表格,复制并粘贴到一个新的Excel文档里。同时原来那个Excel文档就不再使用了。然后进行数据合并。

在最终的InDesign文档里进行查找和替换,把“RRR”替换为强制换行符。操作如下所述。

按Ctrl+F组合键,打开“查找/更改”对话框,切换到【GREP】选项卡。

在【查找内容】里输入“RRR”。

将光标放在【更改为】里,单击右侧【@】→【强制换行符】,会自动填上相应的语句。

在【搜索】中选择【文档】,见图4-98。

图4-98 InDesign“查找/更改”对话框(局部)

单击【全部更改】。


[1] 图中的“下划线”应为“下画线”,特此说明。