Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как можно сделать опред-ю область прозрачной ? сделать опр-ю фигуру прозрачной 
:(
    Опции темы
numerovan
Дата 21.11.2009, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2



Здравствуйте, хочу задать вопрос такой : КАК СДЕЛАТЬ НА КАРТИНКЕ ОПРЕДЕЛЁННУЮ ОБЛАСТЬ ПРОЗРАЧНОЙ ? Допустим я на картинке по середине ресую круг, этот круг я хочу сделать прозначным, не влияя на другие цвета. Картинка выводится как png.

В итоге хочу получить картинку с закруглёнными углами.

Это сообщение отредактировал(а) numerovan - 21.11.2009, 12:03
PM MAIL   Вверх
gta4kv
Дата 21.11.2009, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 8
Всего: 91



PM MAIL   Вверх
numerovan
Дата 21.11.2009, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2



Так не получается как Вы мне дали ответ , в этом случае , скажем так , рисуется круг , допустим красного цвета, а после ставим его прозрачность и в итоге получается прозрачный красный красный круг , примерно розового цвета.
Привиду наглядный пример :
http://pic.ipicture.ru/uploads/091121/GYbYRj5Z4J.jpg

PM MAIL   Вверх
gta4kv
Дата 21.11.2009, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 8
Всего: 91



что то не так?
PM MAIL   Вверх
numerovan
Дата 22.11.2009, 01:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2



Я правильно понимаю что функция imagecolorallocatealpha ( resource $image , int $red , int $green , int $blue , int $alpha ) создаёт определённый цвет с возможностью альфа для этого цвета ? 

Если я этот круг , нарисованный мной на картинке , помещу на изображение , то не получится "отверстия" , получится что на картинке появился круг , допустим красный , со степенью прозрачности , допустим в 0.5 , а отверстия ведь на картинке не будет ! ... Вот и вопрос КАК СДЕЛАТЬ ОТВЕРСТИЕ НА КАРТИНКЕ, Т.Е. ПРОДЫРЯВИТЬ ЕГО, не влияя на другие цвета на картинке ?

Можно сделать , как я узнал , чтоб на картинке определённый цвет стал прозрачным, но это не дело , потому что картинки разные могут быть и соответственно цвета тоже, так что такой вариант не пойдёт ... 
PM MAIL   Вверх
Ипатьев
Дата 22.11.2009, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: нет
Всего: 37



непонятно, при чем тут РНР
потренируйтесь сначала в графическом редакторе.
узнайте, чего вы хотите
и только после этого переносите реализацию на РНР

Это сообщение отредактировал(а) Ипатьев - 22.11.2009, 12:37
PM MAIL   Вверх
gta4kv
Дата 22.11.2009, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 8
Всего: 91



numerovan, выставите полную прозрачность.
т.е $alpha = 127.

upd
http://www.picamatic.com/show/2009/11/22/0...500_660x667.png
разве что-то не верно?

Это сообщение отредактировал(а) gta4kv - 22.11.2009, 14:15
PM MAIL   Вверх
numerovan
Дата 22.11.2009, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2




Цитата

непонятно, при чем тут РНР

на php пишу проект, что тут не понятного ?

С цветом получается сделать , а с картинкой нет . Нужно на картинке сделать "дырку",  выложу свой скрипт:
Код

header("Content-type: image/png");

$src  = imagecreatefromjpeg($_REQUEST['f']); // тут приходит картинка, которую нужно обработать

$im2 = imagecreatefrompng("img/new_img/borderForPhoto.png"); // это рамка для фото, накладыватеся сверху для красоты.

$w_src = imagesx($src); 
$h_src = imagesy($src);

$cube = 150;
$dest = imagecreatetruecolor($cube,$cube);

if($h_src < $w_src){
    imagecopyresampled($dest, $src, 0, 0, round($w_src/2 - $h_src/2), 0, $cube, $cube, $h_src, $h_src); 
}
elseif($h_src == $w_src){
    imagecopyresampled($dest, $src, 0, 0, 0, 0, $cube, $cube, $w_src, $h_src); 
}
else{
    imagecopyresampled($dest, $src, 0, 0, 0, round($h_src/2 - $w_src/2), $cube, $cube, $w_src, $w_src); 
}

$alpha = imagecolorallocatealpha($dest, 0, 0, 0, 127); 
imagefilledrectangle( $dest, 25, 25, 75, 75, $alpha); // квадрата не видно, т.к. уровень 127, если 60 поставить, то видно что он чёрного цвета и то что он прозначен на половину ... НУЖНА ДЫРКА.

imagecopy ($dest, $im2, 0, 0, 0, 0, 150, 150); // рамку соединяю с пришедшей картинкой.

imagesavealpha($dest, true);
imagepng($dest);
imagedestroy($dest); 
imagedestroy($src);
imagedestroy($im2);

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Графика | Следующая тема »


 




[ Время генерации скрипта: 0.0446 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.