我有一个文本表单,其数据以PDF格式显示。
我的问题是,当变量中的PDF接收的值超过65个字符而不是换行符时,继续在覆盖另一个元素的同一行中。
我试图应用implode,wordwrap方法,但没有人帮我剪切字符串达到65个字符。
我尝试生成任何条件来检查字符串的长度是否超过65个字符进行换行(<br
&gt;)。但它既没有为我服务。
$pdf_observations = $_GET['pdf_observations'];
$pdf->SetXY(29.6, 85.6);
$pdf->Write(0, "{$pdf_observations}");
谢谢!
答案 0 :(得分:1)
您可以使用文档中已解密的MultiCell
方法
此方法允许使用换行符打印文本。他们可以 自动(一旦文本到达单元格的右边界) 或显式(通过\ n字符)。尽可能多的细胞 输出,一个在另一个之下。文本可以对齐,居中或 有道理的。可以框住单元格并绘制背景。
此方法可以采取一些参数
MultiCell(float w, float h, string txt [, mixed border [, string align [, boolean fill]]])
您可以在手册部分的http://www.fpdf.org找到更多信息。
在您的情况下,您可以将其与行
一起使用//example parameters - use anything that suit your things
$width = 100;
$lineHeight = 4;
$pdf->MultiCell($width, $lineHeight, "{$pdf_observations}");
在这个例子中,如果你的字符串不能适应提供的宽度,那么当每一行提供高度时,字符串的其余部分将被制动成新行。