web-dev-qa-db-ja.com

ファイルを保存しないTCPDF出力

TCPDFを使用して、ezpdfのように保存せずにブラウザでpdfファイルを出力する方法は?

25
Mirgorod

「インライン」にIを使用してブラウザにPDFを送信します。ファイルを保存する場合はFではなく]を使用します。

$pdf->Output('name.pdf', 'I');

48
Alec

これは、私がドキュメントで見つけたものです。

  • [〜#〜] i [〜#〜]:ファイルをブラウザにインラインで送信します(デフォルト)。使用可能な場合、プラグインが使用されます。 nameで指定された名前は、PDFを生成するリンクで「名前を付けて保存」オプションを選択したときに使用されます。
  • [〜#〜] d [〜#〜]:ブラウザに送信し、nameで指定された名前でファイルのダウンロードを強制します。
  • [〜#〜] f [〜#〜]:nameで指定された名前でローカルサーバーファイルに保存します。
  • [〜#〜] s [〜#〜]:文字列としてドキュメントを返します(名前は無視されます)。
  • [〜#〜] fi [〜#〜]:F + Iオプションと同等
  • [〜#〜] fd [〜#〜]:F + Dオプションと同等
  • [〜#〜] e [〜#〜]:base64 mimeマルチパートメール添付ファイルとしてドキュメントを返します(RFC 2045)
22
Baach

PDFブラウザビューアー(しばらくの間このソリューションを探していました)で開くのではなく、保存するためにブラウザーでダイアログウィンドウを開きたい場合、 'D'を使用する必要があります。

$pdf->Output('name.pdf', 'D');
12
Line

次のようにPDFヘッダー(header()関数を使用))を印刷します:header("Content-type: application/pdf");

次に、作成したPDFファイルの内容を(ディスクに書き込む代わりに)エコーします。

3
Chris Hasiński

私はOutput("doc.pdf", "I");を使用してきましたが機能しません。常にファイルを保存するように求められます。

私はドキュメントを見て、それを見つけました

ファイルをブラウザにインラインで送信します(デフォルト)。使用可能な場合、プラグインが使用されます。 nameで指定された名前は、PDFを生成するリンクで「名前を付けて保存」オプションを選択したときに使用されます。 http://www.tcpdf.org/doc/classTCPDF.html#a3d6dcb62298ec9d42e9125ee2f5b23a1

次に、プラグインを使用して印刷する必要があります。プラグインを使用しないと、ダウンロードされます。

2
Djonatan

ヒント-保存ファイルの場合:

$pdf->Output('sandbox/pdf/example.pdf', 'F');
2
siltendo

前述のとおり、インラインのIで動作しますが、Oでも動作します。

$pdf->Output('name.pdf', 'O');

おそらく覚えやすいでしょう(O for Open)。

1
Guppy