English | 简体中文 | 繁體中文
查询

Imagick::setImageCompression()函数—用法及示例

「 设置图像的压缩类型 」


函数名: Imagick::setImageCompression()

适用版本: Imagick类在PHP版本5.1.3及以上可用

用法:这个方法用于设置图像的压缩类型。

语法: bool Imagick::setImageCompression ( int $compression )

参数:

  • $compression:表示图像的压缩类型的常量值。可以是以下之一:
    • Imagick::COMPRESSION_UNDEFINED:未定义的压缩类型。
    • Imagick::COMPRESSION_NO:不进行压缩。
    • Imagick::COMPRESSION_BZIP:使用BZip压缩。
    • Imagick::COMPRESSION_FAX:使用传真压缩。
    • Imagick::COMPRESSION_GROUP4:使用Group4压缩。
    • Imagick::COMPRESSION_JPEG:使用JPEG压缩。
    • Imagick::COMPRESSION_JPEG2000:使用JPEG2000压缩。
    • Imagick::COMPRESSION_LOSSLESSJPEG:使用无损JPEG压缩。
    • Imagick::COMPRESSION_LZW:使用LZW压缩。
    • Imagick::COMPRESSION_RLE:使用RLE压缩。
    • Imagick::COMPRESSION_ZIP:使用ZIP压缩。

返回值: 成功时返回true,失败时返回false。

示例:

// 创建一个Imagick对象
$image = new Imagick('image.jpg');

// 设置图像的压缩类型为JPEG
$image->setImageCompression(Imagick::COMPRESSION_JPEG);

// 设置压缩质量为80
$image->setImageCompressionQuality(80);

// 保存图像
$image->writeImage('compressed_image.jpg');

// 销毁对象
$image->destroy();

上述示例中,我们首先创建了一个Imagick对象,并加载了一个名为image.jpg的图像文件。然后,我们使用setImageCompression()方法将图像的压缩类型设置为JPEG。接下来,我们使用setImageCompressionQuality()方法设置了压缩质量为80。最后,我们使用writeImage()方法将压缩后的图像保存为compressed_image.jpg文件。最后,我们销毁了Imagick对象。

请注意,使用该方法只会设置图像的压缩类型,并不会实际压缩图像。要实际压缩图像,需要使用其他方法,如setImageCompressionQuality()方法来设置压缩质量。

补充纠错
热门PHP函数
分享链接