我需要在PHP中将动画GIF转换为静态。我的意思是使用其第一帧。任何想法如何做到这一点?如何将动画GIF转换为PHP中的静态?
2
A
回答
4
“剥离”的动画GIF可以做到通过将其转换为另一种格式和然后再回来。对于这种“其他格式”,PNG是一个很好的候选者,因为它不像JPEG那样是无损的。使用PHP的GD功能,并输出PNG代替GIF:
header('Content-type: image/png');
imagepng(imagecreatefromgif($file));
这可能工作(没有测试)如果PHP/GD不支持GIF动画(我不认为它);并且它会输出GIF格式的图像,不像上面的代码片段:
header('Content-type: image/gif');
imagegif(imagecreatefromgif($file));
如果这是行不通的,而在GIF格式的输出是必不可少的,这将:
$img1 = imagecreatefromgif($file);
$size = getimagesize($img1);
$img2 = imagecreatetruecolor($size[0], $size[1]);
imagecopy($img2, $img1, 0, 0, 0, 0, $size[0], $size[1]);
header('Content-type: image/gif');
imagegif($img2);
2
我能想到的(不是很可爱的),最好的办法是将GIF转换成PNG/JPEG,然后将其再次GIF,:P
试试这个转换;) http://gallery.menalto.com/node/13206
希望这可以帮助你
+0
显然,如果这是您选择做的事,转换为PNG是更好的选择。但是,由于PHP/GD似乎不支持动画GIF,因此将它“转换”为GIF(例如'imagegif(imagecreatefromgif($ file));')可能会起作用。 – You 2010-08-01 00:00:52
3
看看http://php.net/manual/en/function.imagecreatefromgif.php
检查从最大劳埃德的代码片段。
1
相关问题
- 1. 如何在WinRT中将一组画布转换为动画GIF?
- 2. PHP ImageMagick的:如何合并动画GIF为静态帆布
- 3. 如何简单地将动画GIF转换为画布?
- 4. QStyleSheet中的静态Gif动画
- 5. 如何冻结GIF动画/转换为JPG与PHP?
- 6. 如何将多个PNG文件转换为动画GIF?
- 7. 如何将一批.jpeg文件转换为.gif动画?
- 8. Swift Library:如何将动画Gif UIImage转换为NSData for Alamofire?
- 9. 如何使用PHP + shell命令将视频优化为动画GIF转换
- 10. 如何使用C#将动态XAML转换为PNG或GIF?
- 11. 如何使用Gmagick在静态图像中展示动画GIF
- 12. 如何将图像(GIF,JPG,JPEG,PNG)转换为PHP中的TIFF?
- 13. 如何将这种动态URL转换为静态URL
- 14. 如何将静态数组转换为动态数组?
- 15. 无论如何将静态数组转换为动态数组?
- 16. 如何将静态AdMob代码转换为动态代码
- 17. 如何将静态UITableView转换为动态TableView
- 18. 如何将Django动态页面转换为静态HTML文件?
- 19. 将每个动画GIF帧转换为单独的BufferedImage
- 20. 将动画的.gif文件转换为.bmp条
- 21. PHP:将png和gif转换为灰度
- 22. 将动画GIF转换为动画SVG并获取SVG的代码?
- 23. 如何将视图控制器动画转换转换为Segue动画转换
- 24. 如何将HTML文件转换为GIF
- 25. 如何将.gif转换为字节[] []?
- 26. 如何将GIF转换为字符串?
- 27. 如何将gif转换为影子?
- 28. 如何使用PHP和Imagick创建动画GIF的静态预览?
- 29. iphone:我可以将UIImageView动画转换为svg/gif文件吗?
- 30. 如何将图像转换为动画?
可以使用的ImageMagick ,还是只有gd? – JAL 2010-07-31 23:49:56
到目前为止,你有什么尝试? – Charles 2010-07-31 23:51:35