Вход Регистрация
Файл: sys/fnc/resize_crop.php
Строк: 36
<?php

if ($_SERVER['PHP_SELF'] != '/modules/foto/create.php') {
#Масштабирование изображения

    
function resize($file_input$file_output$w_o$h_o$percent false) {
        list(
$w_i$h_i$type) = getimagesize($file_input);
        if (!
$w_i || !$h_i) {
            echo 
'Невозможно получить длину и ширину изображения';
            return;
        }
        
$types = array('''gif''jpeg''png');
        
$ext $types[$type];
        if (
$ext) {
            
$func 'imagecreatefrom' $ext;
            
$img $func($file_input);
        } else {
            echo 
'Некорректный формат файла';
            return;
        }
        if (
$percent) {
            
$w_o *= $w_i 100;
            
$h_o *= $h_i 100;
        }
        if (!
$h_o) {
            
$h_o $w_o / ($w_i $h_i);
        }
        if (!
$w_o) {
            
$w_o $h_o / ($h_i $w_i);
        }
        
$img_o imagecreatetruecolor($w_o$h_o);
        
imagecopyresampled($img_o$img0000$w_o$h_o$w_i$h_i);
        if (
$type == 2) {
            return 
imagejpeg($img_o$file_output100);
        } else {
            
$func 'image' $ext;
            return 
$func($img_o$file_output);
        }
    }

#Обрезка изображения

    
function crop($file_input$file_output$crop 'square'$percent false) {
        list(
$w_i$h_i$type) = getimagesize($file_input);
        if (!
$w_i || !$h_i) {
            echo 
'Невозможно получить длину и ширину изображения';
            return;
        }
        
$types = array('''gif''jpeg''png');
        
$ext $types[$type];
        if (
$ext) {
            
$func 'imagecreatefrom' $ext;
            
$img $func($file_input);
        } else {
            echo 
'Некорректный формат файла';
            return;
        }
        if (
$crop == 'square') {
            
$min $w_i;
            if (
$w_i $h_i)
                
$min $h_i;
            
$w_o $h_o $min;
        } else {
            list(
$x_o$y_o$w_o$h_o) = $crop;
            if (
$percent) {
                
$w_o *= $w_i 100;
                
$h_o *= $h_i 100;
                
$x_o *= $w_i 100;
                
$y_o *= $h_i 100;
            }
            if (
$w_o 0)
                
$w_o += $w_i;
            
$w_o -= $x_o;
            if (
$h_o 0)
                
$h_o += $h_i;
            
$h_o -= $y_o;
        }
        
$img_o imagecreatetruecolor($w_o$h_o);
        
imagecopy($img_o$img00$x_o$y_o$w_o$h_o);
        if (
$type == 2) {
            return 
imagejpeg($img_o$file_output100);
        } else {
            
$func 'image' $ext;
            return 
$func($img_o$file_output);
        }
    }

}
Онлайн: 0
Реклама