尝试发送生成的PDF文件时出现问题

时间:2018-10-03 15:23:46

标签: php android mpdf

我对mpdf有问题。 在android系统上生成并下载pdf后,无法通过消息/电子邮件服务(whatsapp,facebook messanger,Gmail)将其发送出去。 但是打开文件时不会出现系统问题。

如果使用Whatsapp,则该应用会向我返回此消息“此文件不是文档”。 在Gmail中,电子邮件保留在外发邮件中。

在iOS系统上,我没有这个问题,可以通过消息/电子邮件服务毫无问题地发送pdf文件。

我不想广告任何服务只是为了提供信息

我已经在代码中设置了android的标头,例如关于stackoverflow的一些问题,没有任何结果。

有人可以帮助我吗? 提前致谢。 这是我的代码:

ob_clean();
header("Content-type: application/pdf");
header("Content-Disposition: attachment; filename=Some-Name");
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');

require_once '/home/[directory]/public_html/[directory]/[directory]/vendor/autoload.php';
$mpdf = new \Mpdf\Mpdf(['setAutoTopMargin' => 'pad','setAutoBottomMargin' => 'pad']);
$mpdf->text_input_as_HTML = true;
$mpdf->SetTitle("MY TITLE");
$mpdf->SetAuthor("My Author");
$header = '<div style="text-align: left; font-weight: bold;">Logo';
$footer = '<div style="text-align: left; font-weight: bold;">My Footer' ;
$mpdf->SetHTMLHeader($header);
$mpdf->SetHTMLFooter($footer);
$mpdf->SetWatermarkImage('mywatermark image path');
$mpdf->showWatermarkImage = true;
$mpdf->watermarkImageAlpha = 0.2;
$mpdf->WriteHTML($srting_with_html);
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
if (stripos($ua,'android') !== false) { // && stripos($ua,'mobile') !== false) {
    $mpdf->Output("My file Title.pdf", "I");
} else {
    $mpdf->Output("My file Title.pdf", "D");
};
ob_end_flush();

1 个答案:

答案 0 :(得分:0)

尝试此操作,您会丢失引号

ob_clean();
header("Content-type: application/pdf");
header("Content-Disposition: attachment; filename=Some-Name");
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');

require_once '/home/[directory]/public_html/[directory]/[directory]/vendor/autoload.php';
$mpdf = new \Mpdf\Mpdf(['setAutoTopMargin' => 'pad','setAutoBottomMargin' => 'pad']);
$mpdf->text_input_as_HTML = true;
$mpdf->SetTitle("MY TITLE");
$mpdf->SetAuthor("My Author");
$header = '<div style="text-align: left; font-weight: bold;">Logo';
$footer = '<div style="text-align: left; font-weight: bold;">My Footer' ;
$mpdf->SetHTMLHeader($header);
$mpdf->SetHTMLFooter($footer);
$mpdf->SetWatermarkImage('mywatermark image path');
$mpdf->showWatermarkImage = true;
$mpdf->watermarkImageAlpha = 0.2;
$mpdf->WriteHTML($srting_with_html);
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
if(stripos($ua,'android') !== false) { // && stripos($ua,'mobile') !== false) {
$mpdf->Output("My file Title.pdf", "I");
}else{
$mpdf->Output("My file Title.pdf", "D");
};
ob_end_flush();