Загрузка картинок на сайт (статьи)

 
Посетитель
small user social cms
Сообщений: 8
Здравствуйте. я так думаю это ошибка. загружаю картинку в статью. она обрезается 800х800 хотя должна только по ширине обрезаться 800 на 800... примерно вот картинка которая получилась http://l2west.ru/images/photos/small/article34.jpg хотя должна была получится 800х231 т.е. пропорционально уменьшаться высота а не браться за ширину....

да и как можно это понять.... для чего оно О_о

Код PHP:
  1. while ($new_width>$maxwidth) { $new_width *= 0.99; $new_height *= 0.99; }
  2. while ($new_height>$maxheight) { $new_width *= 0.99; $new_height *= 0.99; }

немного разобрал код.... в шоке был.
Код PHP:
  1. $idest = imagecreatetruecolor($maxwidth,$maxwidth);
Записать в тикет ? что это глобальная ошибка. и оно не должно так делаться. как минимум 2 варианта. или авто пропорционально уменьшаться или же в админке высоту указать.... и то с проверкой сделать если 0 стоит то авто-уменьшение
Редактировалось: 2 раз (Последний: 28 мая 2012 в 12:42)
Веб - Разработчик
Модератор
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1675
у вас выставлена генерация квадратных превью…
«Главное “настрой”! И всё настроиться…» © ) Их знают все! А вы?
Реклама
cms
Модератор
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1675
значит максимальная высота равна максимальной ширине при 800px для ширины квадрата получите увеличение высоты, если пропорции сохранять уберите генерацию квадратных уменьшенных копий, тогда ширина и будет соответствовать максимальной ширине…
«Главное “настрой”! И всё настроиться…» © ) Их знают все! А вы?
Посетитель
small user social cms
Медаль
Сообщений: 104
Главная → Компоненты → Каталог статей → Настроить каталог статей

Квадратные: Да Нет
Посетитель
small user social cms
Сообщений: 8
да ты был прав у меня стояли квадратное отображение smile но... тут сделал проверку, и был шокирован, вот это у них делает пропорциональное фото

Код PHP:
  1.  
  2. while ($new_width>$maxwidth) { $new_width *= 0.99; $new_height *= 0.99; }
  3. while ($new_height>$maxheight) { $new_width *= 0.99; $new_height *= 0.99; }
  4. $idest = imagecreatetruecolor($new_width, $new_height);
  5. imagefill($idest, 0, 0, $rgb);
  6. imagecopyresampled($idest, $isrc, 0, 0, 0, 0, $new_width, $new_height, $size[0], $size[1]);
  7.  
не есть хорошо запрос который постоянно обрезает по 1 пикселя...ааа я ослеп от этого кода. желательно его переписать.

загрузка этого кода дольше чем загрузка картинок в квадратном варианте. а все из за того что происходит вечный цикл пока не уменьшиться картинка.
Редактировалось: 1 раз (Последний: 28 мая 2012 в 14:48)
Веб - Разработчик
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4425
WarDJ:
вот это у них
WarDJ, эмоций и пренебрежения поменьше.

есть решение/улучшение - спокойно сделайте и выложите.
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
Сообщений: 8
вот переписал. строго не судить

Код PHP:
  1.  
  2.  
  3. list($wid,$heig) = $size;
  4. $koewidth=$wid/$maxwidth;
  5. $new_h=ceil($heig/$koewidth);
  6. $idest = imagecreatetruecolor($maxwidth, $new_h);
  7. imagefill($idest, 0, 0, $rgb);
  8. imagecopyresampled($idest, $isrc, 0, 0, 0, 0, $new_width, $new_height, $size[0], $size[1]);
  9.  
  10.  
Fuze, сори это я просто так к слову сказал, захарило писать "вот PHP код который используется в InstantCMS для пропорциональной обрезки картинок.". Обидел - сори, скрипт писал на обеде не было времени потестить, залил 1 картинку вроде все ок, тестируйте и отпишитесь что к чему.
Редактировалось: 2 раз (Последний: 28 мая 2012 в 16:55)
Веб - Разработчик
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.