我通过 Symfony Bundle 使用 wkhtmltopdf knp Snappy bundle只要我使用 px 作为大小,它就可以正常工作。但是我需要根据 A4 尺寸生成一张贴纸,但我什么都做不对:我将 wkhtmltopdf 的所有边距设置为 0
$snappy->setOption('margin-top', '0mm');
$snappy->setOption('margin-left', '0mm');
$snappy->setOption('margin-right', '0mm');
$snappy->setOption('margin-bottom', '0mm');
然后在我的测试 html(它是应用程序中的一个 Twig )中的一个列:我试过一个简单的:
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
</head>
<body style="margin:0;padding:0">
<div style="background-color:red;width:99%;height:1400px;border:solid #000 1px">
<div style="background-color:green;display:inline-block;padding:0;margin:0;width:105mm;height:297mm"></div>
<div style="background-color:yellow;display:inline-block;padding:0;margin:0;width:105mm;height:297mm"></div>
</div>
</body>
</html>
我也尝试过使用英寸:105 => 4.13 英寸,297 毫米 => 11.69 英寸结果相同
我也试过直接生成(没有包)
wkhtmltopdf --page-size A4 -B 0 -L 0 -R 0 -T 0 test.html output.pdf
同样的结果
这是我得到的:
为什么 A4 尺寸的一半:105 毫米或 4.13 英寸不起作用?我还尝试在 wkhtmltopdf 设置中直接设置页面大小:页面高度和页面宽度没有变化。
我不能使用百分比,因为使用真实数据我会有更复杂的设置(左右边距、2、3...列)
设置可能有什么问题?是 CSS 问题吗? wkhtmltopdf 问题?
我发现使用 --disable-smart-shrinking
选项很有帮助。默认情况下,--enable-smart-shrinking
被激活并在使用绝对测量值(in,mm)时扰乱 html 渲染 link to doc
我是一名优秀的程序员,十分优秀!