2012-02-08 13 views
3

オブジェクトから添付されたすべてのPDFを印刷することが可能かどうかを知りたいと思います。 (私は怖いではないが、より良いの提示; D)アップロードされた複数のドキュメントをWebアプリケーションから印刷

コンテキスト:

ユーザーが自分のアカウントで複数のPDFファイルをアップロードし、その後、彼は「すべてのPDFの添付を印刷する」をクリックし、ダウンロードする代わりに「印刷」をクリックしてください。

ありがとうございました。

+1

これは良い質問です。Javascript .. window.print()を使用して印刷ウィンドウを開始することができます。IBMはCRM/ERPソフトウェアのいくつかでこれを行います。添付ファイルを連結し、印刷ダイアログ。 – gorelative

+0

添付ファイルをすべてユーザーディレクトリに一覧表示して、すべてのファイルをループで連続して表示するように指示します。 – bizzr3

+3

ここでは、PHP-PDF操作ツールを使用してPDFを単一のドキュメントにマージすることをお勧めします。ユーザーは一度だけ印刷する必要がありますが、自動的にプリンタに送信して印刷ダイアログをバイパスすることはできません。可能であれば、サーバー側ではないクライアント側のジョブ(JavaScript) – DaveRandom

答えて

2

あなただけのJSやPHPとJS(PHPで呼び出すことができ、おそらく、サーバー側のプログラム)の組み合わせのいずれかで、このことについて行くことができるいくつかの方法があります:

  1. は、対象文書を持っていますすべてのPDFをプログラム的に単一の文書(例えば、pdftk)に結合し、PDFヘッダーで結合されたファイルを出力するphpファイルです。このファイルはiframeに読み込まれ、JavaScriptでwindow.print()と呼ぶことができます。

  2. javacriptのwindow.print()関数を使用して、それぞれがPDFを読み込んだ複数の非表示iframeを対象にします。このアプローチの主な欠点は、複数の印刷ダイアログボックスを生成することです。これらのアプローチの

どちらも実際にブラウザのウィンドウ内でPDFファイルをロードするために必要な設定やプラグインを持つユーザーに依存しているが、彼らがいない場合、彼らは大容量のファイル/複数のファイルをダウンロードするよう求められます。

+0

1)は良いと思う、私はちょうどpdftk PDFを正しく結合することを願っています。 2)には1つの大きな欠点があります。ユーザーが20個のファイルを添付している場合はどうなりますか? 20のiframeと20の印刷ダイアログボックス: –

+0

ええ、#1はユーザーの方が簡単ですが、ちょっとした作業です。私はpdftkを多用しており、ファイルを結合するのは非常に簡単で信頼性があります。 PHPから呼び出すことは時々迷惑ですが、いくつかの環境でこれを設定したので、問題がある場合はお知らせください。 –

1

これはPHPで行うことはできません。どうして? PHPはサーバー側のスクリプトです。ユーザーのプリンタにアクセスすることはできません。

私の知る限り、javascriptの解決方法はありません。マイクは、プリンタのダイアログがjavascriptコマンドでアクセスできるという点では良い点を示しましたが、それは停止します。これは良いことですが、あなたの許可なしにプリンタを使用できるようにするために入力したページが必要なのでしょうか?

1

おそらく、すべてのpdfを1つのドキュメントサーバー側に連結し、ユーザーがそれをダウンロードして印刷できるようにするのが最も良い方法です。これは、原稿センターやおそらく他のオンライン学術ピアレビューシステムが行うことです。

関連する問題