【问题标题】:Adding linebreak on fpdf cells在 fpdf 单元格中添加换行符
【发布时间】:2017-06-24 11:26:38
【问题描述】:

我必须为我的图像添加一个换行符才能显示在一个之后。我尝试了以下方法,但它不起作用。

$rs['imagepath'] = $imagepath;
    $pdf->Image("{$imagepath}\n");

输出图像的原始代码如下,但它只输出第一个索引,第二个和第三个图像没有出现...... :(

$rs['imagepath'] = $imagepath;
    $pdf->Image("{$imagepath}");

结果在这样的 foreach 循环中:

     foreach($select as $index => $rs) 
{    
        $rs['imagepath'] = $imagepath;
        $pdf->Image("{$imagepath}"); 
}

【问题讨论】:

    标签: php loops fpdf


    【解决方案1】:

    我认为你可以使用 ln() 函数。你必须在一行中定义每个图像

    $fpdf->ln();
    

    【讨论】:

    • 我不能单独定义每张图像,如果有多个图像,图像必须自己循环。这就是为什么我想要换行符。能举个例子吗?
    • 这是我唯一的输入:'$rs['imagepath'];。我想在这个输入之后添加一个换行符。循环将完成其余的工作。
    【解决方案2】:

    我认为您的代码有错误,请尝试以下代码来遍历 $rs 数组。在当前代码中,您的 $imagepath 变量始终保持不变。然后您可以将 \n 字符打印到 pdf 以打印新行

    foreach($select as $index => $rs) 
    {    
            $imagepath = $rs['imagepath'];
            $pdf->Image("{$imagepath}"); 
    }
    

    编辑: 我在另一个堆栈溢出线程上发现了这个

    如果您使用的是 fpdf,为了能够使用换行符,您需要使用多行文本单元格,如 here. 所述

    如果你使用它,那么你的文本中的换行符应该被正确解释和转换。

    只是一个简单的例子:

    $pdf->Multicell(0,2,"This is a multi-line text string\nNew line\nNew line"); 
    

    这里,2 是多行文本框的高度。我不知道测量单位是什么,或者您是否可以将其设置为 0 并忽略它。如果一开始不起作用,也许可以尝试大量尝试。

    【讨论】:

    • 你能举个例子说明如何使用'/n'作为循环的换行符吗?
    • 我不知道在新行中添加什么。这是一个自动循环,我只有一个输入可以循环所有结果。这是我唯一的输入:'$rs['imagepath'];'。而且我也不知道如何将图像输出到多单元格中。在这种情况下,只会输出文件名。我希望将图像本身输出给我。
    • 那我建议你多参考一些地方,多学习一些。而且我不明白您所说的自动循环是什么意思:()。我建议的多单元格是输出一个新行,将图像打印到 pdf 你可以检查这个fpdf.org/en/doc/image.htm
    猜你喜欢
    • 2018-05-22
    • 1970-01-01
    • 2022-09-29
    • 2021-11-09
    • 2011-03-29
    • 1970-01-01
    • 1970-01-01
    • 2015-01-02
    • 1970-01-01
    相关资源
    最近更新 更多