使用FPDF PHP时出现奇怪的字符? [英] weird characters when using FPDF PHP?

查看:202
本文介绍了使用FPDF PHP时出现奇怪的字符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用FPDF库生成pdf文件时,我得到此输出.

I'm getting this output when using FPDF library to generate a pdf file.

%PDF-1.3 3 0 obj<> endobj 4 0 obj<>流 x U n 0 <ˁ 7 8'!Z q(U〜 !B 8 o e l . e & l ltʙ :Cl k|| p |K e '-9 B Wj $F V t q 3到XrlQP % nc X B_!Sl + B } װ I (m HVendstream endobj 1 0 obj<> endobj 5 0 obj <> endobj 2 0 obj<< /ProcSet [/PDF/文本/ImageB/ImageC/ImageI] /字体<< /F1 5 0 R >>/XObject<< >> >> endobj 6 0 obj<< /制作人 (FPDF 1.7)/CreationDate(D:20151013130538)>> endobj 7 0 obj<< /类型 /目录/页1 0 R >> endobj外部参照0 8 0000000000 65535 f 0000000354 00000 n 0000000542 00000 n 0000000009 00000 n 0000000087 00000 n 0000000441 00000 n 0000000646 00000 n 0000000721 00000 n拖车<< /大小8/根7 0 R/信息6 0 R >> startxref 770 %% EOF

%PDF-1.3 3 0 obj <> endobj 4 0 obj <> stream x�U��n�0��<�ˁ�7��8'�!Z���q(U~���!B�8��o�e����l���e�&��l�tʙ��:Cl�k||��p�|K����e�'�-9���B���Wj�$F�����V��t���q��3to��XrlQP�%���n-c�X��B_!Sl�����+�� ����B�)װ�I����(m�����HV endstream endobj 1 0 obj <> endobj 5 0 obj <> endobj 2 0 obj << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI] /Font << /F1 5 0 R >> /XObject << >> >> endobj 6 0 obj << /Producer (FPDF 1.7) /CreationDate (D:20151013130538) >> endobj 7 0 obj << /Type /Catalog /Pages 1 0 R >> endobj xref 0 8 0000000000 65535 f 0000000354 00000 n 0000000542 00000 n 0000000009 00000 n 0000000087 00000 n 0000000441 00000 n 0000000646 00000 n 0000000721 00000 n trailer << /Size 8 /Root 7 0 R /Info 6 0 R >> startxref 770 %%EOF

我的代码:

header("Content-Type: application/pdf");

$pdf = new FPDF();

$pdf->AddPage();

$pdf->SetFont('Arial','B',16);

$pdf->Cell(40,10,'Hello World!');

$pdf->Output();


**when i check the header response this is what i get:**

Cache-Control:private, max-age=0, must-revalidate

Connection:Keep-Alive

Content-Disposition:inline; filename="doc.pdf"

Content-Encoding:gzip

Content-Length:708

Content-Type:text/html;charset=UTF-8

Date:Tue, 13 Oct 2015 17:17:47 GMT

Expires:Thu, 19 Nov 1981 08:52:00 GMT

Keep-Alive:timeout=5, max=100

Pragma:public

Server:Apache/2.4.10 (Ubuntu)

Set-Cookie:PHPSESSID=q20auj7ssdj2c1obhbfqu8ha85; path=/

Vary:Accept-Encoding

推荐答案

以下标题和输出命令是我目前在FPDF中使用的:

The following headers and Output command is what I currently use with FPDF:

// Set a filename
$filename = "AppName_Day_".$day1."_gen_".date("Y-m-d_H-i").".pdf";

// Send headers
header("Content-Type: application/pdf");
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header('Content-Disposition: attachment; filename="'.$filename.'"');
header("Content-Transfer-Encoding: binary ");

// Blast out the PDF
$pdf->Output('php://output');

值得注意的是,我的用例是一个动态文档,该文档在下次下载时可能会发生变化,因此我从不希望浏览器对其进行缓存.这也是一个下载文件,永远不会在浏览器中查看,因此content-disposition: attachment可能不适用于您的用例.

It's worth noting, my use case is a dynamic document that could change at the next download, so I never want a browser to cache it. It's also ALWAYS a download and never viewed in the browser, so the content-disposition: attachment may not apply to your use case.

这篇关于使用FPDF PHP时出现奇怪的字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆