Zend_Pdf:欧元符号没有显示

时间:2014-01-09 09:41:31

标签: php zend-framework pdf utf-8

我在PHP中使用Zend Framework创建一个PDF打印机,需要打印特殊字符。

简而言之,这是我测试特殊字符的代码:

$pdf = new Zend_Pdf();
$pages = array();
$page = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);

$str = "( € ë á ç )";
$strEn = utf8_encode($str);

    $page->drawText($strEn, 20, 630, "utf-8");

$pages[0] = $page;
$pdf->pages = $pages;

header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="test.pdf"');
die($pdf->render());

哪个输出(ëáç)。 iconv_get_encoding所示的编码显示了所有ISO-8859-1。有谁知道为什么它不会显示欧元符号,以及如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

对于€字符,你可以

$page = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);

// Create new font
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_SYMBOL);

// Apply font
$page->setFont($font, 36);

$str = "€";

$page->drawText($str, 20, 630);
...