使用PHP将图像(通过URL)插入现有Word文档

时间:2013-08-07 12:39:20

标签: php rtf

我正在尝试编写一些PHP,它将获取指定的RTF文档并动态地向其添加图像,该图像通过URL检索。

我研究过使用PHPRtfLite;但是,基于此post,似乎无法修改现有文档。

我更喜欢将图像插入文档的底部,因此可能只是阅读文档并编写URL,但我不确定如何以适合的方式执行此操作使用RTF语法。

有什么建议吗?非常感谢

3 个答案:

答案 0 :(得分:1)

在添加图像之前和之后比较两个RTF文件,您会发现添加的数据如下所示:

  

{\ pict \ wmetafile8 \ picw [N] \ pich [N] \ picwgoal [N] \ pichgoal [N] [BYTES]}

  • \ pict - 图片标记
  • \ wmetafile [N] - 表示图像类型为Windows 图元文件。 [N] = 8指定可以调整图元文件的轴 独立地
  • \ picw [N] \ pich [N] - 定义图像的大小,其中[N]是 以毫米(0.01)mm为单位。
  • \ picwgoal [N] \ pichgoal [N] - 定义目标尺寸 图像,其中[N]以缇为单位。
  • [BYTES] - 图片的十六进制表示形式(bin2hex)。

因此,要添加图像,我们将使用上面构建的字符串+“}”替换最后一次出现的“}”。
现在编写代码应该更容易。 :)

答案 1 :(得分:0)

答案 2 :(得分:-2)

如果我正在做你正在做的事情,那么我会使用PHP的FILE_APPEND

类似的东西可以满足您的需求:

PHP

<?php
    $url = $_POST['url'];
    $location = "image.rtf";

    if(isset($_POST['url'])) {
        file_put_contents($location, $url, FILE_APPEND);
    }
?>

HTML

<form action="./" method="post">
    <input type="text" name="url"><br>
    <input type="submit" value="insert">
</form>

尽管可能有更好的方法。

我冒昧地在测试网站here上给你一个例子。