Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Рисование линейного градиента с прозрачностью

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
DelphinPRO
Отправлено: 24 Июля, 2012 - 13:34:16
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Возникла необходимость нарисовать линейный градиент от прозрачного к непрозрачному цвету. Допустим от полностью прозрачного до белого непрозрачного.
Раньше с GD работать не приходилось, поэтому немного потерялся в обилии функций.
Может кто-нибудь подсказать куда копать? А за пример реализации - безмерная благодарность Улыбка


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
armancho7777777 Супермодератор
Отправлено: 24 Июля, 2012 - 13:37:51
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




PHP:
скопировать код в буфер обмена
  1.  
  2. $image_width = 600;
  3. $image_height = 300;
  4. $r = 255;
  5. $g = 0;
  6. $b = 0;
  7.  
  8. $image  = imagecreatetruecolor($image_width, $image_height);  
  9. $color = imagecolorallocatealpha($image, 255, 255, 255, 127);
  10. imagesavealpha($image, true);
  11. imagefill($image, 0, 0, $color);
  12.  
  13. $alfa = 127;
  14. for($i = 0; $i < $image_height; $i++)  
  15. {  
  16.         if(($i + 1) % floor($image_height / 127) == 0)
  17.         $alfa = ($alfa - 1 >= 0) ? $alfa - 1 : 0;
  18.        
  19.         $color = imagecolorallocatealpha($image, $r, $g, $b, $alfa);
  20.         imageline($image, 0, $i, $image_width, $i, $color);
  21. }  
  22.  
  23. header('Content-type: image/png');  
  24. ImagePNG($image);  
  25. imagedestroy($image);
  26.  

(Отредактировано автором: 24 Июля, 2012 - 17:35:10)

 
 Top
DelphinPRO
Отправлено: 24 Июля, 2012 - 13:46:03
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




не совсем то. это рисует простой градиент , без прозрачности.
но попробую поковырять, может что выйдет


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
armancho7777777 Супермодератор
Отправлено: 24 Июля, 2012 - 13:50:24
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Я подправил код выше.
Теперь то, что Вам надо))

(Отредактировано автором: 24 Июля, 2012 - 15:27:10)

 
 Top
DelphinPRO
Отправлено: 24 Июля, 2012 - 15:24:52
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Благодарю Улыбка
то что нужно
повернуть на 90 градусов, наверное сам смогу )


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
armancho7777777 Супермодератор
Отправлено: 24 Июля, 2012 - 15:26:45
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Не за что)
DelphinPRO пишет:
повернуть на 90 градусов, наверное сам смогу )

Думаю да)

(Отредактировано автором: 24 Июля, 2012 - 21:44:38)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Графика в PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB