我有一个项目,我需要在其中选择包含图片的整个文件夹,然后对文件夹内的所有图片进行转换。类似于Photoshop中的脚本,用于大量图片调整。
答案 0 :(得分:2)
检查PHP的scandir()函数
循环浏览目录的结果,并对每个项目进行图像处理。
答案 1 :(得分:1)
嗯,CodeIgniters Manual确实有一些辅助函数,但我自己并没有使用它们。
就个人而言,我更习惯使用DirectoryIterator PHP为您提供服务。将其与CodeIgniters Image Manipulation Class相结合,您可以实现对图像处理的一些非常好的处理:
$images = array("jpg", "png", "bmp"); // Just to make sure that we get image files
foreach(new DirectoryIterator("/path/to/images/") as $file)
{
if( $file->isFile() && in_array($file->getExtension(), $images) )
{
$config['image_library'] = 'imagemagick';
$config['library_path'] = 'usr/bin/local/';
$config['source_image'] = $file->getPathname();
$config['new_image'] = $file->getPathname(); //Overwriting the source image
$config['maintain_ratio'] = TRUE;
$config['width'] = 75;
$config['height'] = 50;
$this->load->library('image_lib', $config);
$this->image_lib->resize();
}
}
或者根据自己的选择进行一些图像处理。
答案 2 :(得分:1)
如果您使用的是linux,则可以使用ImageMagick的mogrify命令批量编辑图像。
示例:mogrify -resize 150x150 * .jpg 结果:所有图像都调整为150x150
还有一个PHP类可以处理PEAR中的ImageMagick功能。
答案 3 :(得分:0)
我认为没有可以执行多个图像处理的功能。但你可以选择带有glob()的文件,然后循环完成你的过程吗?