- PHP ImageMagick 教程
- PHP ImageMagick - 首页
- PHP ImageMagick - 简介
- 背景颜色
- 图像倒影
- 图像裁剪
- 图像边框
- 图像缩放
- 图像合成
- 对比度和亮度
- 增强和均衡
- 锐化和模糊
- 图像平铺
- 图像阈值
- 修改颜色
- 不同的效果
- 保护图像
- 素描模拟
- 编辑外观
- 旋转和滚动
- 拼接和扩展
- 其他函数
- PHP ImageMagick 有用资源
- PHP ImageMagick - 快速指南
- PHP ImageMagick - 资源
- PHP ImageMagick - 讨论
PHP ImageMagick - 背景颜色
图像文本的背景颜色指的是其背景的颜色。使用与图像或文本上下文相符的合适颜色有助于提高可读性,甚至更容易扫描。
例如,在下图中,我们可以看到“TUTORIALS POINT”写在纯色背景上,可读性不高。为该元素选择合适的背景颜色可以提高其可见性。
如果我们看下图,我们会发现它比上一张图片更易读,其主要原因是它的背景颜色。
在接下来的章节中,我们将学习如何识别图像的背景颜色,以及如何设置图像的背景颜色。
识别背景颜色
要使用 ImageMagick 识别图像的背景颜色,我们有一个名为‘getImageBackgroundColor()’的方法。如果图像中未指定或找不到任何内容,则默认背景颜色为“白色”。
语法
public Imagick :: getImageBackgroundColor() : ImagickPixel
此方法不接受任何参数。返回值为 RGB 三元组的形式,这是一个三元素行向量。每个元素指定所选颜色的红色、绿色和蓝色分量。因此,根据该三元组,用户将能够识别背景中存在的颜色。
示例
以下示例演示了如何在 PHP 中使用`getImageBackgroundColor()`方法获取图像的背景颜色。要执行代码,您需要一个本地服务器环境,例如 XAMPP。
代码首先创建一个 Imagick 对象,然后使用此函数检索背景颜色。最后,它会在您的服务器上打印出该颜色的 RGB 三元组表示。
<?php //creating a new imagick object // $img=new Imagick($_SERVER['DOCUMENT_ROOT'].'/test/image.jpg'); $color=new ImagickPixel($img->getImageBackgroundColor) ;//Get the Background Color $colorInfo = $color->getColorAsString (); //Get the Color from ImagickPixel echo $colorInfo; //display colorinfo as output ?>
假设程序中的输入图像如下 (image.jpg) −
输出
srgb(0, 0, 0)
获得的输出为 srgb(0,0,0),即“黑色”。
设置背景颜色
在某些情况下,我们需要设置图像的背景颜色,特别是包含文本的图像,以提高其可读性。要在 PHP 中设置图像的背景颜色,我们使用‘setImageBackgroundColor()’方法。
语法
此方法的语法如下所示:
public Imagick::setImageBackgroundColor(mixed $background): bool
此方法接受'background'作为参数,其中包含所需的背景颜色。成功执行后,它将返回 true 并生成具有指定背景颜色的图像。
示例
此 PHP 代码片段演示了如何使用`setImageBackgroundColor()`函数设置图像的背景颜色。
首先,创建一个新的 Imagick 对象并将图像读取为输入。然后,使用内置函数 setImageBackgroundColor() 设置背景颜色。
输出可以使用`echo`在服务器上显示,也可以使用`writeImage()`保存在本地。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.png"); $image->setImageBackgroundColor('black'); $image->setImageAlphaChannel(100); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/newimage.png"); ?>
假设程序中的输入图像如下 (image.png) −