上述两个选项都可以使您的数据进入,但他们错过了关于颜色的其他问题。我假设数据输入时要根据唯一的序列号自动显示颜色,对吗?
所以答案分两部分:1.是的,你可以导入数据为XML。这将是最简单和最灵活的方式。数据合并适用于短文档,但对于大量数据来说,这将是一个熊。数据合并最终为每个数据记录创建一个文本框架。这将是很多额外的工作。
另一方面,可以导入XML以流过文档并自动填充页面,并基于段落和字符样式自行设置格式。本书:Adobe InDesign和XML设计者指南将教你如何导入XML。
问题2:“你如何生成彩色芯片”涉及更多一点。您必须编写XSLT才能根据序列号中的数字加载图形。我们通过使用xsl:choose
例程根据XML中的数据挑选正确数量的星星,从而在股票投资组合简介中与星级做类似的事情。如:
<xsl:choose>
<xsl:when test="name()='stars'">
<!-- <xsl:copy><xsl:apply-templates/></xsl:copy><xsl:text></xsl:text>-->
<xsl:choose>
<xsl:when test="current()[.=2]"><stars>H H</stars>
</xsl:when>
<xsl:when test="current()[.=3]"><stars>H H H</stars>
</xsl:when>
<xsl:when test="current()[.=4]"><stars>H H H H</stars>
</xsl:when>
<xsl:when test="current()[.=5]"><stars>H H H H H</stars>
</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
您可以创建类似的例程,甚至可以从硬盘驱动器或服务器加载图形。将XML导入InDesign时,可以在XML导入选项对话框中加载XSLT。这可以完成基于序列号加载彩色芯片的工作。
除了能够构建图形芯片外,XSLT还可以根据需要插入段落返回和其他样板文本和空白,从而帮助您构建数据内容。我喜欢使用<xsl:text></xsl:text>
来插入InDesign所需的空白。它像一个冠军。
多次XML文件不会有空白或太多。根据需要,XSLT方法将允许您在生成的布局中添加,去除和控制空白。
希望有所帮助。
Indesign没有使用Javascript的可能性?也许这是您填写文档的选项? – 2011-04-20 10:03:41