我正在使用带有FPDF的PHP来创建PDF文件。我正在尝试以常规的 ASCII 文本字符串打印希腊语 rho 符号(符号字体中的"r"(。我可以使用 SetFont(( 将其单独放入单元格中,但无法确定是否存在混合字体字符串之类的东西。
我可以创建一个带有一些文本的单元格,然后创建一个带有符号字体字符的单元格,然后创建一个带有以下文本的单元格。无论我如何尝试证明单元格中的文本,间距看起来都是错误的。
$pdf->Cell(35,14,'+/- 5m','LT',0,'R');
$pdf->SetFont('Symbol','',8);
$pdf->Cell(5,14,'r','T',0,'L');
$pdf->SetFont('Arial','',8);
$pdf->Cell(60,14,' peak to peak','TR',0,'L');
我希望它输出"+/- 5mp峰到峰",其中希腊语rho符号代替mp中的p。它的意思是"毫罗"。
我最终得到了一个大约"em"空格,将"m"和 rho 符号分开,我根本不想要空间。
它最终看起来像"+/- 5m p 峰到峰"。
我想出了一个丑陋的硬编码解决方法:
$pdf->SetFont('Arial','',8);
$pdf->Cell(100,14,'+/- 5m peak to peak','LTR',0,'C');
# now back up and print a rho symbol in the right place
$x = $pdf->GetX(); $y = $pdf->GetY(); $pdf->SetXY($x-69.5,$y-0.5);
$pdf->SetFont('Symbol','',9); $pdf->Cell(5,14,'r');
$pdf->SetXY($x,$y);
$pdf->SetFont('Arial','',8); # restore original font
但是,如果我更改与字体大小等相关的表单中的任何内容,也必须重做。