Зеркальная картина с помощью PHP + GD2

Зеркальная картина с помощью PHP + GD2

Сегодня встала задача написать скрипт, который должен отражать картинку по горизонтали. Поиски готовых вариантов скрипта в сети Интернет успехом не увенчались. Поэтому пришлось самому писать скрипт.

С помощью библиотеки GD2 можно попискельно перебирать любую картинку. В моем случае, обычный перебор и копирование пикселов, необходимо было немного усложнить. Алгоритм достаточно простой, в верхнем левом углу берем пиксель и копируем его в верхний правый угол новой картинки.

$image = imagecreatefromjpeg( "img.jpg" );
$x = @imagesx($image);
$y = @imagesy($image );
$des = imagecreatetruecolor($x, $y);

for ($i = 0; $i < $x; $i++) {
 for ($j = 0; $j < $y; $j++) {
 $color =  imagecolorat($image, $i, $j);
 imagesetpixel($des, $x - $i - 1, $j, $color );
 }
}

header( "Expires: Tue, 11 Jun 1985 05:00:00 GMT" );
header( "Last-Modified: " . gmdate( "D, d M Y H:i:s" ) . " GMT" );
header( "Cache-Control: no-store, no-cache, must-revalidate" );
header( "Cache-Control: post-check=0, pre-check=0", false );
header( "Pragma: no-cache" );
header( "Content-Type: image/jpeg" );

@imagejpeg( $des, '', 90);

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *