提问人:Pekka 提问时间:11/23/2009 最后编辑:Pekka 更新时间:1/29/2016 访问量:3687
在 PHP 中生成带有动态图像的 ODT 文档
Generate ODT documents with dynamic images in PHP
问:
我在共享托管包上维护了几个基于 PHP 和 mySQL 的 Web 数据库。 数据库有一种机制,供用户上传带有占位符的 OpenOffice 文档:
[person.name] [person.address] [person.postcode]
然后,我使用这个出色的PHP工具来运行OpenOffice文档,并将数据库中的值插入其中。结果又是一个 OpenOffice 文档。
它不能做的是动态图像。
有没有人知道将图像插入OpenOffice文档的解决方案 - 最好是纯PHP的 - 解决方案?
- 我认识普诺。不能在此上下文中使用它,因为它是共享主机。
- 我知道OpenOffice可以作为守护进程运行 - 同上。
- 我知道phpDocWriter。它非常适合 SXW 文件,但现在已经死了。
- 我知道OpenDocument是ZIP文件中XML文件的集合。我曾经尝试以编程方式为 ODT 文档中的每个图像添加标题。这让我发疯了。我钦佩使用这种格式的开发人员,但这不适合我。
我非常感谢有关现有解决方案的任何提示。
答:
0赞
fviktor
11/23/2009
#1
您是否尝试使用该方法将图像添加到文档中?AddFileToDoc
有关此方法的文档如下:
http://www.tinybutstrong.com/tbsooo.php#AddFileToDoc
评论
0赞
Pekka
11/23/2009
否,该函数仅将文件引入 OpenDocument 文件(重命名的 ZIP 文件)。但是在那之后,我查看了图像的XML代码,使用DOM解析器应该很容易替换,我认为这将起作用。谢谢!
2赞
alexanderpas
11/24/2009
#2
我认为odtPHP可能就是你要找的
似乎能够在文档的占位符上插入图像,并且只需从数组中读取即可查看要放置的图像。
http://www.odtphp.com/index.php?i=tutorials&p=tutorial5
现在,如果你在当前代码之后将其作为后处理,或者只是使用它而不是 TBS,那么恕我直言,你得到了你需要的一切
或者,您可以在文档中包含具有特定文件名的默认图像,只需在存档中替换该图像文件即可。
评论
0赞
fviktor
11/24/2009
Pekka,这难道不是比我提到的更好的解决方案吗?对我来说看起来更好。我不知道odtPHP。很高兴知道它。谢谢亚历山大!AddFileToDoc
1赞
Skrol29
3/30/2011
#3
TbsOOo有一个新版本,它是OpenTBS,它具有在文件中插入/更改图片的功能。
下一个:编写适合重构的 PHP 代码
评论