2010-06-18 2 views
4

У меня проблемы с отображением символов UTF-8 в файл PDF с Zend_Pdf. Вот мой код:Zend_Pdf символы UTF-8?

// Load Zend_Pdf class 
include 'Zend/Pdf.php'; 

// Create new PDF 
$pdf = new Zend_Pdf(); 

// Set font 
$page->setFont(Zend_Pdf_Font::fontWithPath('fonts/times.ttf'), 12); 

// Draw text 
$page->drawText('Janko Hraško', 200, 643, 'UTF-8'); 

Загрузка шрифта I§m поддерживает символы UTF-8. Но я получаю эту ошибку»

Примечание: Iconv() [function.iconv]: Обнаружен недопустимый символ в строке ввода в D: \ Data \ о \ Zend \ Pdf \ Resource \ Font \ Type0.php на линии 241

ответ

0

Решено:.

$page->drawText('Janko Hraško', 200, 643, 'Windows-1250'); 

по какой-то причине, Windows-1250 кодирование работает, но UTF-8 не Weird, но я будет использовать Win dows-1250.

+3

На самом деле это не «решение». Если кто-то просматривает ваш PDF-файл и не имеет доступной этой кодировки (например, пользователь Mac), они получат блоки или, что еще хуже, странные символы. Для удобства переносимости и ремонтопригодности предпочтительным является UTF-8. - Скорее всего, вы печатаете символы в кодировке Windows-1250, где s-with-caron - 0x9A, один байт. Если в Unicode это U + 0161, значит, это должно быть несколько байтов. Введите ввод в правильную кодировку, и вы не получите ошибку. –

1

с Helvetica шрифт ваш код работает

+0

Я, наконец, решил это, используя Windows-1250 вместо UTF-8, но спасибо ... +1 –

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