Xwab
Форумыnavigate_nextПрограммирование на PHP

Фон картинки при смены размера
Сообщения
Aliveon2

Здраствуйте.
Просьба подсказать как при смене размера картинки указть нужный цвет для фона (ели есть прозрачность).

Вод класс если комуто будет полезно.

      class SimpleImage {
   var $image;
   var $image_type;
      function load($filename) {
      $image_info = getimagesize($filename);
      $this->image_type = $image_info[2];
         if( $this->image_type == IMAGETYPE_JPEG ) {
         $this->image = imagecreatefromjpeg($filename);
         } elseif( $this->image_type == IMAGETYPE_GIF ) {
         $this->image = imagecreatefromgif($filename);
         } elseif( $this->image_type == IMAGETYPE_PNG ) {
         $this->image = imagecreatefrompng($filename);
         }
      }
      function save($filename, $image_type=IMAGETYPE_JPEG, $compression=75, $permissions=null) {
         if( $image_type == IMAGETYPE_JPEG ) {
         imagejpeg($this->image,$filename,$compression);
         } elseif( $image_type == IMAGETYPE_GIF ) {
         imagegif($this->image,$filename);
         } elseif( $image_type == IMAGETYPE_PNG ) {
         imagepng($this->image,$filename);
         }
         if( $permissions != null) {
         chmod($filename,$permissions);
         }
      }
      function output($image_type=IMAGETYPE_JPEG) {
         if( $image_type == IMAGETYPE_JPEG ) {
         imagejpeg($this->image);
         } elseif( $image_type == IMAGETYPE_GIF ) {
         imagegif($this->image);
         } elseif( $image_type == IMAGETYPE_PNG ) {
         imagepng($this->image);
         }
      }
      function getWidth() {
      return imagesx($this->image);
      }
      function getHeight() {
      return imagesy($this->image);
      }
      function resizeToHeight($height) {
      $ratio = $height / $this->getHeight();
      $width = $this->getWidth() * $ratio;
      $this->resize($width,$height);
      }
      function resizeToWidth($width) {
      $ratio = $width / $this->getWidth();
      $height = $this->getheight() * $ratio;
      $this->resize($width,$height);
      }
      function scale($scale) {
      $width = $this->getWidth() * $scale/100;
      $height = $this->getheight() * $scale/100;
      $this->resize($width,$height);
      }
      function resize($width,$height) {
      $new_image = imagecreatetruecolor($width, $height);
      imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(), $this->getHeight());
      $this->image = $new_image;
      }
   }

19 Апр 2013, 0:18
nitron

www.php.su/articles/?cat=graph&page=004

19 Апр 2013, 7:17
IceJOKER

http://php.net/manual/ru/function.imagefilledrectangle.php

19 Апр 2013, 9:02
Ответить на тему