我们创建了 InDesign 文件,现在我们想用 InDesign 文件中的可用内容填充数据库。
是否有 SDK 可以读取 InDesign 文件内容并将其填充到数据库中?
或者请建议从 InDesign 填充数据库的最佳方法?
我知道 InDesign 文件有一个 XML 导出,然后可以将其导入 DB……但是这个过程需要大量的手动工作来绑定 InDesign 文件中的内容之间的关系。
我们创建了 InDesign 文件,现在我们想用 InDesign 文件中的可用内容填充数据库。
是否有 SDK 可以读取 InDesign 文件内容并将其填充到数据库中?
或者请建议从 InDesign 填充数据库的最佳方法?
我知道 InDesign 文件有一个 XML 导出,然后可以将其导入 DB……但是这个过程需要大量的手动工作来绑定 InDesign 文件中的内容之间的关系。
您可以导出到 XML,但导入到数据库将取决于数据的结构。数据库非常愚蠢。他们希望所有数据按字段名称排序。如果您有正则化的数据,例如 first,last,phone/first,last,phone/ db 不会有问题。如果数据不遵循模式,则必须使用脚本。
您可以使用 VBScript 或 VB6 或 VBA 或 VB.NET 和 ADO(ActiveX 数据对象)对 InDesign 脚本 API 进行编程以写入数据库。
脚本将是要走的路。您可以直接从 Adobe 下载文档/SDK/教程以开始使用:
http://www.adobe.com/devnet/indesign/documentation.html
希望这可以帮助!
使用“标签”功能标记要导出到数据库的设计框架。
然后通过苹果或 javascript 导出标记帧的内容。
显然,我所知道的没有任何魔法。您可以根据文档中应用的样式生成 xml 结构,但这可能不符合您的数据库要求。我在这里第二个很多人。脚本是要走的路。几年前,我使用以前全部手工完成的目录来做到这一点。借助脚本,我们终于可以提取所有内容并将其注入数据库。
InDesign 文件中的内容大致可分为: - 文本(来自文本框架) - 图像(来自图形框架) - 来自文件的元信息(页数、框架和其他布局信息)
为了使用 InDesign 文件内容更新数据库,我建议使用 InDesign 脚本并为每个帧提供一些唯一的自定义标识符(您可以使用 insertLabel()/extractLabel() 脚本 API 来做到这一点。一旦你完成此操作后,您可以锁定后安全事件(检查 CEP 文档以获取确切的事件名称)并准备 InDesign 文档的完整 JSON(带有自定义框架 ID 和内容)。之后,您可以发送此JSON 到数据库并使用 ORM(例如教义)或自定义插件将相关字段映射到数据库表,具体取决于您使用的数据库。
希望这可以帮助!