Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Решено Немного PHP. Работа с картинкой 2d скина.

Тема в разделе "[Архив] Помощь", создана пользователем UnlimNET, 6 авг 2013.

  1. Автор темы
    UnlimNET

    UnlimNET Активный участник Пользователь

    Баллы:
    88
    Кто шарит? замучался уже...
    PHP:
    function FrontImage ($scale 1$r 255$g 255$b 255) {
     
            
    $newWidth 16 $scale;
     
            
    $newHeight 32 $scale;
     
            
    //$newImage = imagecreatetruecolor(16, 32);
     
            //$background = imagecolorallocate($newImage, $r, $g, $b);
     
            //imagefilledrectangle($newImage, 0, 0, 16, 32);
     
            //$im = imagecreatetruecolor(55, 30);
     
            //imagecolortransparent($newImage); //
     
            // Создаем Image 55x30
     
            
    $newImage imagecreatetruecolor(1632);
     
            
    $red imagecolorallocate($newImage25500);
     
            
    $black imagecolorallocate($newImage000);
     
     
     
            
    // Выставляем цвет $black как прозрачный
     
            
    imagecolortransparent($newImage$black);
     
     
     
            
    imagecopy($newImage$this->image408888);
     
            
    $this->imagecopyalpha($newImage$this->image4040888imagecolorat($this->image630));
     
            
    imagecopy($newImage$this->image482020812);
     
            
    imagecopy($newImage$this->image820420412);
     
            
    imagecopy($newImage$this->image420420412);
     
            
    imagecopy($newImage$this->image1284420412);
     
            
    imagecopy($newImage$this->image084420412);
     
     
     
            if(
    $scale != 1) {
     
                
    $resize imagecreatetruecolor($newWidth$newHeight);
     
                
    imagecopyresized($resize$newImage0000$newWidth$newHeight1632);
     
                
    imagedestroy($newImage);
     
                return 
    $resize;
     
            }
     
     
     
            return 
    $newImage;
     
        }
    Вот этот участок кода отвечает за вывод изображения 2d скина. Изначально был белый фон. Сейчас я добился, что уже фон стал черным... Но задача другая. Нужно сделать фон прозрачным. Чтобы просто формировался скин...
    Вроде я задействовал imagecolortransparent($newImage, $black);
    Но, фак, не работает!!! Помогите, пожл. С меня туча лайков.
     
  2. Хостинг MineCraft
    <
  3. DragonWerewolf

    DragonWerewolf Активный участник Пользователь

    Баллы:
    88
    Skype:
    DragonWerewolfDragon
    Замечание:
    Прозрачность копируется только функцией imagecopymerge() и для truecolor-изображений. В случае использования функции imagecopy() или палитрового изображения значение альфа компонента не копируется.​
    Замечание:
    Прозрачный цвет является свойством изображения, прозрачность не является свойством цвета. Если вы задали цвет как прозрачный, некоторые области изображения этого цвета нарисованные ранее станут прозрачными.

    не та функция или не так используется =) Я честно ничерта не понял что ты хочешь сделать прозрачным по коду
     
    UnlimNET нравится это.
  4. Автор темы
    UnlimNET

    UnlimNET Активный участник Пользователь

    Баллы:
    88

    Фак :D Короче, в коде формируется обыкновенная картинка.
    Вот пример - http://88.198.248.62/skin.php?path=http://cubesart.ru/skins/1.png

    Есть ли способы сделать фон прозрачным?
     
  5. J1Mmy

    J1Mmy Старожил Пользователь

    Баллы:
    103
    Лови файл во вложениях) вроде прозрачность выдает.
     

    Вложения:

    • skin.txt
      Размер файла:
      2,2 КБ
      Просмотров:
      17
    UnlimNET нравится это.
  6. Автор темы
    UnlimNET

    UnlimNET Активный участник Пользователь

    Баллы:
    88
    Пасибо, сейчас гляну[DOUBLEPOST=1375772499,1375772234][/DOUBLEPOST]
    Елки палки, ты спаситель мой! Спасибо! Все работает как надо!!!!
     

Поделиться этой страницей