PHP – из цветного в черно-белое


Понадобилось реализовать, обработчик фото, загружаемых на сервер, который бы создавал миниатюру в ч/б.
Конечно, можно использовать для этого и JS и CSS фильтры, но после изучения технического задания был выбран именно серверный обработчик на php.

Плюс мизерный, но он есть. На сервере около 100 000 изображений. Мы взяли 50 и пересохранили их в 50 цветных и 50 черно-белых миниатюр. Разница в объеме была незначительной, но она была 960КБ. Т.е. на сервере используется меньше места, загружаемая страница весит тоже меньше т.к. для отображения фото нужно лишь написать просто html тег img. Без фильтров и JS обработок, что дает прирост прорисовки страницы. Также фото на сайте будут выглядеть одинаково на всех устройствах и во всех браузерах (а так бы пришлось писать маски под каждый браузер).

Пример кода php:

<?php
$path = $_SERVER['DOCUMENT_ROOT'].'/photo/color/1.jpg';
$img = imagecreatefrompng($path);
if (imagefilter($img, IMG_FILTER_GRAYSCALE)) {
    imagepng($img,'grayscale.png' );
}
imagedestroy($img);
?>

Данный способ прекрасно работает с большими изображениями и даже с панорамами. Если Вы сделали у себя на сайте виртуальные туры – то некоторые можно выделить таким образом, обесцветив изображение. Качественное создание виртуальных туров на сегодняшний день стало доступно всем. Например из цветного панорамного фото:

можно сделать ч/б и оно отлично будет смотреться:

Обменник валют

Другие публикации:



Написать комментарий через:

 
               
  • Локальный блог
  •  
 

Ваш отзыв

Имя *

Почта (скрыта) *

Сайт

Напишите цифрами двa вoceмь двa *

Сообщение

Один отзыв на «PHP – из цветного в черно-белое»

  1. Михаил пишет:

    Я бы все таки делал на JS

 
Статусы для соц.сетей на ArtKiev Design Studio