TCPDF - 文本为粗体时如何使用GetStringWidth

时间:2014-08-08 16:31:46

标签: php tcpdf fpdf

有没有办法在具有格式的文本上使用GetStringWidth?现在,如果我有< b> Jarod< / b>,则GetStringWidth会将标记视为要显示的文本,并返回包含标记的字符串宽度。如果我取出它们,那么返回的字符串宽度是非粗体文本,我们知道粗体文本比非格式化文本大,所以我试图弄清楚如何在TCPDF中测量格式化文本宽度。谢谢!

2 个答案:

答案 0 :(得分:3)

想象一下。在TCPDF中,我们总是使用SetFont(' Times','',12);我们有字体系列或名称,其次是''我们可以在哪里放I或B或U等,然后是字体大小。我遇到的GetStringWith的问题是,当我需要测量粗体时,我使用默认字体设置来测量我的字体。修复:

//Temporarily set the font to Bold.
$pdf->SetFont('Times','B',12);

//Now measure the text that needs to be measured;

$text_width = $pdf->GetStringWidth("Text To Be Measured");

//Now reset the font back to normal so the rest of the document isn't messed up.

$pdf->SetFont('Times','',12);

我希望这有助于其他人。

答案 1 :(得分:3)

根据TCPDF Doc,您可以向GetStringWidth()函数发送参数,包括字体样式。 在您的示例中:

$text_width = $pdf->GetStringWidth("Text To Be Measured",'','B');