imageflip

(PHP 5 >= 5.5.0, PHP 7)

imageflipFlips an image using a given mode

Описание

bool imageflip ( resource $image , int $mode )

Flips the image image using the given mode.

Список параметров

image

Ресурс изображения, полученный одной из функций создания изображений, например, такой как imagecreatetruecolor().

mode

Flip mode, this can be one of the IMG_FLIP_* constants:

Constant Meaning
IMG_FLIP_HORIZONTAL Flips the image horizontally.
IMG_FLIP_VERTICAL Flips the image vertically.
IMG_FLIP_BOTH Flips the image both horizontally and vertically.

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Flips an image vertically

This example uses the IMG_FLIP_VERTICAL constant.

<?php
// File
$filename 'phplogo.png';

// Content type
header('Content-type: image/png');

// Load
$im imagecreatefrompng($filename);

// Flip it vertically
imageflip($imIMG_FLIP_VERTICAL);

// Output
imagejpeg($im);
imagedestroy($im);
?>

Результатом выполнения данного примера будет что-то подобное:

Output of example: Vertically flipped image

Пример #2 Flips the image horizontally

This example uses the IMG_FLIP_HORIZONTAL constant.

<?php
// File
$filename 'phplogo.png';

// Content type
header('Content-type: image/png');

// Load
$im imagecreatefrompng($filename);

// Flip it horizontally
imageflip($imIMG_FLIP_HORIZONTAL);

// Output
imagejpeg($im);
imagedestroy($im);
?>

Результатом выполнения данного примера будет что-то подобное:

Output of example: Horizontally flipped image

Коментарии

Автор:
If you're using PHP < 5.5 you can use this code to add the same functionality. If you pass the wrong $mode in it will silently fail. You might want to add your own error handling for this case.

<?php
if (!function_exists('imageflip')) {
 
define('IMG_FLIP_HORIZONTAL'0);
 
define('IMG_FLIP_VERTICAL'1);
 
define('IMG_FLIP_BOTH'2);

  function 
imageflip($image$mode) {
    switch (
$mode) {
      case 
IMG_FLIP_HORIZONTAL: {
       
$max_x imagesx($image) - 1;
       
$half_x $max_x 2;
       
$sy imagesy($image);
       
$temp_image imageistruecolor($image)? imagecreatetruecolor(1$sy): imagecreate(1$sy);
        for (
$x 0$x $half_x; ++$x) {
         
imagecopy($temp_image$image00$x01$sy);
         
imagecopy($image$image$x0$max_x $x01$sy);
         
imagecopy($image$temp_image$max_x $x0001$sy);
        }
        break;
      }
      case 
IMG_FLIP_VERTICAL: {
       
$sx imagesx($image);
       
$max_y imagesy($image) - 1;
       
$half_y $max_y 2;
       
$temp_image imageistruecolor($image)? imagecreatetruecolor($sx1): imagecreate($sx1);
        for (
$y 0$y $half_y; ++$y) {
         
imagecopy($temp_image$image000$y$sx1);
         
imagecopy($image$image0$y0$max_y $y$sx1);
         
imagecopy($image$temp_image0$max_y $y00$sx1);
        }
        break;
      }
      case 
IMG_FLIP_BOTH: {
       
$sx imagesx($image);
       
$sy imagesy($image);
       
$temp_image imagerotate($image1800);
       
imagecopy($image$temp_image0000$sx$sy);
        break;
      }
      default: {
        return;
      }
    }
   
imagedestroy($temp_image);
  }
}
?>
2016-02-04 03:26:15
http://php5.kiev.ua/manual/ru/function.imageflip.html

    Поддержать сайт на родительском проекте КГБ