43 / 41 / 4
Регистрация: 10.03.2010
Сообщений: 196
1

php-gd-прозрачность изображения

23.06.2010, 17:25. Показов 12996. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
День добрый.
Подскажите пожалуйста, а то ломаю голову уже третий час. Можно ли полноцветное изображение сделать полупрозрачным?

Пример:
PHP
1
2
3
4
$im = imagecreatefromjpeg('source/bender.jpg');
// Здесь нужно что-то написать чтобы ресурс $im стал полупрозрачным
header('Content-type: image/png');
imagepng($im);
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.06.2010, 17:25
Ответы с готовыми решениями:

Как добавить прозрачность в картинку через PHP?
Здравствуйте! Есть у меня вот такая функция: function makeCornersForImage($image, $radius,...

Добавление изображения путем php не зная названия изображения
есть изображения в папке "images" как выложить все изображения на сайт не зная названия картинок,...

Прозрачность bmp изображения
Добрый день,можете дать информацию о прозрачности изображений в bmp файле,также необходима...

SDL2 BlitScaled и прозрачность - масштабирование изображения
Здравствуйте. Пару дней назад начал работать с SDL2, возникла некоторая проблема, никак не могу...

3
WEB-developer
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
23.06.2010, 19:25 2
ИМХО: с помощью javascript будет проще зделать...
0
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
24.06.2010, 00:51 3
Вот некоторые функции, которые предназначены для этих целей:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$im = imagecreatefromjpeg('source/bender.jpg');
$color = ImageColorAllocate( $im, 66, 33, 33 );
ImageColorTransparent( $im, $color );//Делает полностью прозрачным цвет, который указан в $color
//Следующая функция задает полупрозрачный цвет
//путем указания альфа-канала
//который может быть в диапазоне от 0( не прозрачный ) до 127( полностью прозрачный )
$alpha = 87;//Уровень прозрачности
$alphaColor = ImageColorAllocateAlpha( $im, 66, 33, 33, $alpha );
header('Content-type: image/png');
imagepng($im);
?>
2
43 / 41 / 4
Регистрация: 10.03.2010
Сообщений: 196
24.06.2010, 18:21  [ТС] 4
Цитата Сообщение от romchiksoad Посмотреть сообщение
Вот некоторые функции, которые предназначены для этих целей:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$im = imagecreatefromjpeg('source/bender.jpg');
$color = ImageColorAllocate( $im, 66, 33, 33 );
ImageColorTransparent( $im, $color );//Делает полностью прозрачным цвет, который указан в $color
//Следующая функция задает полупрозрачный цвет
//путем указания альфа-канала
//который может быть в диапазоне от 0( не прозрачный ) до 127( полностью прозрачный )
$alpha = 87;//Уровень прозрачности
$alphaColor = ImageColorAllocateAlpha( $im, 66, 33, 33, $alpha );
header('Content-type: image/png');
imagepng($im);
?>
Здесь всего один цвет меняет уровень прозрачности, а мне надо чтобы прозрачной была все изображение

Добавлено через 1 минуту
Цитата Сообщение от Nazz Посмотреть сообщение
ИМХО: с помощью javascript будет проще зделать...
Обработка должна быть только на стороне сервера.

Добавлено через 3 минуты
Вобщем-то кое-какой прогресс имеется. При помощи imagecopymerge можно скопировать изображение в полупрозрачном состоянии. Но тут еще один косячок. При создании изображения функцией imagecreatetruecolor изображение окрашивается в черный цвет. Как убрать этот черный цвет, чтобы вместо него была прозрачность?

Добавлено через 2 часа 6 минут
Всем спасибо за внимание получилось вот так:
PHP
1
2
3
4
5
6
7
$img = imagecreatetruecolor(880, 310);
$img2 = imagecreatefrompng("source/coffee.png");
imagesavealpha($img, true);
imagefill($img, 0, 0, imagecolorallocatealpha($img,0, 0, 0, 127));
imagecopyresampled($img, $img2, 0, 0, 0, 0, imagesx($img2), imagesy($img2), imagesy($img2), imagesx($img2));
header("Content-type: image/png");
imagepng($img);
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.06.2010, 18:21
Помогаю со студенческими работами здесь

Прозрачность одноцветного изображения пропорционально силе цвета
Приветствую всех! Задача - сделать иконку с белым фоном и прозрачным изображением. Дело в том...

Прозрачность изображения увеличивается с помощью TrackBar, но не уменьшается
Есть pictureBox, в котором нужно изменить прозрачность с помощью trackBar'а. Программа работает, но...

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

Убрать прозрачность изображения в указанном фрагменте картинки
Помогите разобраться с проблемой, указанной на картинке! Спасибо!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru