TCPDFを使用して、ezpdfのように保存せずにブラウザでpdfファイルを出力するにはどうすればよいですか?
8 に答える
PDFをファイルとして保存するのでI
はなく、「インライン」で使用してPDFをブラウザに送信します。F
$pdf->Output('name.pdf', 'I');
これは私がドキュメントで見つけたものです。
- I:ファイルをブラウザにインラインで送信します(デフォルト)。可能な場合は、プラグインが使用されます。名前で指定された名前は、PDFを生成するリンクで[名前を付けて保存]オプションを選択するときに使用されます。
- D:ブラウザに送信し、名前で指定された名前でファイルを強制的にダウンロードします。
- F:nameで指定された名前でローカルサーバーファイルに保存します。
- S:ドキュメントを文字列として返します(名前は無視されます)。
- FI:F+Iオプションと同等
- FD:F+Dオプションと同等
- E:ドキュメントをbase64 mimeマルチパート電子メールの添付ファイルとして返します(RFC 2045)
PDFブラウザビューアで開かずに、保存するためにブラウザでダイアログウィンドウを開きたい場合(私はしばらくの間この解決策を探していました)、「D」を使用する必要があります。
$pdf->Output('name.pdf', 'D');
次のように(header()関数を使用して)PDFヘッダーを印刷します。
header("Content-type: application/pdf");
次に、(ディスクに書き込む代わりに)作成したPDFファイルのコンテンツをエコーします。
を使用していますが、Output("doc.pdf", "I");
機能しません。常にファイルの保存を求められます。
ドキュメントを調べたところ、
ファイルをインラインでブラウザに送信します(デフォルト)。可能な場合は、プラグインが使用されます。名前で指定された名前は、PDFを生成するリンクで[名前を付けて保存]オプションを選択するときに使用されます。 http://www.tcpdf.org/doc/classTCPDF.html#a3d6dcb62298ec9d42e9125ee2f5b23a1
次に、プラグインを使用して印刷する必要があると思います。そうしないと、ダウンロードされます。
ヒント-保存ファイル付き:
$pdf->Output('sandbox/pdf/example.pdf', 'F');
I
記載されているようにインラインで動作しますが、。でも動作しO
ます。
$pdf->Output('name.pdf', 'O');
おそらく覚えやすいでしょう(O
Openの場合)。
$filename= time()."pdf";
//$filelocation = "C://xampp/htdocs/Nilesh/Projects/mkGroup/admin/PDF";
$filelocation = "/pdf uplaod path/";
$fileNL = $filelocation."/".$filename;
$pdf->Output($fileNL,'F');
$pdf->Output($filename, 'S');