私の顧客は、Acrobat Pro で作成された PDF フォームを持っています。それぞれのフォームに「印刷」ボタンがあります。「印刷」ボタンの背後には、次の JavaScript があります。Adobe によると、これは依然として推奨される印刷方法です。
var pp = this.getPrintParams();
pp.printerName = "\\\\server2\\EN100Tiffs";
pp.interactive = pp.constants.interactionLevel.automatic;
this.print(pp);
app.alert("Document sent to printer", 3);
app.alert("Please close window after each use", 3);
上で指定したプリンターは、実際には、送信されたものをすべて TIFF (Alto Imaging の UltraTIFF ドライバー) に変換するユーティリティです。サーバーは Windows 2008 です。別のプロセスが継続的に TIFF ファイルをスキャンし、顧客のドキュメント イメージング システムに送信します。
これは Adobe Reader 10 まで機能していました。その時点で、ユーティリティは TIFF の生成を停止しました。お客様は Adobe Reader 9 を使用し続けることでこの問題を解決しましたが、現在は Reader 11 へのアップグレードを余儀なくされています。Reader 11 でも動作しません。
プリンタはクライアント マシンに設定されていないことに注意してください。クライアント マシンはすべて Windows 7 です。
また、ユーザーは PDF に直接アクセスすることにも注意してください。ブラウザウィンドウ内ではありません。
クライアント マシンで TIFF ドライバーをプリンターとしてセットアップした場合 ([スタート]、[デバイスとプリンター]、[プリンターの追加] を使用)、スクリプトは Adobe Reader 10 および 11 で機能します。プリンターがセットアップされていない場合、スクリプトは Reader で機能します。しかし、10 または 11 では機能しません。顧客は、ユーザーが誤ってプリンターに印刷することを恐れて、クライアントにプリンターをセットアップしません。印刷したものはすべて、ドキュメント イメージングで終了します。システム。
何が問題なのかを突き止めるために、印刷ボタンのスクリプトにエラー トラップを追加しました。
var pp = this.getPrintParams();
pp.printerName = "\\\\server2\\EN100Tiffs";
pp.interactive = pp.constants.interactionLevel.automatic;
try {
this.print(pp);
app.alert("Document sent to printer", 3);
} catch (err) {
app.alert("Error printing: " + err);
}
app.alert("Please close window after each use", 3);
ドキュメントを印刷しようとしたとき、エラーはスローされませんでした。エラー メッセージではなく「ドキュメントがプリンタに送信されました」というメッセージが表示されましたが、ドキュメントはまだプリンタに送信されていません。つまり、TIFF ファイルが作成されていないということです。
だから私の質問は:
Reader 9 から Reader 10 に移行する際に、Javascript からの印刷で同様の問題を経験した人はいますか?
エラーの原因となっているコード スニペットはありますか?
特にここまで読んでくれてありがとう :)