2012-02-24 6 views
5

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

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

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

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

+0

У вас есть правильное решение? Я также сталкиваюсь с такой же проблемой. – Emma

+0

@ Emma Очевидно, решение EtiennezOr должно работать, но я еще не выполнил шаги. – Matt

+0

Спасибо за ответ. Я попробую. – Emma

ответ

0

Managed этой проблемы, сделав свой собственный шрифт Arial мса Юникода с этими шагами:

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

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

+0

Насколько велика ваша шрифт после этого? Поддерживает ли он китайский, японский, корейский? Благодарю. – Matt

+0

@ Etiennez0r: Это проблема с хинди Unicode ... – Sankalp

+0

Это было больше, как я помню, но он поддерживал китайских, японских и корейских персонажей (CJK), как спросил Мэтт. Не пробовал хинди unicode еще – Etiennez0r

1

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

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

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

0

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

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

I настройки:

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

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

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

Экспорт Японский работает хорошо

 Смежные вопросы

  • Нет связанных вопросов^_^