牛牛在线工具

Imagick::transformImage()

收录 8868 个 PHP 函数,含用途说明与用法示例。

Imagick::transformImage()

将图像进行变换,根据提供的变换矩阵对图像进行扭曲、旋转、缩放、平移等操作

函数名称:Imagick::transformImage() 函数描述:该函数将图像进行变换,根据提供的变换矩阵对图像进行扭曲、旋转、缩放、平移等操作。 用法:Imagick::transformImage(float $sx, float $sy, float $rx, float $ry, float $tx, float $ty, bool $bestfit = false) 参数: $sx: 图像的水平缩放因子,大于1表示放大,小于1表示缩小。 $sy: 图像的垂直缩放因子,大于1表示放大,小于1表示缩小。 $rx: 图像的水平旋转角度,以弧度表示,正值表示顺时针旋转。 $ry: 图像的垂直旋转角度,以弧度表示,正值表示顺时针旋转。 $tx: 图像的水平平移量,正值表示向右平移,负值表示向左平移。 $ty: 图像的垂直平移量,正值表示向下平移,负值表示向上平移。 $bestfit: 是否根据变换后的尺寸调整图像大小,默认为false。 返回值:成功时返回true,失败时返回false。 示例: // 创建Imagick对象并加载图像 $image = new Imagick('input.jpg'); // 定义变换参数 $sx = 1.2; // 水平放大20% $sy = 0.8; // 垂直缩小20% $rx = deg2rad(45); // 顺时针旋转45度 $ry = deg2rad(-30); // 逆时针旋转30度 $tx = 100; // 向右平移100像素 $ty = -50; // 向上平移50像素 // 进行图像变换 if ($image->transformImage($sx, $sy, $rx, $ry, $tx, $ty, true)) { // 变换成功,保存变换后的图像 $image->writeImage('output.jpg'); echo '图像变换成功!'; } else { echo '图像变换失败!'; } // 销毁Imagick对象 $image->destroy(); 注意事项: 需要安装Imagick扩展才能使用该函数。 输入图像和输出图像可以是同一文件,但建议使用不同的文件进行测试,以免覆盖原始图像。 变换后的图像可能会超出原始图像的边界,可以使用Imagick::extentImage()函数调整图像大小,以适应变换后的尺寸。