(PHP 5 >= 5.1.0, PHP 7, PHP 8)
imageconvolution — Apply a 3x3 convolution matrix, using coefficient and offset
Applies a convolution matrix on the image, using the given coefficient and offset.
image
A GdImage object, returned by one of the image creation functions, such as imagecreatetruecolor().
matrix
A 3x3 matrix: an array of three arrays of three floats.
divisor
The divisor of the result of the convolution, used for normalization.
offset
Color offset.
Version | Description |
---|---|
8.0.0 |
image expects a GdImage
instance now; previously, a valid gd resource was expected.
|
Example #1 Embossing the PHP.net logo
<?php$image = imagecreatefromgif('http://www.php.net/images/php.gif');$emboss = array(array(2, 0, 0), array(0, -1, 0), array(0, 0, -1));imageconvolution($image, $emboss, 1, 127);header('Content-Type: image/png');imagepng($image, null, 9);?>
The above example will output:
Example #2 Gaussian blur
<?php$image = imagecreatetruecolor(180,40);// Writes the text and apply a gaussian blur on the imageimagestring($image, 5, 10, 8, 'Gaussian Blur Text', 0x00ff00);$gaussian = array(array(1.0, 2.0, 1.0), array(2.0, 4.0, 2.0), array(1.0, 2.0, 1.0));imageconvolution($image, $gaussian, 16, 0);// Rewrites the text for comparisonimagestring($image, 5, 10, 18, 'Gaussian Blur Text', 0x00ff00);header('Content-Type: image/png');imagepng($image, null, 9);?>
The above example will output: