首页 > 解决方案 > PHP::Imagick 从合成图像创建临时文件,用于通过标签显示

问题描述

是否可以创建一个临时文件服务器端来查看图像?

我有一些图像,它们是从服务器显示的,但我想让它们加水印......发现了 Imagick 类,使用了复合......它可以在作为标题发送时查看,但我需要它以某种方式可见标签。

我不想使用“写入图像”并从合成图像创建新图像。我正在尝试将它用作客户端的东西(我不熟悉 JS ......是的,我会研究它,但在那之前需要一个替代方案)。

我知道的另一种选择是我应该在上传图像时控制它,但我已经上传了很多,所以......任何帮助表示赞赏!

标签: phpimagick

解决方案


您是否尝试过使用生成图像的函数作为标签的src属性?<img />

我不知道你的代码到底是怎样的,但我认为最终结果可能是这样的:

<img src="data:image/jpeg;base64,<?php echo base64_encode($image_headers); ?>">

您基本上将图像内的标头输出src为 base64 编码字符串。

您应该记住的是,您应该将image/jpeg类​​型调整为图像的相应类型。

例如:

  • 对于 JPG、JPEG 文件,它将是image/jpeg
  • 对于 PNG 文件,它将是image/png
  • 对于 WEBP 文件,它将是image/webp

当然,编码后的字符串应该是相应格式的图像。


推荐阅读