wkhtmltopdf 或 css 尺寸问题(A4、mm、in)

Ove*_*ose 2 css wkhtmltopdf

我正在通过 Symfony Bundle knp Snappy bundle使用 wkhtmltopdf ,只要我使用 px 作为大小,它就可以正常工作。但是我需要根据 A4 尺寸生成一张贴纸,但我什么都做不了:我将 wkhtmltopdf 的所有边距设置为 0

$snappy->setOption('margin-top', '0mm');
$snappy->setOption('margin-left', '0mm');
$snappy->setOption('margin-right', '0mm');
$snappy->setOption('margin-bottom', '0mm');
Run Code Online (Sandbox Code Playgroud)

然后在我的测试 html(它是应用程序中的一根树枝)中的一列:我尝试了一个简单的:

<!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>
Run Code Online (Sandbox Code Playgroud)

我也试过英寸:105 => 4.13in, 297mm => 11.69in,结果相同

我也试过直接生成(没有包)

wkhtmltopdf --page-size A4 -B 0 -L 0 -R 0 -T 0 test.html output.pdf
Run Code Online (Sandbox Code Playgroud)

结果相同

这就是我得到的: 在此处输入图片说明

为什么 A4 尺寸的一半:105 毫米或 4.13 英寸不起作用?我也试过在 wkhtmltopdf 设置中直接设置页面大小:页面高度和页面宽度而没有改变。

我不能使用百分比,因为使用真实数据我会有更复杂的设置(左右边距、2、3...列)

设置可能有什么问题?这是一个CSS问题吗?wkhtmltopdf 问题?

Ove*_*ose 7

我发现使用该--disable-smart-shrinking选项有很大帮助。默认情况下--enable-smart-shrinking,当使用绝对度量 (in, mm)链接到 doc时,会被激活并与 html 渲染 混淆