Существует также официальная версия FPDF UTF-8 под названием tFPDF http://www.fpdf.org/en/script/script92.php
Вы можете легко переключиться с оригинальной FPDF, просто убедитесь, что вы также используете шрифт Unicode, как показано в примере по ссылке выше или в моем коде:
<?php
//this is a UTF-8 file, we won't need any encode/decode/iconv workarounds
//define the path to the .ttf files you want to use
define('FPDF_FONTPATH',"../fonts/");
require('tfpdf.php');
$pdf = new tFPDF();
$pdf->AddPage();
// Add Unicode fonts (.ttf files)
$fontName = 'Helvetica';
$pdf->AddFont($fontName,'','HelveticaNeue LightCond.ttf',true);
$pdf->AddFont($fontName,'B','HelveticaNeue MediumCond.ttf',true);
//now use the Unicode font in bold
$pdf->SetFont($fontName,'B',12);
//anything else is identical to the old FPDF, just use Write(),Cell(),MultiCell()...
//without any encoding trouble
$pdf->Cell(100,20, "Some UTF-8 String");
//...
?>
Я думаю, что гораздо удобнее использовать это вместо спама utf8_decode () везде, и возможность использовать файлы .ttf непосредственно в AddFont () также является преимуществом.
Любой другой ответ здесь - это просто способ избежать или обойти проблему, и избегание UTF-8 не является реальным вариантом для современного проекта.
Существуют также альтернативы, такие как mPDF или TCPDF (и другие), которые основаны на FPDF, но предлагают расширенные функции, поддерживают UTF-8 и могут интерпретировать HTML-код (конечно, ограниченный, поскольку прямого преобразования HTML в PDF нет) ,
Большая часть кода FPDF может использоваться непосредственно в этих библиотеках, поэтому перенос кода довольно прост.
https://github.com/mpdf/mpdf
http://www.tcpdf.org/