The cleaner way to set the type to grayscale is to use the Imagick class constant.
$oBw = new \Imagick($sSourceImage);
$oBw->setImageType(\Imagick::IMGTYPE_GRAYSCALE);
I've found this to be a rather harsh 'convert to grayscale' approach. Fred's color2gray script works much better, but it's written in Bash. Time to get it ported over lol
http://www.fmwconcepts.com/imagemagick/color2gray/index.php
PHP.mk документација
Imagick::setImageType
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
imagick.setimagetype.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + превод во позадина
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
imagick.setimagetype.php
Imagick::setImageType
Референца за `imagick.setimagetype.php` со подобрена типографија и навигација.
Imagick::setImageType
(PECL imagick 2, PECL imagick 3)
Imagick::setImageType — Го поставува типот на сликата
Параметри
image_type-
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true на успешен исход.
Белешки од корисници 3 белешки
quickshiftin at gmail dot com ¶
пред 11 години
Simon J ¶
пред 6 години
The different image types that can be specified are (from the Imagick::getImageType doc page):
Imagick::IMGTYPE_UNDEFINED
Imagick::IMGTYPE_BILEVEL
Imagick::IMGTYPE_GRAYSCALE
Imagick::IMGTYPE_GRAYSCALEMATTE
Imagick::IMGTYPE_PALETTE
Imagick::IMGTYPE_PALETTEMATTE
Imagick::IMGTYPE_TRUECOLOR
Imagick::IMGTYPE_TRUECOLORMATTE
Imagick::IMGTYPE_COLORSEPARATION
Imagick::IMGTYPE_COLORSEPARATIONMATTE
Imagick::IMGTYPE_OPTIMIZE
The MATTE variants are equivalent to GrayscaleAlpha, etc. in the ImageMagick command line. If you're making something grayscale, I would recommend using IMGTYPE_GRAYSCALEMATTE.
<?php
$im->setImageType(Imagick::IMGTYPE_GRAYSCALEMATTE);
?>
lee dot traynor at skeptic dot de ¶
пред 14 години
This function can be used to desaturate an image, i.e. to convert a coloured image into a greyscale:
<?php
$im = new Imagick ("image.jpg");
$im->setImageType (2);
//is now in 256 shades of grey
?>