You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在FPDF/PHP中实现每60个字符自动换行?

实现FPDF Text方法的自动换行(每60字符)

Text()方法本身不支持自动换行,你需要手动分割字符串后逐行输出,以下是两种实用实现方式:

方式一:固定每60字符强制换行

直接将字符串按60字符分割,不考虑单词是否被截断:

$text = utf8_decode($objet);
// 分割为每60字符一行的数组
$lines = str_split($text, 60);

$x = 77;
$y = 94;
$lineHeight = 5; // 根据字体大小调整行高,比如12号字体可设为6

// 循环输出每行
foreach ($lines as $line) {
    $pdf->Text($x, $y, $line);
    $y += $lineHeight; // 输出后下移对应行高距离
}

方式二:优先在单词边界换行(避免截断单词)

如果需要保证单词完整性,用wordwrap()函数分割,它会优先在空格处换行,仅当单单词长度超过60字符时才强制截断:

$text = utf8_decode($objet);
// 按60字符分割,保留单词完整性
$lines = explode("\n", wordwrap($text, 60));

$x = 77;
$y = 94;
$lineHeight = 5;

foreach ($lines as $line) {
    $pdf->Text($x, $y, $line);
    $y += $lineHeight;
}

根据需求选择对应方式即可,记得调整$lineHeight适配你的字体大小,确保行间距合理。

内容的提问来源于stack exchange,提问作者Milkasoprano

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 07:30:50