尝试使用AcroJS使用Adobe Acrobat Reader写入文本文件。

作为一个概念,我了解了如何在Acrobat中使用受信任的函数,但是当我尝试运行以下示例以使用this.saveAs(..)以不同的名称保存(不同的问题,然后是原始的)pdf表单时,收到了一个错误。
我的问题有两个。

1-为什么我会收到“安全设置阻止访问此属性或方法”错误,并且该如何解决?

javascript文件夹中的受信任函数为follwos(在网络上可用)

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

我正在将文档中的受信任函数称为follwos,并期望将在“C:/test”内部生成一个名为sample.pdf的文件。
     if(typeof(mySaveAs) == "function")
     {
         mySaveAs("/C/test/sample.pdf");
     }
     else
     {
      app.alert("Missing Save Function");
     }

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

最佳答案

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

    有关增强安全性的其他信息,请引用:http://www.adobe.com/devnet-docs/acrobatetk/tools/AppSec/enhanced.html
  • 据我所知,没有任何函数可让您将任意数据写入文本文件或XML文件。但是,您有两种选择:
  • 使用Doc.exportAsText(文本)和Doc.exportAsFDF(XML)从精心设计的字段中导出数据。这不是很简单,有点尴尬,但是可以。
  • 使用Net.HTTP.requestNet.SOAP将数据发送到临时本地Web服务器(例如,简单的运行Python或PHP的服务器),并让它们处理请求。这使您几乎可以做任何您想做的事,但是需要更多的工作来设置服务器。

  • 请参阅:Acrobat JS API Reference

    关于javascript - 使用Acrobat JavaScript编写文本文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13760440/

    10-12 12:40
    查看更多