Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP在PDF中插入文本,但不使用Zend Framework_Php_Zend Framework_Pdf_Joomla - Fatal编程技术网

使用PHP在PDF中插入文本,但不使用Zend Framework

使用PHP在PDF中插入文本,但不使用Zend Framework,php,zend-framework,pdf,joomla,Php,Zend Framework,Pdf,Joomla,目前,我正在使用此代码在PDF中插入文本: $pdf = Zend_Pdf::load("test_document.pdf"); $font = Zend_Pdf_Font::fontWithPath('arial_unicode_ms.ttf'); foreach ($pdf->pages as &$page) { $page->setFont($font, 12); $page->drawText("Inserted some text.", 200,

目前,我正在使用此代码在PDF中插入文本:

$pdf = Zend_Pdf::load("test_document.pdf");
$font = Zend_Pdf_Font::fontWithPath('arial_unicode_ms.ttf');
foreach ($pdf->pages as &$page) {
   $page->setFont($font, 12);
   $page->drawText("Inserted some text.", 200, 10);
}
问题是,我想在Joomla插件中包含此功能,但我不想将Zend Framework中的所有数据都包含到我的项目中


是否有任何简单的方法或小型库提供此pdf标记机制?

项目中不需要包含整个Zend框架,您只需要包含Zend/pdf.php和Zend/pdf文件夹。这不是~1.2mb的大组合大小。

项目中不需要包含整个Zend框架,只需要包含Zend/Pdf.php和Zend/Pdf文件夹。这并不是~1.2mb的大合并大小。

如果您仍然想使用Zend_Pdf,您可能需要查看Zend/Pdf目录中的依赖项。您可以grep for require_一次以获得大致想法,并过滤出Zend/Pdf结果:

第一步输出Zend_内存、Zend_异常和Zend_日志

您可以按照类似的方法检查其他依赖项,您将看到Zend_内存需要Zend_缓存,它只需要Zend_日志,它是自包含的,就像Zend_Exception一样。我认为,一旦包含了这四个额外的库,就不需要再进一步了

编辑:我发现这个链接列出了ZF模块之间的所有依赖关系,但我不知道它是如何更新的,尽管:

希望这会有所帮助,

如果您仍然想使用Zend_Pdf,您可能需要查看Zend/Pdf目录中的依赖项。您可以grep for require_一次以获得大致想法,并过滤出Zend/Pdf结果:

第一步输出Zend_内存、Zend_异常和Zend_日志

您可以按照类似的方法检查其他依赖项,您将看到Zend_内存需要Zend_缓存,它只需要Zend_日志,它是自包含的,就像Zend_Exception一样。我认为,一旦包含了这四个额外的库,就不需要再进一步了

编辑:我发现这个链接列出了ZF模块之间的所有依赖关系,但我不知道它是如何更新的,尽管:


希望对您有所帮助,

还有其他可用的pdf库。我偶尔用Pdf代替Zend_。它是自包含的,因此您不会有任何依赖性问题

回应你的评论

我开始使用TCPDF,因为Zend_Pdf是不完整的,我需要一个解决方案,允许我使用现有的Pdf作为基础文档,就像您看起来需要的那样。我最终选择的解决方案是将FPDI与TCPDF结合使用

我已经有一段时间没有做这个项目了,但我使用了作为解决方案的开始,这个解决方案最终对我有效


我不确定它是否也是您的解决方案,但值得一看。

还有其他可用的pdf库。我偶尔用Pdf代替Zend_。它是自包含的,因此您不会有任何依赖性问题

回应你的评论

我开始使用TCPDF,因为Zend_Pdf是不完整的,我需要一个解决方案,允许我使用现有的Pdf作为基础文档,就像您看起来需要的那样。我最终选择的解决方案是将FPDI与TCPDF结合使用

我已经有一段时间没有做这个项目了,但我使用了作为解决方案的开始,这个解决方案最终对我有效


我不确定它是否也能为您提供解决方案,但值得一看。

但是依赖性呢?如果我删除了除PDF以外的所有内容,就会因为缺少Zend/Memory.php而出现致命错误。如果我添加这个,下一个致命错误就会出现,因为Zend/Cache.php等等…您可以添加其他库,比如Memory.php和相关的文件夹以及Cache.php…直到错误消息消失。抱歉,这不是一个特别优雅的答案。但是依赖性呢?如果我删除了除PDF以外的所有内容,就会因为缺少Zend/Memory.php而出现致命错误。如果我添加这个,下一个致命错误就会出现,因为Zend/Cache.php等等…您可以添加其他库,比如Memory.php和相关的文件夹以及Cache.php…直到错误消息消失。很抱歉,这不是一个特别优雅的答案。感谢您提供的链接,但是如果我遵循这些依赖关系,我至少会得到200个文件,这些文件太多了。好的,我用一个批处理命令dir*.php/b/o:n/s>C:\list.txt列出了这些文件,并将它们添加到了我的插件中。这个答案为我找到Zend_Pdf的文档依赖关系指明了正确的方向,谢谢!我遇到了,这似乎是您链接内容的最新版本,更易于阅读。感谢您的链接,但如果我遵循这些依赖关系,我会得到至少200个文件,这些文件非常多。好的,我用批处理命令dir*.php/b/o:n/s>C:\list.txt列出了这些文件,并将它们添加到我的插件中。这个答案让我走上了正确的道路
感谢您查找Zend_Pdf的文档依赖项,谢谢!我遇到过,这似乎是一个最新的、更容易阅读的链接版本。PDF需要一个PDF库。Zend是一个轻量级的文件,即使它由200个文件组成,也不会同时使用所有文件。这是创建pdf的一种简单而舒适的方法。你怎么回事啊?磁盘使用率?一方面是磁盘使用率。另一方面,如果我制作一个Joomla插件,我必须在一个XML文件中列出所有文件。我想我必须在Zend Framework的文件中更改include/require函数中的几个路径。不,这不是nescesairy,你只需要使用Zend autoloader,其余的就可以了。它们在你需要之前不必被使用。PDF需要一个PDF库。Zend是一个轻量级的文件,即使它由200个文件组成,也不会同时使用所有文件。这是创建pdf的一种简单而舒适的方法。你怎么回事啊?磁盘使用率?一方面是磁盘使用率。另一方面,如果我制作一个Joomla插件,我必须在一个XML文件中列出所有文件。我想我必须在Zend Framework的文件中更改include/require函数中的几个路径。不,这不是nescesairy,你只需要使用Zend autoloader,其余的就可以了。在你需要之前,它们不必被使用。如果我错了,请纠正我,但我认为TCPDF只是用于从头开始创建PDF。我有几个现有的PDF,必须在每个页面上用在线代码标记。更新答案以回应您的评论。如果我错了,请纠正我,但我认为TCPDF仅用于从头开始创建PDF。我有几个现有的PDF文件,每个页面上都必须标记代码行。更新答案以回应您的评论
grep -r require_once Pdf.php Pdf | grep -v "Zend/Pdf"