1

FPDFを使用して文字を PDF として動的に作成するスクリプトがあります。読み込み時に印刷ダイアログを表示するAutoPrint 機能を動作させることができました。

前のリンクには AutoPrintToPrinter と呼ばれる別の機能があり、条件付きで大音量の印刷をサイレントにすることが想定されています。

function AutoPrintToPrinter($server, $printer, $dialog=false)
{
    //Print on a shared printer (requires at least Acrobat 6)
    $script = "var pp = getPrintParams();";
    if($dialog)
    $script .= "pp.interactive = pp.constants.interactionLevel.full;";
else
    $script .= "pp.interactive = pp.constants.interactionLevel.automatic;";
$script .= "pp.printerName = '\\\\\\\\".$server."\\\\".$printer."';";
$script .= "print(pp);";
$this->IncludeJS($script);
}

プリンターとサーバーの名前はわかっていますが、何も起こりません。「うるさい」印刷を要求しても、ダイアログ ボックスすら表示されません。

この問題に関するAdobeチュートリアルも見て、次の修正されたコードを試しました

var pp = this.getPrintParams();
pp.interactive = pp.constants.interactionLevel.automatic;
pp.printerName = "Adobe PDF";
this.print(pp);

すべて運が悪い。

4

1 に答える 1

1

基本的に、PHPはハードウェアに簡単に接続できません。

次のように、ユーザーがコメントを実行してphpでファイルを印刷できます。

Windowsサーバーの場合

shell_exec("'C:\Program Files\Adobe\Acrobat 6.0\Reader\acrord32.exe' /t c:\filename.pdf \\myserver\myprinter");

Linuxサーバーの場合

exec("lp file.pdf");

これについてはよくわかりません。これがお役に立てば幸いです...これを試してみてください。

于 2012-11-16T12:33:05.057 に答える