You are here

function resizeimage in Brilliant Gallery 6.4

Same name and namespace in other branches
  1. 5.4 image.php \resizeimage()
  2. 5.3 image.php \resizeimage()
  3. 6 image.php \resizeimage()
  4. 6.2 image.php \resizeimage()
  5. 6.3 image.php \resizeimage()
  6. 7.2 OLD_brilliant_gallery_functions.inc \resizeimage()
  7. 7 brilliant_gallery_functions.inc \resizeimage()
1 call to resizeimage()
resizeimage_wrapper_dbcache in ./functions.inc

File

./functions.inc, line 377

Code

function resizeimage($imgp, $imgw, $imgh, $imgcrop, $imagepath) {

  #$imagepath = base64_decode($imgp);

  #echo '.... ' . base64_decode( $imgp );

  #flush();die(' stop!');

  //global $imagepath;

  //$suffix = strtolower(substr($imagepath, -4));
  $suffix = end(explode('.', strtolower($imagepath)));

  //$imgsize = @getimagesize($imagepath);

  # http://be.php.net/getimagesize

  //$head = "Content-type: {$imgsize['mime']}";
  if ($suffix == "gif") {

    #$head = "Content-type: image/gif";
    $img = @imagecreatefromgif($imagepath);
    if (!$img) {
      brilliant_gallery_brokenimage("Error loading GIF", $imgw, $imgh);
    }
  }
  else {
    if ($suffix == "jpg" or $suffix == "jpeg") {

      #$head = "Content-type: image/jpeg";

      //brilliant_gallery_brokenimage($imagepath.' :1: '.time(),1900,500); exit();
      $img = @imagecreatefromjpeg($imagepath);
      if (!$img) {
        brilliant_gallery_brokenimage("Error loading JPG", $imgw, $imgh);
      }
    }
    else {
      if ($suffix == "png") {

        #$head = "Content-type: image/png";
        $img = @imagecreatefrompng($imagepath);
        if (!$img) {
          brilliant_gallery_brokenimage("Error loading PNG", $imgw, $imgh);
        }
      }
    }
  }

  # Resize the image
  $src_h = ImageSY($img);
  $src_w = ImageSX($img);

  #$dst_img = imagecreatetruecolor($imgw, $imgh);

  #imagecopyresampled($dst_img, $img, 0, 0, 0, 0, $imgw, $imgh, $src_w, $src_h);
  $dst_img = 0;
  if ($imgcrop == 'yes') {
    if ($src_h > $src_w) {

      // portrait
      $dst_img = imagecreatetruecolor($imgh, $imgh);
      imagecopyresampled($dst_img, $img, 0, 0, 0, ($src_h - $src_w) / 2, $imgh, $imgh, $src_w, $src_w);
    }
    else {

      // landscape
      $dst_img = imagecreatetruecolor($imgw, $imgw);
      imagecopyresampled($dst_img, $img, 0, 0, ($src_w - $src_h) / 2, 0, $imgw, $imgw, $src_h, $src_h);
    }
  }
  else {
    $dst_img = imagecreatetruecolor($imgw, $imgh);
    imagecopyresampled($dst_img, $img, 0, 0, 0, 0, $imgw, $imgh, $src_w, $src_h);
  }
  $img = $dst_img;
  imageinterlace($img, 1);
  imagecolortransparent($img);
  ob_start();
  if ($suffix == "gif") {
    Imagegif($img);
  }
  else {
    if ($suffix == "jpg" or $suffix == "jpeg") {
      Imagejpeg($img, NULL, 80);
    }
    else {
      if ($suffix == "png") {
        Imagepng($img);
      }
    }
  }
  $result = ob_get_clean();

  #ImageDestroy($img);

  //$result = serialize(array($head, base64_encode($result)));
  $result = $result;
  return $result;
}