За последние 24 часа нас посетили 18959 программистов и 1614 роботов. Сейчас ищут 634 программиста ...

Текст на картинке кривой

Тема в разделе "Обработка изображений средствами PHP", создана пользователем Lyona, 8 фев 2007.

  1. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
    со всем справился кроме цвета. никак не хочет его делать чёрным.
    PHP:
    1. imagettftext($im, 15, 0, 40, 757, [b]100[/b], "/arial.ttf",  "$GD2_JPG_TEXT");
    - пробовал изменять значение - всё равно тёмно-серый. мне думается это зависит каим-нибудь образом от изображения даже. было однажды когда каптчу делал свою, вставляю фон другой - рисует текст уже другим цветом на этом фоне, хотя сам цвет в настройках не изменял..
    кто сталивалася с тем же, подскажите, как исправить цвет на чёрный!

    спасибо!
     
  2. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
    Подскажите плиз... проблема всё ещё актуальна...
     
  3. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
    Ну действительно текст почему-то серый, несмотря на настройки. Почему так бывает?
     
  4. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
  5. AlexGousev

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

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
    Mark32
    изображение случайно не индексированное? imageistruecolor что возвращает?
     
  6. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
    AlexGousev
    а что есть индексированное изображение?
    Понимаете, у меня картинка прекрасно грузится, и текст красиво встаёт - вобщем всё славно, но вот только серый он блин! Сама картинка вся в чёрно-беых цветах.

    Le fragmente:
    PHP:
    1.  
    2. $im = @ImageCreateFromPNG('list.png') or die;  
    3. $white = imagecolorallocate($im, 255, 255, 255);
    4. $black = imagecolorallocate($im, 100, 100, 100); // написаны параметры- всё равно серый. кто-то на форуме уже подсказывал их покрутить - нихрена не получилось - ему хоть бы что...
    5. imagettftext($im, 15, 0, 140, 598, 100, "/arial.ttf", "$text");
    6.  
     
  7. AlexGousev

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

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
    Mark32
    Индексированное - это с фиксированной цветовой палитрой. И в этой цифровой палитре может вовсе не быть черного.

    а 100 красного + 100 зеленого + 100 синего и есть серый цвет. Черный - это по нулям.

    Что значит 100??? Там должен быть указатель на номер в палитре. Его возвращает imagecolorallocate, находя наиболее близкий в палитре цвет на основе переданных данных.

    Советую потратить пару дней и разобраться, как устроены изображения, какие форматы бывают, чем отличаются и для чего предназначены. Гугл в помощь.
     
  8. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
    AlexGousev
    спасибо, так и сделаю
     
  9. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
    Хм... Поставил imagettftext($im, 15, 0, 140, 598, 0011, "/arial.ttf", "$text");
    а imagecolorallocate($im, 100, 100, 100); оставил без изменений
    в итоге текст стал чёрным:)[/b]
     
  10. AlexGousev

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

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
    звиздец. no comments…
     
  11. AlexGousev, именно по этому ему никто не отвечает. Он все равно не читает, что ему пишут. Ну угадал он, что 9 цвет в палитре этой картинки черный, и слава богу. Тем более, если там 16 основных цветов сделаны началом индекса, он часто будет 9-м.
     
  12. Mark32

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

    С нами с:
    15 июн 2008
    Сообщения:
    539
    Симпатии:
    2
    ну ладно вам
    сейчас сделаю в спешке, потом разберу окончательно.
    флоппик
    не все ломаются перед ответом, и слава форуму php.ru!
    Флоп, вы прям психолог... за всех не стоит говорить.