使用acrobat javascript编写文本文件

Kar*_*man 6 javascript acrobat

尝试使用AcroJS写入带有Adobe Acrobat Reader的文本文件.

作为一个概念,我得到了如何在Acrobat中使用可信函数,但是当我尝试运行以下示例来保存(与原始版本不同的问题)时,使用this.saveAs(..)在不同名称下的pdf表单收到错误.我的问题是双重的;

1-为什么我得到"安全设置阻止访问此属性或方法"错误,如何摆脱它?

javascript文件夹中的可信函数就像follwos(网页上的copeid)

  var mySaveAs = app.trustedFunction( function(cFlName)
   {
        app.beginPriv();
       try{
             this.saveAs(cFlName);
           }
         catch(e){
              app.alert("Error During Save " + e.message );
              }
         app.endPriv();
    });
Run Code Online (Sandbox Code Playgroud)

我从doucment调用可信函数作为follwos并期望在"C:/ test"中生成名为sample.pdf的文件

     if(typeof(mySaveAs) == "function")
     { 
         mySaveAs("/C/test/sample.pdf");
     }
     else
     {
      app.alert("Missing Save Function");
     }
Run Code Online (Sandbox Code Playgroud)

2-如何写入文本文件?在这里,我想从PDF表单中提取一些字段值,并将它们写入文本文件(或XML)!

999*_*999 3

  1. 正如您可能已经猜到的,这是一种防止恶意脚本造成严重破坏的安全措施。您需要关闭安全设置。为此,请按 Ctrl+K 进入“首选项”,转至“增强安全性”选项卡并将其禁用。

    有关增强安全性的更多信息,请参阅:http://www.adobe.com/devnet-docs/acrobatetk/tools/AppSec/enhanced.html

  2. 据我所知,没有任何函数可以让您将任意数据写入文本文件或 XML 文件。但是,您有几个选择:

    • 使用Doc.exportAsText(文本)和Doc.exportAsFDF(XML)从精心设计的字段中导出数据。这不是很简单,而且有点尴尬,但它确实有效。

    • 使用Net.HTTP.requestNet.SOAP将数据发送到临时本地 Web 服务器(例如:运行 Python 或 PHP 的简单内容)并让它们处理请求。这允许您做几乎任何您想做的事情,但需要更多的工作来设置服务器。

    请参阅:Acrobat JS API 参考