我怎样才能保存这个php创建的图像?

时间:2011-10-25 12:52:36

标签: php

保存图像或使用从PHP脚本生成的图像有哪些可能的方法。虽然使用保存但没有帮助。
这不是我创建的图像,这就是为什么我要避免get_contents

这是图片

这是网址

https://render01.fontshop.com/fonts/font_rend.php?idt=f&id=38005&rbe=fsifr&rt=how+do+I+save+this?&rs=38&w=500&bg=ffffff&fg=000000&tp=0.0

7 个答案:

答案 0 :(得分:1)

使用file_put_contents()功能。如果您没有变量中的数据并且想要读出,请使用file_get_contents()

答案 1 :(得分:1)

只需将URL的内容写入文件

即可
<?php
file_put_contents("img.png", file_get_contents("http://render01.fontshop.com/fonts/font_rend.php?idt=f&id=38005&rbe=fsifr&rt=how+do+I+save+this?&rs=38&w=500&bg=ffffff&fg=000000&tp=0.0"));

答案 2 :(得分:1)

由于您没有在自己的代码中生成图片,因此最简单的是file_get_contentsfile_put_contents的组合:

$url = '...'; // your url here
$data = file_get_conents($url);
file_put_conents('image.png', $data);

在这种特定情况下,渲染是一个PNG图像,但如果它有可能是JPEG或其他东西,那么你也需要以某种方式检测它。我没有给出任何建议,因为没有足够的信息。

答案 3 :(得分:0)

您可以在imgpng()或其他函数中定义文件名,以告知PHP存储图片而不是将其发送到调用浏览器。

答案 4 :(得分:0)

您可以使用curl命令从终端执行此操作。

curl -o out.png 'http://render01.fontshop.com/fonts/font_rend.php?idt=f&id=38005&rbe=fsifr&rt=how+do+I+save+this?&rs=38&w=500&bg=ffffff&fg=000000&tp=0.0'

这会将文件另存为out.png

答案 5 :(得分:0)

我知道您希望使用浏览器将其保存在客户端上,而不是保存在服务器上。

“另存为”对我来说很好(Firefox 7)。在Chrome中,您必须手动指定文件名的扩展名。没有测试其他浏览器,但它应该类似地工作

答案 6 :(得分:0)

使用imagepng功能。

它会将文件返回浏览器或保存指定的位置。 需要设置参数以保存指定位置的图像。