PHP GD .ico 处理
PHP GD .ico handling
我的 PHP 网络应用程序的用户可以上传 PNG 和 JPEG 图像。上传算法如下:
- 通过文件名解析检查扩展名
- 通过 getimagesize() 检查扩展
- 通过 imagecreatefrompng()/imagepng() (imagecreatefromjpeg()/imagejpeg()) 重新创建图像
- 重命名图片
- 保存到文件系统
图像重建用于安全。一切正常。但现在我需要这个算法来处理 .ico 文件。似乎 GD 不适用于 .ico(没有像 imagecreatefromico() 这样的函数),所以我不知道如何实现算法的第 3 步。
感谢您的帮助或建议。
请参阅 https://github.com/lordelph/icofileloader composer-installable class,它可以将 .ico 文件加载到 GD 图像中。
例如:
$loader = new Elphin\IcoFileLoader\IcoFileService;
$im = $loader->extractIcon('/path/to/icon.ico', 32, 32);
有关从图标文件分析和提取图像的其他方法,请参阅文档。
我的 PHP 网络应用程序的用户可以上传 PNG 和 JPEG 图像。上传算法如下:
- 通过文件名解析检查扩展名
- 通过 getimagesize() 检查扩展
- 通过 imagecreatefrompng()/imagepng() (imagecreatefromjpeg()/imagejpeg()) 重新创建图像
- 重命名图片
- 保存到文件系统
图像重建用于安全。一切正常。但现在我需要这个算法来处理 .ico 文件。似乎 GD 不适用于 .ico(没有像 imagecreatefromico() 这样的函数),所以我不知道如何实现算法的第 3 步。
感谢您的帮助或建议。
请参阅 https://github.com/lordelph/icofileloader composer-installable class,它可以将 .ico 文件加载到 GD 图像中。
例如:
$loader = new Elphin\IcoFileLoader\IcoFileService;
$im = $loader->extractIcon('/path/to/icon.ico', 32, 32);
有关从图标文件分析和提取图像的其他方法,请参阅文档。