我已应用此解决方案:
彼得·德内夫(Peter Denev)现在我一直在努力填写文本的编码。基本上,我从Post参数中读取文本,文本是西里尔文。无论我试图改变什么(我试图通过复制一些函数并将它应用于setTextField等来改变ZendFramework的Pdf.php中的编码)。这是我的代码:
$pdf = Zend_Pdf::load('reklam.pdf');
$pdf->setTextField("Text1", "Тест Инпут");
$pdf->setTextField("Text2", "Тест Инпут");
$pdf->setTextField("Text3", "Тест Инпут");
$pdf->save('outputfile.pdf');
outputfile中的文本不是人。
这是修改过的Pdf.php:http://pastebin.com/q7YqNcb9
怎么办?请帮忙。
提前致谢。
答案 0 :(得分:1)
如果是:这对我有帮助:
public function setTextField($name, $value)
{
if (!isset($this->_formFields[$name])) {
throw new Zend_Pdf_Exception(
"Field '$name' does not exist or is not a textfield"
);
}
/** @var Zend_Pdf_Element $field */
$field = $this->_formFields[$name];
$field->add(
new Zend_Pdf_Element_Name('V'),
// you must set $font to one of the Zend_Pdf_Resource_Font objects
new Zend_Pdf_Element_String($font->encodeString($value, 'UTF-8'))
);
$field->touch();
}