tFPDF 添加多种 DejaVu 字体
tFPDF add multiple DejaVu fonts
在使用 tFPDF 时如何使用多种样式的 DejaVu 字体?
我想对某些文本使用 DejaVuSans 字体,对其他文本使用 DejaVuSansMono 字体。
教程显示您可以像这样包含字体:$pdf -> AddFont('DejaVu','','DejaVuSans.ttf',true);
然后像 $pdf -> SetFont("DejaVu","",10);
一样使用它
但是如果我添加额外的字体 $pdf->AddFont('DejaVu','','DejaVuSansMono.ttf',true);
什么都不会改变。
那么我该如何指定我想在何处使用 Mono 字体以及在何处使用默认字体?
我的代码目前看起来像这样(不起作用):
$pdf->AddFont('DejaVu','','DejaVuSans.ttf',true);
$pdf->SetFont("DejaVu","",10);
$pdf->Cell(10,10 , "sometext");
$pdf->AddFont('DejaVu','','DejaVuSansMono.ttf',true);
$pdf->SetFont("DejaVu","",10);
$pdf->Cell(10,10 , "sometext");
对于仍然对答案感兴趣的人
您只需AddFont
一次:
$pdf->AddFont('dejavusans', '', 'DejaVuSans.ttf', true);
$pdf->AddFont('dejavusans', 'B', 'DejaVuSans-Bold.ttf', true);
$pdf->AddFont('dejavusans', 'I', 'DejaVuSans-Oblique.ttf', true);
$pdf->AddFont('dejavusans', 'BI', 'DejaVuSans-BoldOblique.ttf', true);
那么,一段文字使用字体时,可以这样使用:
$pdf->SetFont('dejavusans', '', 9);
或
$pdf->SetFont('dejavusans', 'I', 10);
所以,只添加一次字体,然后在需要的地方设置字体。我尝试使用 'dejavusans' 以外的其他名称,但这似乎不起作用。
您需要添加如下字体:
// Add a Unicode font (uses UTF-8)
$pdf->AddFont('DejaVu', '', 'DejaVuSansCondensed.ttf', true);
$pdf->AddFont('DejaVu', 'B', 'DejaVuSansCondensed-Bold.ttf', true);
在使用 tFPDF 时如何使用多种样式的 DejaVu 字体?
我想对某些文本使用 DejaVuSans 字体,对其他文本使用 DejaVuSansMono 字体。
教程显示您可以像这样包含字体:$pdf -> AddFont('DejaVu','','DejaVuSans.ttf',true);
然后像 $pdf -> SetFont("DejaVu","",10);
但是如果我添加额外的字体 $pdf->AddFont('DejaVu','','DejaVuSansMono.ttf',true);
什么都不会改变。
那么我该如何指定我想在何处使用 Mono 字体以及在何处使用默认字体?
我的代码目前看起来像这样(不起作用):
$pdf->AddFont('DejaVu','','DejaVuSans.ttf',true);
$pdf->SetFont("DejaVu","",10);
$pdf->Cell(10,10 , "sometext");
$pdf->AddFont('DejaVu','','DejaVuSansMono.ttf',true);
$pdf->SetFont("DejaVu","",10);
$pdf->Cell(10,10 , "sometext");
对于仍然对答案感兴趣的人
您只需AddFont
一次:
$pdf->AddFont('dejavusans', '', 'DejaVuSans.ttf', true);
$pdf->AddFont('dejavusans', 'B', 'DejaVuSans-Bold.ttf', true);
$pdf->AddFont('dejavusans', 'I', 'DejaVuSans-Oblique.ttf', true);
$pdf->AddFont('dejavusans', 'BI', 'DejaVuSans-BoldOblique.ttf', true);
那么,一段文字使用字体时,可以这样使用:
$pdf->SetFont('dejavusans', '', 9);
或
$pdf->SetFont('dejavusans', 'I', 10);
所以,只添加一次字体,然后在需要的地方设置字体。我尝试使用 'dejavusans' 以外的其他名称,但这似乎不起作用。
您需要添加如下字体:
// Add a Unicode font (uses UTF-8)
$pdf->AddFont('DejaVu', '', 'DejaVuSansCondensed.ttf', true);
$pdf->AddFont('DejaVu', 'B', 'DejaVuSansCondensed-Bold.ttf', true);