Также существует официальная версия 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/