- PHP ImageMagick 教程
- PHP ImageMagick - 主页
- PHP ImageMagick - 简介
- 背景颜色
- 图像反射
- 图像裁剪
- 图像边框
- 调整图像大小
- 合成图像
- 对比度和亮度
- 增强与均衡
- 锐化和模糊
- 图像平铺
- 图像阈值
- 修改颜色
- 不同的效果
- 保护图像
- 草图模拟
- 编辑外观
- 旋转和滚动
- 拼接与铺展
- 杂项功能
- PHP ImageMagick 有用资源
- PHP ImageMagick - 快速指南
- PHP ImageMagick - 资源
- PHP ImageMagick - 讨论
PHP ImageMagick - 不同的效果
创建 3D 效果
看起来具有高度、宽度和深度的图片称为 3 维 (3D) 图片。3D 图像为用户提供了对象的真实复制品。
为了直接在服务器上创建这种效果,Imagemagick 提供了一个名为“shadeImage()”的内置函数。这很方便,能够轻松地将标准 2D 图像转换为高质量的 3D 渲染。
句法
public Imagick::shadeImage(bool $gray, float $azimuth, float $elevation): bool
该函数有 3 个参数:灰度、方位角和仰角。
灰色是一个布尔值,用于对每个像素的强度进行着色。
“方位角”和“仰角”是浮点值,分别定义偏离 x 轴和高于 z 轴的光源方向。
为了创造3D效果,主要考虑光量和光的方向。该函数将图像作为输入,并生成具有 3D 效果的图像作为输出。
例子
此示例显示了“shadeImage()”函数的使用。在这里,创建了一个 Imagick 对象并传递了一个图像作为输入。然后使用作为参数提供的灰度值、方位角值和仰角来调用“shadeImage()”函数。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.png"); $image->shadeImage(true, 50, 30); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/shadeImage.png"); ?>
假设以下是程序中的输入图像(image.png) -
输出
创造日光照射效果
当摄影胶片过度曝光时看到的效果称为过曝效应。为了在 PHP 中创建这种效果, Imagemagick 提供了一个内置函数“solarizeImage()” 。
此效果会产生色调反转的图像,其中高光变暗,反之亦然。
句法
public Imagick::solarizeImage(int $threshold): bool
该函数将“阈值”作为参数。它是一个整数值,用于衡量日晒效应的程度。
例子
此示例显示“solarizeImage()”函数的实现。创建一个新的 imagick 对象并将图像作为输入。现在,
'solarizeImage()'
该函数以阈值作为参数应用,获得的输出图像的形式为“solarizeImage.png”。<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/imagee.png"); $image->solarizeImage(0.3); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/solarizeImage.png"); ?>
假设以下是程序中的输入图像(image.png) -
输出
创建波形滤波器效果
Imagemagick 提供了一个名为“waveImage()”的内置函数,它有助于在图像上模拟滤波器。它以图像作为输入,获得的输出是带有滤波器的图像。
句法
public Imagick::waveImage(float $amplitude, float $length): bool
该函数有两个参数:幅度和长度。
振幅指定波的振幅。
长度指定波的长度。
例子
这是一个显示“waveImage()”函数实现的示例。首先,创建一个新的 imagick 对象,并将图像作为输入。然后,“waveImage()”函数应用于该图像。所需的输出以“waveImage.png”的形式获得。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.png"); $image->waveImage(2, 4); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/waveImage.png"); ?>
假设以下是程序中的输入图像(image.png) -
输出
创建漩涡效果
在本章中,您将学习旋转图像。一般来说,旋转是指以扭转或圆周运动快速移动。包含这种类型效果的图像称为漩涡图像。手动创建漩涡图像很困难。但是,为了使这更容易,Imagemagick 提供了一个内置函数“swirlImage()”,它使像素绕图像中心旋转。
句法
Imagick::swirlImage(float $degrees): bool
该函数接受一个参数:度数。“度数”是一个浮点值,表示每个像素移动的弧度。通过这种方式,当度数从 1 移动到 360 时,您会获得更引人注目的效果。
例子
在下面的示例中,您首先创建一个新的 imagick 对象并输入图像。然后,通过指定度数(度数=200)来应用“swirlImage()”函数。最后,获得该旋转图像作为输出。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/imagee.png"); $image->swirlImage(200); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/swirlImage.png"); ?>
假设以下是程序中的输入图像(image.png) -