За последние 24 часа нас посетили 35020 программистов и 1738 роботов. Сейчас ищут 820 программистов ...

Библиотеки картинок

Тема в разделе "Обработка изображений средствами PHP", создана пользователем smails, 14 окт 2006.

  1. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Здрасти!
    Подскажите пожалуйста, где можно взять библиотеки под php, которые обрабатывают картинки, уменьшают, сужают и т. д...
    Ато стандартная библиотека gb2 очень плохо с картинками работает, иногда вообще инверс цветов, и в чёрнобелом варианте
     
  2. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    А для версии php5.1.6 библиотека есть?
     
  3. Davil

    Davil Guest

    Чем не подходит?
     
  4. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Скачал php-5.0.4_magickwand_q32_st.dll
    Включил её в php.ini, но php никак на неё не реагирует, функции этой библиотеки неизвестны пишет...
     
  5. Davil

    Davil Guest

    Дирректория в которую ты положил php-5.0.4_magickwand_q32_st.dll?
     
  6. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Да ext в папке php, про эту папку прописао в php.ini, типо extension_dir
     
  7. Петр

    Петр Активный пользователь

    С нами с:
    20 мар 2006
    Сообщения:
    1.253
    Симпатии:
    0
    Адрес:
    Центр Вселенной
    А она других библиотек не просит?
    В GD2 для ряда функций, например, mb_string надо.
     
  8. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Неа. вообще никак не реагирует на неё...
    А вот вообще создатели сайтов, интернет магазинов чем пользуются?
    Прикольно получается, вообще почти идеальное уменьшение
     
  9. alTus

    alTus Активный пользователь

    С нами с:
    4 окт 2006
    Сообщения:
    37
    Симпатии:
    0
    Адрес:
    Obninsk
    Собственными скриптами. Там писать всего ничего.
    Вот например хорошо всё описано вот здесь.
     
  10. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Код уменьшения картинки я написал, но качество уменьшенной картинка миочень плохое, нужна просто другая библиотека для работы с изображениями.
     
  11. alTus

    alTus Активный пользователь

    С нами с:
    4 окт 2006
    Сообщения:
    37
    Симпатии:
    0
    Адрес:
    Obninsk
    А ты смотрел статейку?
    Я лично, когда это требовалось, использовал этот скрипт (с незначительными изменениями), и при этом качество превьюшек меня устраивало даже очень.

    Может быть дело в том что у тебя не идет масштабирование?
     
  12. Mavir

    Mavir Guest

    smails
    Какой функцией создаешь рисунок? imagecreatetruecolor или imagecreate?
     
  13. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Вот мой код:


    move_uploaded_file($_FILES['file_lu']['tmp_name'], "$dir_lu/big/$i.jpg");


    if ($_FILES['file_lu']['tmp_name']){

    $old = imageCreateFromjpeg("$dir_lu/big/$i.jpg");

    $sx = imageSX($old);
    $sy = imageSY($old);

    if ($sx > $sy){
    $per = $sx / 150;
    $per1 = $sy / $per;
    $per2 = 150;
    }

    if ($sx == $sy){
    $per1 = 150;
    $per2 = 150;
    }

    if ($sx < $sy){
    $per = $sy / 150;
    $per2 = $sx / $per;
    $per1 = 150;
    }


    $w = imageSX($old);
    $h = imageSY($old);
    $new = imageCreate($per2, $per1);
    imageCopyResized($new, $old, 0, 0, 0, 0, $per2, $per1, $w, $h);
    Imagejpeg($new, "$dir_lu/little/$i.jpg");
    }
     
  14. Mavir

    Mavir Guest

    Вот поэтому и рисунки бьются. Если не ошибаюсь, то этой функцией создается рисунок с 256 цветами. Рисунок нужно создавать imagecreatetruecolor
     
  15. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    неа, не получается(( Но рисунки помоему получаются все 256 цветов, даже с использованием этой ф-ции
     
  16. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
  17. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Ой, всё, глупейшая ошибка, я поменял ф-цию в скрипте, который добавляет картинку, а в тот, который меняет, забыл поставить))
    Так ф-ция работает!
    СПАСИБО ЗА ПОДСКАЗКУ!
    Если что, ещё напишу;-)
     
  18. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    Смотрите на качество:
    Исходная картинка:
    http://smails.ru/626.jpg
    Преобразованная скриптом, код которого такой:
    Код (Text):
    1. <?
    2.  
    3. header("Content-type: image/jpeg");
    4. $im = ImageCreatefromjpeg("626.jpg");
    5. Imagejpeg($im);
    6.  
    7. ?>
    тут: http://smails.ru/pict.php

    Вообще не знаю почему и что делать... подскажите:)
     
  19. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    smails
    У функции imagejpeg есть еще третий параметр - качество (от 0 до 100, по умолчанию 75).
     
  20. smails

    smails Активный пользователь

    С нами с:
    24 июл 2006
    Сообщения:
    231
    Симпатии:
    0
    Адрес:
    Москва
    о, спасибо огромно!!!