我使用Zend-pdf绘制从数据库获取的数据。但是当我得到一个长数据时,它会让我绘制重复的数据,如:
对于我自己的想法,我想要限制数据的长度,如果它长于长度我希望它断行<br />
,但我不知道该怎么做。所以每个人都可以解决这个问题?我希望很快能看到您的回复!感谢。
答案 0 :(得分:1)
您可以添加此功能以包装文本
<?php
// include auto-loader class
require_once 'Zend/Loader/Autoloader.php';
// register auto-loader
$loader = Zend_Loader_Autoloader::getInstance();
// define long string
$str = "Mary had a little lamb. It's fleece was white as snow. And everywhere that Mary went, the lamb was sure to go";
try {
// create PDF
$pdf = new Zend_Pdf();
// create A4 page
$page = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
// define font resource
$font = Zend_Pdf_Font::fontWithPath('/tmp/comic.ttf');
// set font
$page->setFont($font, 14);
// wrap lines of text
// start at (10,600) and use a block of dimensions 500x500
$page->drawTextBlock($str, 10, 600, 500, 500, Zend_Pdf_Page::ALIGN_LEFT);
// wrap lines of text
// start at (10,500) and use a block of dimensions 200x300
$page->setFont($font, 20);
$page->drawTextBlock($str, 10, 500, 200, 300, Zend_Pdf_Page::ALIGN_RIGHT);
// add page to document
$pdf->pages[] = $page;
// save as file
$pdf->save('example.pdf');
echo 'SUCCESS: Document saved!';
} catch (Zend_Pdf_Exception $e) {
die ('PDF error: ' . $e->getMessage());
} catch (Exception $e) {
die ('Application error: ' . $e->getMessage());
}
?>
此外,您可以参考此detail Document来解决您的问题
希望这对您有所帮助。