【问题标题】:TCPDF - How to use GetStringWidth when text is boldTCPDF - 文本为粗体时如何使用 GetStringWidth
【发布时间】:2016-08-01 09:51:04
【问题描述】:

有没有办法在有格式的文本上使用 GetStringWidth?现在,如果我有 Jarod,GetStringWidth 会将标签视为要显示的文本,并返回包括标签在内的字符串宽度。如果我把它们拿出来,那么返回的字符串宽度是针对非粗体文本的,我们知道粗体文本比非格式化文本大,所以我试图弄清楚如何在 TCPDF 中测量格式化文本的宽度。谢谢!

【问题讨论】:

    标签: php tcpdf fpdf


    【解决方案1】:

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

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

    【讨论】:

    • 这会容易得多,我以前从未见过。
    【解决方案2】:

    只要弄清楚这一点。在 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);
    

    我希望这对其他人有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-16
      • 2018-09-07
      • 2014-03-30
      • 1970-01-01
      相关资源
      最近更新 更多