在线文档教程
PHP
Image/ImageMagick

Imagick::functionImage

Imagick::functionImage

(No version information available, might only be in Git)

Imagick::functionImage — Applies a function on the image

Description

public bool Imagick::functionImage ( int $function , array $arguments [, int $channel = Imagick::CHANNEL_DEFAULT ] )

Applies an arithmetic, relational, or logical expression to a pseudo image.

See also » ImageMagick v6 Examples - Image Transformations — Function, Multi-Argument Evaluate

This method is available if Imagick has been compiled against ImageMagick version 6.4.9 or newer.

Parameters

function

Refer to this list of function constants

arguments

Array of arguments to pass to this function.

Return Values

Returns TRUE on success.

Errors/Exceptions

Throws ImagickException on error.

Examples

Example #1 Create a sinusoidal gradient

<?php $imagick = new Imagick( $imagick->newPseudoImage(200, 200, 'gradient:black-white' $arguments = array(3, -90 $imagick->functionImage(Imagick::FUNCTION_SINUSOID, $arguments header("Content-Type: image/png" $imagick->setImageFormat("png" echo $imagick->getImageBlob( ?>

The above example will output something similar to:

Example #2 Create a gradient from the polynomial (4x^2 - 4x + 1)

<?php $imagick = new Imagick( $imagick->newPseudoImage(200, 200, 'gradient:black-white' $arguments = array(4, -4, 1 $imagick->functionImage(Imagick::FUNCTION_POLYNOMIAL, $arguments header("Content-Type: image/png" $imagick->setimageformat("png" echo $imagick->getImageBlob( ?>

The above example will output something similar to:

Example #3 Create a complex gradient from the polynomial (4x^2 - 4x^2 + 1) modulated by a sinusoidal gradient

<?php $imagick1 = new Imagick( $imagick1->newPseudoImage(200, 200, 'gradient:black-white' $arguments = array(9, -90 $imagick1->functionImage(Imagick::FUNCTION_SINUSOID, $arguments $imagick2 = new Imagick( $imagick2->newPseudoImage(200, 200, 'gradient:black-white' $arguments = array(0.5, 0 $imagick2->functionImage(Imagick::FUNCTION_SINUSOID, $arguments $imagick1->compositeimage($imagick2, Imagick::COMPOSITE_MULTIPLY, 0, 0 header("Content-Type: image/png" $imagick1->setImageFormat("png" echo $imagick1->getImageBlob( ?>

The above example will output something similar to:

← Imagick::frameImage

Imagick::fxImage →

© 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

https://secure.php.net/manual/en/imagick.functionimage.php