Intereting Posts
Как писать JavaScript с Zend Framework и netbeans? Попытка использовать обратный отсчет jQuery с меткой времени UNIX от php php файл отправляет переменную в внешний файл .js PHP: Как я могу взорвать строку запятыми, но не запятые в кавычках? Предотвращение уведомления о статусе состояния доставки или ответов по электронной почте Как вставить несколько значений флажка в таблицу? Как выполнить блок кода в PHP один раз в день в главном файле шаблона? Non cron Как читать, если флажок установлен в PHP? Как удалить // из URL с помощью htaccess «Недостаточно разрешений» учетная запись службы API Google Analytics Считать точную подстроку в строке в php Проблема с обработкой ошибок базы данных в CodeIngniter Графический API-интерфейс Facebook через пейджинг Выделение массива с числовыми ключами в качестве объекта Зацикливание через объект SimpleXML или превращение всего объекта в массив

Создание PDF-файлов с использованием TCPDF, поддерживающих все языки, в особенности CJK

Может ли кто-нибудь составить четкий и краткий пример того, как вы можете создать PDF-файл с использованием TCPDF, который будет поддерживать текстовые строки с любого языка?

Похоже, что нет ни одного шрифта, который бы поддерживал все языки. Я предполагаю, что шрифт будет слишком большим?

Я предполагаю, что правильным способом было бы определить язык строки и динамически установить шрифт на совместимый шрифт. Если это так, то он становится очень сложным при определении языка для каждой строки.

Большинство языков поддерживаются, если вы используете шрифт «freeserif». Однако он не поддерживает шрифты CJK. Я попробовал много шрифтов (kozminproregular, cid0jp, cid0kr, cid0jp, stsongstdlight), чтобы получить поддержку для китайцев, японцев и корейцев, но ни один из них, похоже, не поддерживает все три языка.

Это отлично сработало для меня. Спасибо!

Чтобы убедиться, что сгенерированный PDF-файл не станет большим, используйте FontSubsetting – у меня есть 10-страничный PDF-файл, созданный только с несколькими линами китайского языка (имена на дипломах)

$ Pdf-> setFontSubsetting (истина); => PDF-файл немного больше 925kb против 755kb без китайских имен, если вы используете $ pdf-> setFontSubsetting (false); => PDF Размер файла около 17,5 МБ …

Управляемый этой проблемой, сделав мой собственный шрифт из юникода arial ms с этими шагами:

Во временном скрипте поместите и выполните это
1. поместите копию файла ARIALUNI.ttf в папку fonts при установке tcpdf (я взял свою копию из папки windows \ fonts.
2. создайте временный скрипт в папке примеров tcpdf и выполните его с помощью этой строки:
$ fontname = $ pdf-> addTTFfont ('../ fonts / ARIALUNI.ttf', 'TrueTypeUnicode', '', 32);
3. установите новый шрифт в вашем сценарии генератора pdf:
$ pdf-> SetFont ('arialuni', '', 20);

Теперь в формате pdf должны быть корректно показаны символы CJK.
Надеюсь, это помогает многим людям.

Я просто попробовал решение Etiennez0r, и это не сработало для меня. Необходимо внести незначительные изменения, как показано ниже:

$fontname = TCPDF_FONTS::addTTFfont('../fonts/ARIALUNI.TTF', 'TrueTypeUnicode', '', 96); 

Я устанавливаю:

 $fontname = TCPDF_FONTS::addTTFfont(FCPATH . 'TCPDF/fonts/ARIALUNI.ttf', 'TrueTypeUnicode', '', 32); 

……. // установить шрифт

 $pdf->SetFont('dejavusans', '', 14); $pdf->SetFont('cid0cs', '', 14); 

Экспорт японцев хорошо работает