FPDF - 如何使文本显示在页面中间?

FPDF - How to make text to display in middle of a page?

我正在使用 FPDF 库生成 PDF 文件。

文件中的每一页为 100 毫米 x 100 毫米,所有边距为 10 毫米。

每个页面上显示的文本各不相同(但应始终最多 200 个字)。

我真的希望文本显示在页面中间完美居中。

目前,我可以让文本居中对齐,但我很难将其定位,使其每次都位于页面中间。到目前为止,这是我的代码:

$pdf->AddPage();
$pdf->SetMargins($card_margin,$card_margin,$card_margin);
$pdf->SetAutoPageBreak(true,$card_margin);
$pdf->SetFont('Avenir','','10');
$pdf->SetAutoPageBreak(false);
    
$pdf->MultiCell(80,5,$text_to_print,0,'C');

$pdf->SetFont('Alex Brush','','13');
$pdf->MultiCell(80,10,$signee_text_to_print,0,'C');

这是由上述代码生成的 PDF 页面的屏幕截图:

如有任何想法或建议,我们将不胜感激!

在调用 MultiCell 之前使用 SetY 以“下推”页面上文本开始的位置。既然你指出它永远不会超过 200 个字符,你应该能够估计高度并使用固定的 X 值,这将使你每次都非常接近垂直中心。

$pdf->SetAutoPageBreak(false);
$pdf->SetY(100);  // for example ... value will need to be changed of course
$pdf->MultiCell(80,5,$text_to_print,0,'C');