【问题标题】:TFPDF / UTF-8 in PHPPHP 中的 TFPDF / UTF-8
【发布时间】:2020-07-27 16:18:10
【问题描述】:

我正在尝试创建 PDF 表单。一切都很完美,除了我不会写希腊字符。 比如我想写:

“Κανόνες”

结果是:

”ιεϕθυνση

我使用 TFPDF 文件而不是 FPDF,因为它应该具有 UTF-8 编码。

我也加了

        $pdf->AddFont($fontName, ' ', 'HelveticaNeue LightCond.ttf' ,true);
        $pdf->AddFont($fontName, 'B', 'HelveticaNeue MediumCond.ttf',true);

但我有任何结果

有什么想法吗?

【问题讨论】:

  • .ttf 的字体路径在哪里?
  • 我是这样做的:define('FPDF_FONTPATH',"../fonts/");要求('tfpdf.php')
  • 请附上 .txt 文件,以便我为您提供帮助

标签: php pdf utf-8


【解决方案1】:

尝试使用此代码并探索字体目录中的其他字体

<?php

define("_SYSTEM_TTFONTS", "../fonts");

require('tfpdf.php');

$pdf = new tFPDF();
$pdf->AddPage();

// Add a Unicode font (uses UTF-8)
$pdf->AddFont('DejaVu','','DejaVuSansCondensed.ttf',true);
$pdf->SetFont('DejaVu','',14);

// Load a UTF-8 string from a file and print it
$txt = 'HelloWorld.txt';
$pdf->Write(8,$txt);

// Select a standard font (uses windows-1252)
$pdf->SetFont('Arial','',14);
$pdf->Ln(10);
$pdf->Write(5,'The file size of this PDF is only 13 KB.');

$pdf->Output();
?>

结果将是这样的:http://fpdf.org/en/script/ex92.pdf

您必须将要打印的字符串转换为 ISO-8859-7 编码。这是用 $text = iconv('UTF-8', 'ISO-8859-7', $text);

请参阅希腊语指南: http://www.fpdf.org/en/tutorial/tuto7.htm

【讨论】:

  • 是的,我之前检查过,它工作得很好。但前提是我添加了一个 .txt 文件。我想在单元格中写希腊语而不创建其他文件。
  • @PaulKoun,你有 .txt 文件的例子吗?也许我可以帮助你
猜你喜欢
  • 2012-03-11
  • 1970-01-01
  • 1970-01-01
  • 2010-12-16
  • 1970-01-01
  • 2014-03-10
  • 1970-01-01
  • 2021-01-30
相关资源
最近更新 更多