TCPDF:如何以正确的方式设置字体大小

TCPDF: How to set FONT SIZE in right way

我想通过 TCPDF 设置一些文本块。但是我的字体大小有一些问题。第一个文本块在 x-y/5-5 上,他的字体大小是 5 到。但它比 5 小。TCPDF 中的字体大小与其他尺寸的单位不同?

PHP

$text1 = 'AAAg';
$text1_x = 5;
$text1_y = 5;
$text1_font_size = 5;

$text2 = 'BBBg';
$text2_x = 10;
$text2_y = 10;
$text2_font_size = 10;

$text3 = 'CCCg';
$text3_x = 15;
$text3_y = 15;
$text3_font_size = 15;
// I tried  $pdf->Cell and $pdf->Text... both are doing the same...

Web example.

正在 TCPDF 中更改字体大小...可以使用以下代码进行设置:

$pdf = new TCPDF();
$pdf->SetFont('Font family', '', font size here);

这是 TCPDF 中的默认设置

好的,我找到了答案和解决方案。当我们在 tcPDF 中创建新的 PDF 文档时,整个文档的尺寸单位可以是 mm、cm、pt、px 等格式。但是字体是点数 - pt.

所以解决方案...

  1. 使用“setPageUnit”设置文档单位。
  2. 如果我们有以像素为单位的尺寸,我们必须将其转换为“pixelsToUnits”。

PHP - tcPDF 示例 :

$pdf->setPageUnit('pt');
$document_width = $pdf->pixelsToUnits('100');
$document_height = $pdf->pixelsToUnits('100');
$x = $pdf->pixelsToUnits('20');
$y = $pdf->pixelsToUnits('20');
$font_size = $pdf->pixelsToUnits('20');
$txt = 'AAAg';

$pdf->SetFont ('helvetica', '', $font_size , '', 'default', true );
$pdf->Text  ( $x, $y, $txt, false, false, true, 0, 0, '', false, '', 0, false, 'T', 'M', false );