生成 PDF 时第一行打印不正确

Posted

技术标签:

【中文标题】生成 PDF 时第一行打印不正确【英文标题】:The first row is not printing properly when generating PDF 【发布时间】:2019-03-14 21:52:06 【问题描述】:

我有我的文档生成PDF在下面的html代码,但造成的PDF生成不正确。

<table border="1"  class="table table-striped">

    <thead>
        <th>Sr No.</th>
        <th>Particulars </th>
        <th>Qty </th>
        <th>rate </th>
        <th>Amount </th>
    </thead>

    <tbody>
        <br><br>
        @foreach($data as $row)

        <tr>
            <td> $row['temp_invoice_id']  </td>
            <td> $row['tyre_brand']." ".$row['tyre_model']  </td>
            <td> $row['quantity']  </td>
            <td> $row['rate']  </td>
            <td> $row['total']  </td>
        </tr>
        @endforeach
    </tbody>
</table>

但是,当生成PDF它显示了这样的事情,我不知道为什么它不产生适当的PDF任何人都可以有解决了这个问题,或者我们必须申请单独css打印介质?

【问题讨论】:

你是如何生成的PDF?是否在浏览器中看起来是正确的?你可以失去&lt;br&gt;&lt;br&gt; @里面@ 987654326我的猜测。 SPAN> 哪个插件您使用的是生成PDF? SPAN> 【参考方案1】:

删除&lt;tbody&gt; 中的&lt;br&gt;&lt;br&gt; sn-p 它们无效,因此浏览器可能会忽略它们,但 PDF 生成器(我不知道您使用哪一个)可能不会。 还将&lt;th&gt;s 放在一行内 (&lt;tr&gt;)

【讨论】:

【参考方案2】:

在 thead 内部使用 tr 标签它工作正常。

     <thead>
        <th>Sr No.</th>
        <th>Particulars </th>
        <th>Qty </th>
        <th>rate </th>
        <th>Amount </th>
    </thead>

这样使用,

        <thead>
          <tr>
            <th>Sr No.</th>
            <th>Particulars </th>
            <th>Qty </th>
            <th>rate </th>
            <th>Amount </th>
          </tr>
        </thead>

【讨论】:

以上是关于生成 PDF 时第一行打印不正确的主要内容,如果未能解决你的问题,请参考以下文章

JAVA itext一行设置两种字体 我用的是生成pdf

表格里的第一行怎么固定

AX2009 打印到PDF优化

itext pdf文件打印中文无法识别问题

做excel表格时第一行如何制标题

打印到 PDF:文本呈现不正确