2015-04-05 54 views
1

出于测试目的,我试图创建一个PDF,打开后自动关闭并关闭Acrobat Reader。类似于在Word中执行Auto_Open宏:Application.Quit。PDF中的Autoclose宏

我有Acrobat Professional 9.0,但我看不到如何做到这一点。但是,我在Acrobat网站上看​​到有关“操作”(Acrobat宏)的讨论。

谢谢。

回答

3

操作是不太你在找什么...

和Acrobat/Reader无法完全不能做什么你问它...出于安全原因,它是不可能以编程方式终止的Acrobat /阅读器。所以,戒烟是不可能的。你所能做的就是关闭文档。

你会为此使用Acrobat JavaScript。为了看到它真的起作用,我建议首先尝试一个两页的文档。到了第二页,添加以下PageOpen脚本(以后,你可以做到这一点的第一个页面太):

this.dirty = false ; 
this.closeDoc() ; 

通过显示的页面tumbnails创建PageOpen脚本,然后选择上下文菜单您想要访问的页面。在那里打开“页面属性...”对话框,然后切换到“页面操作”选项卡。选择为PageOpen运行JavaScript作为操作,并添加上面的代码。

更新,由Neil Weicher后评论:

如果要延时关闭,你可以使用setTimeOut()方法,如在这个例子中显示(其中也使用了关闭文档的说法,而不问是否保存(脏标志设置为false的等价物);延迟为5秒(5000毫秒)):

myDelay = app.setTimeOut("this.closeDoc(true) ; app.clearTimeOut(myDelay) ;" , 5000) ; 

注:虽然超时对象应该得到的文档关闭时复位,它是安全做它在延迟的脚本中。

而且应该这样做。

+0

感谢您的提示。该命令似乎是_this.closeDoc()_而不是this.close。有趣的是,它似乎关闭了Acrobat.exe而不是AcroRd32.exe。我不知道这是为什么?我试图添加的一件事是在执行closeDoc之前5秒延迟。我试图在closeDoc之前添加它,但似乎忽略它: _this.timeDelay = 5; _ – 2015-04-06 08:59:53

+0

感谢您指出关于closeDoc的错误;我在答案中纠正了它。我还为延迟添加了正确的代码。 (timeDelay不是Acrobat JavaScript)。 – 2015-04-06 11:41:07

+0

我找到了一个菜单操作File.Exit。我为它添加了一个单独的问题,因为它似乎有点不同。 http://stackoverflow.com/questions/29470866/cannot-execute-file-exit-action-in-acrobat-pdf – 2015-04-06 12:03:27