如果当前td具有长文本,则TCPDF忽略先前td的宽度

时间:2015-06-17 21:48:42

标签: php html css tcpdf

当我尝试使用TCPDF从我的html创建pdf时,我遇到了一个奇怪的问题。我正在使用

$pdf->writeHTML($myHTML, true, 0, true, 0);

编写我的html内容并在pdf中 enter image description here

<tr>
    <td style="width: 2%"></td>
    <td style="width: 48%;text-align: left;">
        <?php echo $text; ?>            
        <br />
        <table>
            <tr>
                <td style="width:10px;"></td>
                <td style="font-size: 22px;"><?php echo $comment;?></td>
            </tr>
        </table>            
    </td>
    <td style="width: 8%;"><?php echo $dur?></td>
    <td style="width: 8%;"><?php echo ''; ?></td>
    <td style="width: 12%;"><?php echo $xyz; ?></td>
    <td style="width: 11%;"><?php echo Price(); ?></td>
    <td style="width: 11%;"><?php echo new_Price() : ''; ?></td>
</tr>

这里我们可以在图像中看到,当单元格中的文本长于宽度时;换行符,在“成功”之前忽略宽度为2%的td。

同样适用于$comment下面的另一个文字,在“没有”之前它忽略了td。

如何才能正确对齐。

2 个答案:

答案 0 :(得分:0)

仍然可以回答

我仍然无法找到更好的答案。我正在发布这个答案,因为其他人正面临同样的问题,正在寻找紧急解决方案。

<td style="width: 48%;text-align: left;">
    <?php echo wordwrap($text, '70',"<br \>\n &nbsp;&nbsp;&nbsp;"); ?>            
        <br />
        <table>
            <tr>
                <td style="width:10px;"></td>
                <td style="font-size: 22px;"><?php echo wordwrap($comment, '70',"<br \>\n &nbsp;&nbsp;&nbsp;"); ?></td>
            </tr>
        </table>
</td>

答案 1 :(得分:0)

我知道这是一个老问题,但是最近我遇到了类似的问题。

TCPDF将用于代码结构的空格和缩进显示为TD中的空格。

一种解决方案是不使用空格和缩进来进行结构化,但这可能很混乱,因此我摆脱了所有双精度空格,然后编写了pdf。

$html =  preg_replace('/\s\s+/', '', $html);
$pdf->writeHTML($html, true, false, true, false, '');