Прозрачный PNG в аватарах на Хабре обретает фон

    На многих сайтах я использую свой PNG-аватар. А он, в свою очередь, использует такое приемущество формата PNG, как альфа-канал. Но на Хабре мистическим образом это приемущество оборачивается недостатком: изображение теряет прозрачность.

    В моём случае фон становится чёрным. На мой взгляд, это губит красивую идею универсального аватара.

    Естественный вопрос уважаемым разработчикам: а нельзя ли это исправить?
    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 11

      0
      По этой причине я переконвертил оригинальное лого в gif.
        +4
        о, да! оно у вас оригинальное ;)
          0
          Сам в gif конвертил! :-)
        0
        createtruecolor..
        Нет, когда картинка уменьшается, то приходится накладывать фон.
          0
          А почему, можно подробнее? Ограничение библиотеки чтоли? Вот граватар фон не накладывал. ЖЖ тоже.
            0
            Нет, не ограничение библиотеки.
            Просто система уменьшения начинается с создания в программе картинки с нужными в итоге размерами. Для нее выбирается цвет тремя параметрами (RGB). Прозрачный вариант тут не придумать.
              0
              Я тут немного почитал комментариев в онлайн документации к php, про GD библиотеку. Вы ведь про неё? Так вот, там есть положительные примеры.
                0
                Как я понимаю, смысл решения довольно прост. После вышеупомянутого создания отключается альфа-блендинг и весь холст заливается прозрачным цветом, заменяющим изначальный черный. Затем альфа-блендинг включается обратно. Ещё надо не забыть savealpha. И всё, прощай чёрный фон.
            0
            На last.fm они прекрасно уменьшаются без накладывания фона.
              0
              Учим функции из ПХП

              imageAlphaBlending();
              imageSaveAlpha();
                0
                Подложите белый фон под аватар (ведь на хабре он белый) и будет тоже самое :)

                Only users with full accounts can post comments. Log in, please.