Как распечатать китайский и корейский символы в формате PDF с помощью Zend_Pdf?

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

Спасибо


person japt    schedule 18.07.2013    source источник


Ответы (2)


В следующем примере показано, как использовать Zend_Mail на японском языке. Это один из языков CJK (он же CJKV). Если вы используете китайский язык, вы можете использовать HZ-GB-2312 вместо ISO-2022-JP.

вы можете выполнить тот же процесс для Zend_pdf, чтобы передать символ для печати в формате pdf

function myConvert($string) {
    return mb_convert_encoding($string, 'ISO-2022-JP', 'UTF-8');
}

$mail = new Zend_Mail('ISO-2022-JP');
// In this case, you can use ENCODING_7BIT
// because the ISO-2022-JP does not use MSB.
$mail->setBodyText(
    myConvert('This is the text of the mail.'),
    null,
    Zend_Mime::ENCODING_7BIT
);
$mail->setHeaderEncoding(Zend_Mime::ENCODING_BASE64);
$mail->setFrom('[email protected]', myConvert('Some Sender'));
$mail->addTo('[email protected]', myConvert('Some Recipient'));
$mail->setSubject(myConvert('TestSubject'));
$mail->send(); 

ИЗМЕНИТЬ

$page->drawText('Janko Hraško', 200, 643, 'HZ-GB-2312');

Также см.

http://framework.zend.com/issues/browse/ZF-588

http://framework.zend.com/manual/1.12/en/zend.pdf.drawing.html

надеюсь, это решит вашу проблему.

person liyakat    schedule 18.07.2013
comment
Привет @liyakat, спасибо за ваше решение. Я попробовал, и кажется, что это не работает. :( - person japt; 18.07.2013
comment
это уже пробовал. но снова не работает. я не уверен, поддерживает ли zend_pdf китайский иероглиф.. - person japt; 18.07.2013

Нашел решение с помощью.

$font = Zend_Pdf_Font::fontWithPath('ChineseOrKorean.ttf',Zend_Pdf_Font::EMBED_DONT_COMPRESS  );
person japt    schedule 18.07.2013