downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

Imagick::setImageMatteColor> <Imagick::setImageIterations
[edit] Last updated: Fri, 17 May 2013

view this page in

Imagick::setImageMatte

(PECL imagick 2.0.0)

Imagick::setImageMatteEstablece el canal mate de la imagen

Descripción

bool Imagick::setImageMatte ( bool $matte )

Establece el canal mate de la imagen. Este método está disponible si Imagick ha sido compilado con la versión 6.2.9 (o superior) de ImageMagick.

Parámetros

matte

Si es true activa el canal mate y si es false lo deshabilita.

Valores devueltos

Devuelve TRUE en caso de éxito.



add a note add a note User Contributed Notes Imagick::setImageMatte - [1 notes]
up
0
martin at psinas dot com
1 year ago
I found this method is needed when creating a font / image mask, and needs to be set to false otherwise the mask won't take effect. Here is an example:

<?php

// Create objects
$image = new Imagick('myImage.png');
$watermark = new Imagick();
$mask = new Imagick();
$draw = new ImagickDraw();

// Define dimensions
$width = $image->getImageWidth();
$height = $image->getImageHeight();

// Create some palettes
$watermark->newImage($width, $height, new ImagickPixel('grey30'));
$mask->newImage($width, $height, new ImagickPixel('black'));

// Watermark text
$text = 'Copyright';

// Set font properties
$draw->setFont('Bookman-Demi');
$draw->setFontSize(20);
$draw->setFillColor('grey70');

// Position text
$draw->setGravity(Imagick::GRAVITY_SOUTHEAST);

// Draw text on the watermark palette
$watermark->annotateImage($draw, 10, 12, 0, $text);

// Draw text on the mask palette
$draw->setFillColor('white');
$mask->annotateImage($draw, 11, 13, 0, $text);
$mask->annotateImage($draw, 10, 12, 0, $text);
$draw->setFillColor('black');
$mask->annotateImage($draw, 9, 11, 0, $text);

// This is apparently needed for the mask to work
$mask->setImageMatte(false);

// Apply mask to watermark
$watermark->compositeImage($mask, Imagick::COMPOSITE_COPYOPACITY, 0, 0);

// Overlay watermark on image
$image->compositeImage($watermark, Imagick::COMPOSITE_DISSOLVE, 0, 0);

// Set output image format
$image->setImageFormat('png');

// Output the new image
header('Content-type: image/png');
echo
$image;

?>

 
show source | credits | stats | sitemap | contact | advertising | mirror sites