1

我试图通过导入 XML 数据在 InDesign 中生成一些内容,但我不知道该怎么做。这是我所拥有的:

XML

<stuff>
    <person>
        <name>John</name><age>42</age>
        <name>Oscar</name><age>39</age>
    </person>
</stuff>

这就是我想要的结果:

设计

Person: John, 42
Person: Oscar, 39

我该怎么做呢?这是发布此类问题的正确网站吗?

4

3 回答 3

3

这实际上很容易做到这一点。完整的指导可以在 Adob​​e InDesign 和 XML 设计师指南一书中找到。

最简单的方法是将您的 XML 源文件导入 InDesign。将一个数据节点拖到布局中。在数据前面添加重复的文本元素,例如“Person:” 格式化所有占位符(按照 xml 中出现的顺序保留它们),然后从结构面板中删除不属于主要占位符的所有节点.

重新导入 XML 源并在 Import xml 对话框中选中复选框:克隆重复元素...,仅导入匹配的元素...,和“忽略空格...”

这将在 XML 数据中,并以您想要的方式对其进行格式化。您的布局可能仅针对一个数据节点进行结构化。要使其余部分流动,只需将适当的父元素从结构面板拖到布局中。

InDesign 的 XSLT 功能有限,主要是 XML 导入选项对话框中的选项。如果您需要更详细的内容,则必须在导入期间使用外部 XSLT。

InDesign 仅支持 XSLT 1.0 版

于 2011-11-21T14:54:28.597 回答
2

这不是一个编程问题,因此不太适合 stackoverflow。您可以查看http://help.adobe.com/en_US/indesign/cs/using/index.html,其中有一个关于 XML 的部分。如果您仍然遇到问题,可以尝试在http://forums.adobe.com/community/indesign/indesign_general上的 InDesign 社区论坛中提问。

于 2011-11-21T12:53:01.443 回答
2

Pandoc有许多导入器(例如从 HTML 或 DocBook XML),现在可以导出为 InDesign 的 ICML 格式(基于 XML 的IDML 格式的开放子集)。然后可以将生成的文件像任何其他外部依赖项一样放置在 InDesign 中。

还有一个可用的XSLT 样式表将 XHTML 直接转换为 InDesign 的 ICML 格式。

确保您的 HTML 输入文件以:

<?xml version="1.0" encoding="utf-8" ?>
<html xmlns="http://www.w3.org/1999/xhtml">
于 2013-11-28T10:56:38.467 回答