从哪里获取以及如何独立使用zend_pdf

时间:2013-02-05 21:14:45

标签: php zend-pdf

过去两天我一直在寻找如何将zend_pdf作为独立使用的答案。 我在google上找到的所有东西都指的是我在任何地方都找不到的pdf.php。

我在这里找到了zend_pdf(https://github.com/zendframework/ZendPdf

我不想在服务器上安装整个框架,我不希望别人告诉我使用fpdf或tcpdf或其他任何东西。 zend_pdf似乎是完美的解决方案。我只是想知道如何使用它asstandalon。

有任何明确的指示吗?

谢谢

1 个答案:

答案 0 :(得分:10)

首先,值得注意的是,您所指的ZendPdf版本是最初包含在ZF2中但在2011年某个时候从框架中删除的版本。作为旁注,我在ZendCon 2012上与Matthew Weier O'Phinney(ZF2项目负责人)谈过这个问题,他说如果有人想要维持这个课程,我们可以把它重新纳入ZF2框架。

我们在这里讨论的ZF2版本虽然在语义上与ZF1版本完全相同,但在语法上却有所不同,因为ZF2开发人员在决定将其分离之前完成了对命名空间和其他重构的转换。主要项目。 ZendPdf示例中的大多数(甚至可能全部?)是来自ZF1的Zend_Pdf,除非您处理自动加载和其他语法差异,否则它们不适用于此版本。

直到今天我还没有使用过这个独立版本,并发现除非你在ZF2框架中包含一个源代码文件夹,否则它不会生成PDF文档。为了使下面的示例代码能够运行,您需要获取ZF2框架的副本并将Zend/Memory文件夹复制到从下载library时创建的ZendPdf文件夹中Github上。

完成上述操作后,以下独立的PHP代码将允许您使用ZendPdf创建PDF文件:

<?php
function simpleBootLoader( $stack )
{
    require_once './library/' . 
                 str_replace( '\\', DIRECTORY_SEPARATOR, $stack ) .
                 '.php';
}

spl_autoload_register( 'simpleBootLoader' );

use ZendPdf\PdfDocument;
use ZendPdf\Page;
use ZendPdf\Font;

$pdf = new PdfDocument();

$pdf->pages[0] = new Page( Page::SIZE_A4 );
$pdf->pages[0]->setFont( Font::fontWithName( Font::FONT_HELVETICA ), 24 );
$pdf->pages[0]->drawText( 'Hello world!', 240, 400 );

$pdf->save( 'example.pdf' );

这不是任何想象力的生产就绪代码。你需要一个更强大的自动加载器作为初学者。

无论如何,我希望这能解决您的直接问题和/或让您走上正轨。祝你好运!