Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите с резкой картинок! Резка картинок 
V
    Опции темы
kdk
Дата 16.3.2007, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 16.3.2007

Репутация: нет
Всего: нет



Можете помочь обьясните: Как можно просто можно обрезать картинку!
Я знаю что вы все пошлете на http://ru2.php.net/imagecopymerge! Я там ничего не понял можете выложить простенький пример с коментариями?
Зарание спасибо!
PM MAIL   Вверх
mishaSL
Дата 17.3.2007, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 2
Всего: 54



Вот написал простенький пример:
Код

<?php
function cutImg($file, $newWidth = 0, $newHeight = 0)
{
    //проверим данные переданные в функцию, если они неверны, то возвратим FALSE
    $newWidth    = intval($newWidth);
    $newHeight    = intval($newHeight);
    if (!file_exists($file) || $newWidth<=0 || $newHeight <=0) {
        return false;
    }
    //загружаем исходное изображение, допустим оно в формате JPG
    //если формат неизвестен - то здесь можно добавить определения формата
    $oldImg = imageCreateFromJpeg($file);
    //проверим если размеры изображения меньше, чем нужно обрезать, то присвоим эти размеры
    if (imageSX($oldImg) < $newWidth) {
        $newWidth = imageSX($oldImg);
    }
    if (imageSY($oldImg) < $newHeight) {
        $newHeight = imageSY($oldImg);
    }
    //cоздадим новое изображение, куда будем ложить результат, с нужными нам размерами
    $newImg = imageCreateTrueColor($newWidth, $newHeight);
    //для обрезания будем использовать функцию imagecopyresized
    imageCopyResized($newImg, $oldImg, 0, 0, 0, 0, $newWidth, $newHeight, $newWidth, $newHeight);
    //далее выводим в браузер для наглядности, если надо сохранить, то указываем второй параметр в функции
    //imagejpeg() и уберем header. Также обратим внимание, что функция imagejpeg() только для формата jpg
    header("Content-type: image/jpeg");
    imagejpeg($newImg);

}

cutImg('1234.jpg',100, 100);
?>



Прокомментировал вроде все. Если что-то непонятно - спрашивай. Далее функцию можно усовершенствовать smile 


--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
kdk
Дата 17.3.2007, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 16.3.2007

Репутация: нет
Всего: нет



Огромное спасибо! Все понятно!

PM MAIL   Вверх
SmivaL
Дата 25.9.2007, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 22.11.2006

Репутация: нет
Всего: нет



подскажите пожалуйста что надо дописать к скрипту чтобы:

1) определять тип изображения;
2) резать по двум координатам, то есть допустим мне надо вырезать квадрат с левой верхней точкой в 10, 10 и правой нижней точкой 30, 30.

спасибо.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Графика | Следующая тема »


 




[ Время генерации скрипта: 0.0406 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.