What worked for me to convert a JPG source file to a semi-transparent PNG.
<?php
$srcImagick = new Imagick($srcPath);
$pathTo50Perc = 'transparent1.png';
$srcImagick->setImageAlphaChannel(Imagick::ALPHACHANNEL_OPAQUE);
$srcImagick->evaluateImage(Imagick::EVALUATE_DIVIDE, 2, Imagick::CHANNEL_ALPHA);
$srcImagick->writeImage($pathTo50Perc);
?>Imagick::evaluateImage
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Imagick::evaluateImage
Референца за `imagick.evaluateimage.php` со подобрена типографија и навигација.
Imagick::evaluateImage
(PECL imagick 2, PECL imagick 3)
Imagick::evaluateImage — Применува израз на слика
= NULL
$op, float $constant, int $channel од Imagick 3.4.4. Силно се обесхрабрува потпирањето на оваа функција.): boolПрименува израз на слика
Параметри
op-
Применува аритметички, релационен или логички израз на слика. Користете ги овие оператори за осветлување или затемнување на слика, за зголемување или намалување на контрастот на сликата или за добивање на „негатив“ од сликата.
constant-
Оператор за евалуација
channel-
Белата точка на сликата. Обезбедете каква било константа на каналот што е валидна за вашиот режим на канал. За да се примени на повеќе од еден канал, комбинирајте ги константите на типот на каналот користејќи бинарни оператори. Погледнете ја оваа листа на.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true на успешен исход.
Errors/Exceptions
Фрла ImagickException при грешка.
Примери
Пример #1 Користење Вредноста на операторот
Imagick::evaluateImage()
<?php
// Create new object with the image
$im = new Imagick('example-alpha.png');
// Reduce the alpha by 50%
$im->evaluateImage(Imagick::EVALUATE_DIVIDE, 2, Imagick::CHANNEL_ALPHA);
// Output the image
header("Content-Type: image/png");
echo $im;
?>