php 使用wkhtmltopdf设置横向

b1zrtrql  于 2023-03-07  发布在  PHP
关注(0)|答案(3)|浏览(172)

如何更改Wkhtmltopdf生成的pdf文件的方向。我在PHP中调用它,如下所示:

$file = fopen("tmp/html/pdfTmp_$numRand.html", 
    "w") or exit("Unable to open file!");
fwrite($file, $html);
fclose($file);

exec("..\library\wkhtmltopdf\wkhtmltopdf " . 
    "tmp/html/pdfTmp_$numRand.html tmp/pdf/pdfTmp_$numRand.pdf");

header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header("Content-Disposition: attachment; filename=".$nom."_".$residence.".pdf");
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize("tmp/pdf/pdfTmp_$numRand.pdf"));
ob_clean();
flush();
readfile("tmp/pdf/pdfTmp_$numRand.pdf");

$html包含了我的整个html页面,这会打开一个临时文件。
这将生成一个纵向的.pdf。我知道wkhtlktopdf有一个-O landscape选项来更改方向,但我不知道在PHP脚本中如何编写这个选项。我使用的是Windows 7。

axr492tv

axr492tv1#

选项-O landscape就可以了。
就改吧

exec("..\library\wkhtmltopdf\wkhtmltopdf tmp/html/pdfTmp_$numRand.html tmp/pdf/pdfTmp_$numRand.pdf");

变成了

exec("..\library\wkhtmltopdf\wkhtmltopdf -O landscape tmp/html/pdfTmp_$numRand.html tmp/pdf/pdfTmp_$numRand.pdf");
tjvv9vkg

tjvv9vkg2#

我觉得这一点在这里也值得一提:
我在这方面也遇到了麻烦,但我已经设置了--方向“横向”,还设置了--页高“210 mm”和--页宽“297 mm”
我的pdf文件总是出现在肖像版中,非常令人沮丧。
我说得太清楚了,去掉页高和页宽选项就解决了这个问题

62o28rlo

62o28rlo3#

这对我很有效
导入pdfkit
配置文件= pdfkit.配置文件(配置文件=“C:\程序文件\文件夹\文件. exe”)

options = {
    'orientation':'Landscape'
}

pdfkit.from_file("C:\\output.html","C:\\output.pdf", configuration=config,options=options)

相关问题