我使用InDesign创建了一个交互式PDF,其中包含一些文本字段和一个按钮。 按下此按钮时,我希望它从文本字段中提取值 并将这些放入XML文件中。 那么这个按钮要做的就是调用动作"导出表单数据"用作文件扩展名* .xml。我认为这可以使用javascript(在按钮属性的操作选项卡中)完成,但我似乎无法找到它。
我有Adobe acrobat Pro 10,我在Mac上工作。
我已经尝试过以下代码:
this.saveAs("../Test.xml" , "com.adobe.acrobat.xml-1-00");
和
var name = getField("name").value;
var jobId = getField("jobId ").value;
var fieldsToSubmit = ['name', 'jobId'];
this.submitForm
({
aFields: fieldsToSubmit,
cSubmitAs: 'XML',
cPath: "../"
});
如果我使用cURL而不是定义了电子邮件地址的cPath,那么最后一个可行。 但这并不是我真正需要的。应将XML文件提交到本地存储,例如" /users/MyDocuments/Folder/filename.xml"。
有人可以告诉我我做错了什么吗? 或者这不可能吗?
亲切的问候
米希尔
答案 0 :(得分:0)
由于您要将导出的数据文件写入文件系统(而不是提交给服务),因此submitForm()并不合适。
最接近我的想法是出口为XFDF。 XFDF是FDF的XML表示,PDF原生表单数据格式。然后可以轻松地将XFDF转换为您需要的内容。
另一种方法是创建XML文件内容并将其写入数据对象,然后可以将其导出。
后者将获得立即可用的结果,但需要更多编程。
对于这两种方法,强烈建议您查阅Acrobat JavaScript文档,该文档是Acrobat SDK的一部分,可从Adobe网站下载。
答案 1 :(得分:0)
呜呜!我找到了!
var url = "mailto:testemail@qoppa.com?subject=My Subject&body=Here is my form data.";
this.submitForm({cURL: url, cSubmitAs: "XFDF"})
我修改了为“ XFDF”提供的解决方案:
https://kbpdfstudio.qoppa.com/send-email-with-pdf-form-data-using-javascript-submitform/
我所做的就是将“ XDFL”替换为“ XML”。
JavaScript魔术!
javascript button submit email xml xfdf form-data export mailto {{ 3}} pdf attachment fields textfields extract aggregate data