View file Spiderwap.in File Hosting/sys/file/img.php

File size: 3.34Kb
<?php
/**
* $filename string = 'img.jpg' - путь к изображению
* $percent string  = 300 - ширина уменьшенной копии картинки
* $quality string  = 0-100 - качество изображения (только для JPG)
**/
function resize ($filename, $size = 200, $quality = 85,$tmp = false)
{
    /**
    * Адрес директории для сохранения картинки
    */
    if(!$tmp){
    $dir         = $_SERVER['DOCUMENT_ROOT'].'/screens/';}
    else{
    copy($_SERVER['DOCUMENT_ROOT'].'/ava/'.$filename,$_SERVER['DOCUMENT_ROOT'].'/avatmp/'.$filename);
    $dir         = $_SERVER['DOCUMENT_ROOT'].'/avatmp/';}

    /**
    * Извлекаем формат изображения, то есть получаем
    * символы находящиеся после последней точки
    */
    $ext         = strtolower(strrchr(basename($filename), "."));
    /**
    * Допустимые форматы
    */
    $extentions = array('.jpg', '.gif', '.png', '.bmp');

    if (in_array($ext, $extentions)) {
        $percent = $size; // Ширина изображения миниатюры
        list($width, $height) = getimagesize($dir.$filename); // Возвращает ширину и высоту
        $newheight               = $height * $percent;
        $newwidth               = $newheight / $width;

        $thumb = imagecreatetruecolor($percent, $newwidth);

        switch ($ext) {
            case '.jpg':
                $source = @imagecreatefromjpeg($dir.$filename);
                break;

            case '.gif':
                $source = @imagecreatefromgif($dir.$filename);
                break;

            case '.png':
                $source = @imagecreatefrompng($dir.$filename);
                break;

            case '.bmp':
                $source = @imagecreatefromwbmp($dir.$filename);
        }

        /**
        * Функция наложения, копирования изображения
        */
        imagecopyresized($thumb, $source, 0, 0, 0, 0, $percent, $newwidth, $width, $height);
        if(!$tmp){$color = imagecolorallocate($thumb, 0, 100, 200);

		imagestring($thumb, 2,($percent-strlen($_SERVER['HTTP_HOST'])*6), $newwidth-15, $_SERVER['HTTP_HOST'], $color);}
        /**
        * Создаем изображение
        */
        switch ($ext) {
            case '.jpg':
                imagejpeg($thumb, $dir . $filename, $quality); // Для JPEG картинок
                break;

            case '.gif':
                imagegif($thumb, $dir . $filename); // Для GIF картинки
                break;

            case '.png':
                imagepng($thumb, $dir . $filename, $quality); // Для PNG картинок
                break;

            case '.bmp':
                imagewbmp($thumb, $dir . $filename); // Для BMP картинки
                break;
        }
    } else {
        return 'Error image format!';
    }

    /*
    *  Очищаем оперативную память сервера от временных файлов,
    *  которые потребовались для создания миниатюры
    **/
    @imagedestroy($thumb);
    @imagedestroy($source);

    return $filename;
}
?>