Просмотр файла upload/resize.php

Размер файла: 1.12Kb
<?php
$image = $_GET['image']; # передаём путь к исходной картинке
$maxsize = 100; # макс. размер маштабирования (одна сторона, скрипт сам выбирает как лучше)

$size = GetImageSize('files/'.$image);  # узнаём разрешение
$width = $size[0]; # длина
$height = $size[1];  # ширина

$x_ratio = $maxsize / $width; # вычисляем 
$y_ratio = $maxsize / $height;  # вычисляем 

# дальше делаем так чтобы картинка не растягивалась:
if ( ($width <= $maxsize) && ($height <= $maxsize) ) { 
  $tn_width = $width; 
  $tn_height = $height; 
} 
else if (($x_ratio * $height) < $maxsize) { 
  $tn_height = ceil($x_ratio * $height); 
  $tn_width = $maxsize; 
} 
else { 
  $tn_width = ceil($y_ratio * $width); 
  $tn_height = $maxsize; 
} 
#;

$src = ImageCreateFromJpeg('tmp/'.$image); # СОЗДАЁМ картинку
$dst = ImageCreateTrueColor($tn_width, $tn_height);  # создаём слой
ImageCopyResized($dst, $src, 0, 0, 0, 0, $tn_width, $tn_height, $width, $height);  # копируем картинку на новую уже изменённуб 
header("Content-type: image/jpeg"); # опрелеяем тип 
ImageJpeg ($dst, null, 40); # выводит на экран
ImageDestroy($src); # убиваем кэш
?>