PHP/GD - 查找图像资源类型
仅拥有有效的 GD 图像资源是否可以找出原始图像的类型?
例如:
$image = ImageCreateFromPNG('http://sstatic.net/so/img/logo.png');
我能否获取仅包含 $image 变量的原始图像类型(PNG) ?
Having only a valid GD image resource is it possible to find out the type of the original image?
For instance:
$image = ImageCreateFromPNG('http://sstatic.net/so/img/logo.png');
Can I get the original image type (PNG) having only the $image variable available?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我不确定是否可以从 $image 变量完成,但要获取 MimeType,您通常可以使用四个中的任何一个:
从您的问题描述来看,我认为您想使用远程文件,因此您可以执行类似的操作 code
注意:如果您将使用的 MimeType 函数支持远程文件,请直接使用它,而不是先创建文件的副本
如果您需要 MimeType 只是为了确定哪个 < 使用 >imagecreatefrom 函数,为什么不先将文件作为字符串加载,然后让 GD 决定,例如
I am not sure if it can be done from the $image variable, but to get the MimeType, you can usually use any of the four:
From your question description I take you want to use a remote file, so you could do something like this to make this work:
Note: if the MimeType function you will use supports remote files, use it directly, instead of creating a copy of the file first
If you need the MimeType just to determine which
imagecreatefrom
function to use, why not load the file as a string first and then let GD decide, e.g.我不这么认为,不。 $image经过
ImageCreate()
函数处理后是GD的内部图像格式。I don't think so, no. $image is in GD's internal image format after it has been processed by the
ImageCreate()
function.你可以尝试使用 png 加载器加载资源,如果它不是 png 图像,它将失败,返回 FALSE。然后只需重复您想要的每种有效格式,如果全部失败,则显示错误。
You could just try loading the resource with the png loader, and if it's not a png image, it will fail, returning FALSE. Then just repeat with each of the valid formats you want to have, and if all fail, then display an error.