将网站数据导入Adobe InDesign

时间:2009-10-02 10:39:11

标签: adobe adobe-indesign

我希望我们的杂志团队能够在Adobe InDesign可以阅读的文件中下载网站数据。然后他们可以导入/打开文件,进行一些调整,并减少大量重复的手工劳动(他们目前使用复制和粘贴几个小时)。

在简短的谷歌之后我注意到InDesign的v2可以导入/导出XML所以也许这是我最好的选择?有没有其他选择,有人可以提供任何建议吗?

我正在使用PC,杂志团队在Mac上;我担心测试会很烦人。

我们希望格式化的数据非常简单 - 标题后跟一小段文本(重复约50次,比如说)。我稍后会询问如何导入图片。

感谢您的帮助。我现在会回到谷歌,但如果有人能够先指出一个更具体的方向,那将会很棒!

5 个答案:

答案 0 :(得分:7)

最新的indesign sdk中有一个xhtml到idml(indesign标记语言)xsl模板。您可以从中开始帮助您格式化idml输出。

这是sdk的链接: http://www.adobe.com/devnet/indesign/sdk/

下载“产品”版本。 xsl文件位于zip文件中的此路径中:devtools / sdktools / idmltools / samples / icmlbuilder / xsl / icml.xsl

由于mac问题,您可以将它们“保存”到共享目录中,然后创建一个实用程序来监视该目录并将保存的文件转换为输出目录。

否则,有一个firefox附加组件用于转换名为XSL Results的xml文件: https://addons.mozilla.org/en-US/firefox/addon/5023

我自己没有使用它,但看起来它可以在mac上为你完成将xhtml转换为idml的工作......

答案 1 :(得分:4)

这个问题有几种可能的答案。由于我看不到HTML的样本给出教育答案,我会给你几个可能的答案:

InDesign至少可以从CS版本导入XML。当时它并不是很强大,但自CS3以来它已经得到了改进。

  1. HTML如果写入XHTML标准基本上是XML。所有标签必须正确关闭,平衡和嵌套。 InDesign将无法导入任何格式不正确的文件。如果首先使用.XML扩展名保存HTML文件,则可以使用InDesign的XML导入功能导入HTML。 InDesign在文件命名区域中非常直观。作为一个实验,我已经多次这样做了,只要文件格式正确,它就能正常工作。

    然而,这种方法会带来很多你可能不想要或不需要的垃圾和垃圾。导入HTML内容的更好方法是创建一个XSLT,它只选择您想要的元素和内容。

  2. 创建一个XSLT,仅选择所需的HTML文件内容,例如<p>, <h1-h6>, <img>个元素。如果使用XSLT将HTML引用转换为XML图像引用,InDesign也将自行导入图像。可以编写XSLT以忽略脚本和其他不必要的代码。要使用XSLT,您可以将HTML文件的扩展名更改为XML,然后从XML导入对话框加载XSLT。

  3. 创建一个直接将HTML转换为XML的XSLT。您可以在InDesign外部或导入期间解析HTML。与之前的建议一样,如果要直接导入InDesign,则必须先将文件扩展名更改为XML。

  4. 您可以从我的书中获得XML功能的完整描述:Adobe InDesign和XML的设计者指南(Adobe Press,2008)以及Lynda.com视频教程中的最新描述:InDesign CS5:动态发布工作流程在XML中。

    如果您有一些HTML示例,我可以为您提供更具体的帮助。

答案 2 :(得分:0)

我发现自己的其他一些东西:

提及XSL的

Blog about XML import以及您应该在此过程中采取的一些步骤

Adobe InDesign CS3 and XML:技术参考

答案 3 :(得分:0)

在Indesign中,创建一个您想要自动化的示例。使用字符和段落样式。

选择示例,然后转到文件|出口。

在文本编辑器中打开此文件。这将为您提供您尝试创建的基本结构。您可以使用任何您喜欢的技术来填充它..

然后一旦你保存了片段。您可以将文件拖到Indesign页面上以创建新项目。

答案 4 :(得分:0)

我正在使用InDesign的Javascript将数据从mysql数据库导入InDesign。有一些定制的函数放置文本和图像,具有页面号,坐标,段落样式的名称等参数。然后有许多(1000+)调用这些函数,由php脚本生成,从db获取数据并计算页面和坐标。运行此Javascript后,只需几秒钟即可将所有内容准确放置在需要的位置。

我不知道InDesign的最新版本是否有更多的可能性,但是,对于InDesign CS的问题,我无法自动创建我需要的1000多个占位符对象,所以我发现了另一种方式......