如何使用 XML 数据生成 InDesign 内容

发布于 2024-12-16 15:46:32 字数 425 浏览 3 评论 0原文

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

XML

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

这是我想要的结果:

InDesign

Person: John, 42
Person: Oscar, 39

我该如何去做呢?这是发布此类问题的正确网站吗?

I'm trying to generate some content in InDesign by importing XML data, but I can't figure out how to do it. Here's what I have:

XML

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

And here's what I want the result to look like:

InDesign

Person: John, 42
Person: Oscar, 39

How do I go about doing this? Is this the right site to post a question like this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

孤独患者 2024-12-23 15:46:32

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

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

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

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

InDesign 仅支持 XSLT 版本 1.0

The easiest way to do this is to import your XML source into InDesign. Drag one data node into the layout. Add the repetitive text elements in front of your data, such as "Person:" Format all your placeholders (keep them in the order appearing in the xml) and then delete all nodes from the structure panel that aren't part of the main placeholders.

Re-import the XML source and in the Import xml dialog check the boxes: clone repeating elements..., only import elements that match..., and "ignore whitespace..."

This will being in the XML data and format it in the manner you want. Your layout may be structured only for one data node. To flow the rest, just drag the appropriate parent element from the structure panel to the layout.

InDesign has limited XSLT capabilities, mostly the options in the XML import options dialog. If you need anything more elaborate you'll have to use an external XSLT during import.

InDesign only supports XSLT version 1.0

¢好甜 2024-12-23 15:46:32

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

This isn't a programming question so not really suited for stackoverflow. You could check out http://help.adobe.com/en_US/indesign/cs/using/index.html, there is a section concerning XML. If you're still having problems you could try asking in the InDesign community forums at http://forums.adobe.com/community/indesign/indesign_general.

爱你不解释 2024-12-23 15:46:32

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">

Pandoc has lots of importers (for example from HTML or DocBook XML) and can now export to InDesign's ICML format (an open subset of the XML-based IDML format). The resulting file can then be placed in InDesign like any other external dependency.

There is also a usable XSLT stylesheet to convert XHTML directly to InDesign's ICML format.

Make sure your HTML input file starts with:

<?xml version="1.0" encoding="utf-8" ?>
<html xmlns="http://www.w3.org/1999/xhtml">
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文