0

我从一个 php 脚本创建了一个 pdf,并希望这个 pdf 在用户打开它后立即打印出来。没有更多的互动。为此,我发现,我可以添加一个可以使打印自动打印的 javascript,理论上即使没有任何弹出窗口或警报。

我尝试了所有可以在所有论坛上找到的嵌入 javascript 组合,即:

  1. 将interactionLevel 设置为静默或自动。

    $script = "var pp = getPrintParams(); pp.interactive = pp.constants.interactionLevel.silent; this.print(pp);"

  2. 老式:

$script = 'this.print({bUI: false, bSilent: true});

  1. 将功能设置为特权:

$script = "sPrint = app.trustedFunction( function(){ app.beginPriv(); this.print({bUI:false, bSilent:true}); app.endPriv(); }); sPrint();"

我什至尝试添加注册字段

Acrobat Reader/DC/AVAlert/cCheckbox/cAcrobat/iWarnScriptPrintAll=1 Acrobat Reader/DC/EWH/bExecutePrint=1

但是当我打开pdf时,我仍然无法摆脱弹出警报窗口。我尝试在 Adob​​e Reader DC 和 Foxit 中打开它。我得到同样的警告:

此文档正在尝试打印。你想允许这个吗?

有谁知道如何抑制这个弹出窗口?谢谢你。

4

1 回答 1

1

未经用户同意或选择加入,您不能,也不能。您可以在以下条件之一下静默打印脚本,但在每种情况下,用户都需要通过执行以下操作之一来选择加入。

  1. 允许您调用受信任函数进行静默打印的脚本需要安装在用户计算机上的特权文件夹中。
  2. 可以将文档保存到特权文件夹。
  3. 您可以要求用户将您的域添加到特权域列表中。
    1. 签署文档并要求用户信任您的证书。

请参阅 Acrobat JavaScript 文档的特权上下文部分 http://help.adobe.com/en_US/acrobat/acrobat_dc_sdk/2015/HTMLHelp/Acro12_MasterBook/JS_API_AcroJSPreface/Privileged_context.htm

于 2017-02-03T17:49:53.437 回答