【问题标题】:Generate ODT documents with dynamic images in PHP在 PHP 中生成带有动态图像的 ODT 文档
【发布时间】:2009-11-22 21:55:40
【问题描述】:

我在一个共享主机包上维护了几个基于 PHP 和 mySQL 的 Web 数据库。 数据库有一种机制供用户使用占位符上传 OpenOffice 文档:

[person.name] [person.address] [person.postcode]

然后我使用this great PHP tool 运行OpenOffice 文档并将数据库中的值插入其中。结果又是一个 OpenOffice 文档。

它不能做的是动态图片

是否有人知道将图像插入 OpenOffice 文档的解决方案(最好是仅 PHP)?

  • 我知道PUNO。无法在这种情况下使用它,因为它是共享主机。
  • 我知道 OpenOffice 可以作为守护程序运行 - 同上。
  • 我知道phpDocWriter。它非常适合 SXW 文件,但现在已经死了。
  • 我知道 OpenDocument 是 ZIP 文件中 XML 文件的集合。我曾经尝试以编程方式为 ODT 文档中的每个图像添加标题。这让我发疯了。我对使用这种格式的开发人员表示钦佩,但它不适合我。

我非常感谢有关现有解决方案的任何提示。

【问题讨论】:

    标签: php openoffice.org opendocument


    【解决方案1】:

    我认为odtPHP 可能是您正在寻找的内容

    似乎能够在文档中的占位符上插入图像,并简单地从数组中读取以查看要放置的图像。

    http://www.odtphp.com/index.php?i=tutorials&p=tutorial5

    现在,如果您在当前代码之后将此作为后期处理,或者只是使用它而不是 TBS,那么恕我直言,您将获得所需的一切

    或者,您可以在文档中包含具有特定文件名的默认图像,然后在存档中简单地替换该图像文件。

    【讨论】:

    • Pekka,这不是比我提到的AddFileToDoc 更好的解决方案吗?它对我来说看起来更好。我不知道 odtPHP。很高兴知道它。谢谢亚历山大!
    【解决方案2】:

    有一个新版本的TbsOOo,它是OpenTBS,它具有在文件中插入/更改图片的功能。

    http://www.tinybutstrong.com/opentbs.php

    【讨论】:

      【解决方案3】:

      您是否尝试使用AddFileToDoc 方法将图像添加到文档中?

      这个方法的文档在这里:

      http://www.tinybutstrong.com/tbsooo.php#AddFileToDoc

      【讨论】:

      • 不,该函数只是将一个文件引入到 OpenDocument 文件中(这是一个重命名的 ZIP 文件)。但在此之后,我查看了图像的 XML 代码,使用 DOM 解析器应该很容易替换它,我认为这会起作用。谢谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-03
      • 1970-01-01
      • 1970-01-01
      • 2014-01-31
      • 2011-02-14
      • 1970-01-01
      相关资源
      最近更新 更多