При ресайзе добавить чёрно-белую палитру и прозрачность

st1512

Новичок
При ресайзе добавить чёрно-белую палитру и прозрачность

Товарищи, есть обычный ресайз:

$isrc = $imagecreatefrompng($src);
$idest = imagecreatetruecolor($width, $height);

imagecopyresampled($idest, $isrc, $new_left, $new_top, 0, 0, $new_width, $new_height, $size[0], $size[1]);

imagepng($idest, $dest);



Вопрос: как сделать так, чтобы при ресайзе ещё добавить два пункта:

1) сделать при ресайзе конвертацию в grayscale?

2) при ресайзе добавить прозрачность - т.е., чтобы вся картинка была полупрозрачность с некоторым значением (например, нарисовать сверху на весь размер холста некий чисто-полупрозрачный прямоугольник)
 

DiMA

php.spb.ru
Команда форума
1) если нет готовой функции - элементарно, циклом по точкам, складываешь 3 цвета и записываешь обратно среднее арифметическое
 

st1512

Новичок
так может какой хитрой функцией тогда при попиксельном переводе в грэйскейл тогда сразу и альфаканал добавлять?


Т.е. и пункт 2 решить?
 

kvf77

Red Devil
Играем с изображениями в PHP
http://php.russofile.ru/ru/translate/images/img_fun/
 
Сверху