Как развернуть картинку зеркально по горизонтали?

RolCom

Новичок
Как развернуть картинку зеркально по горизонтали?

Как в PHP развернуть картинку зеркально по горизонтали?
 

RolCom

Новичок
Т.е. придется писать свой цикл и проходить по пикселям? Функции типа imagerotate нету?
 

The employer

Новичок
Автор оригинала: RolCom
Т.е. придется писать свой цикл и проходить по пикселям? Функции типа imagerotate нету?
imagerotate повернет картинку, а тебе надо ее отразить. Это разные преобразования.

Попиксельно тоже переносить не нужно - можно воспользоваться функцией imagecopy для переноса целой строки - будет гораздо быстрее.

PHP:
$img1 = imagecreatefromjpeg( $filename );
$w = imagesx($img1);
$h = imagesy($img1);
$img2 = imagecreatetruecolor( $w, $h );

imagelayereffect( $img2, IMG_EFFECT_REPLACE);
for( $i = 0; $i < $h; $i++ ) {
    imagecopy( $img2, $img1, 0, $i, 0, $h - $i - 1, $w, 1 );
}
После этого в $img2 содержится вертикально отраженный $img1.

-~{}~ 25.07.09 16:36:

Ну а по горизонтали будет
PHP:
for( $i = 0; $i < $w; $i++ ) { 
    imagecopy( $img2, $img1, $i, 0, $w - $i - 1, 0, 1, $h ); 
}
 
Сверху