![]() |
|
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]()
|
|
| voidman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 21.11.2007 Репутация: нет Всего: нет |
Здравствуйте!
Помогите, пожалуйста, решить задачу. Есть любое изображение. Нужно сделать из него прозрачный PNG средствами ГД. То есть - задаю значение 40% и на выходе уже прозрачная картинка. Все попытки увенчались провалом. Вот мой "неудачный" код:
Результат: изображение выходит "псевдопрозрачным". То есть, "мое прозрачное изображение наложено на серый фон", а не полностью прозрачно. Оргомное спасибо за помощь! |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 3 Всего: 260 |
небось, смотришь через IE, который без танцев с бубном не понимает полупрозрачные PNG? |
|||
|
||||
| voidman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 21.11.2007 Репутация: нет Всего: нет |
Да нет.
Смотрю через FF. Тестируемое изображение накладываю на "div" c клетчатым фоном как в фотошопе. Для полной уверенности - сохраняю изображние на диск и смотрю через фотошоп. Для теста пробовал просто вывести прозрачную подложку (давал ей 50% прозрачности) - на мой тестовый фон. Правильно выводилось полупрозрачное сероватое изображение. Но после миграции - проблема описанная выше. На картинке (все выведено через FireFox): А - исходное изображение B - то, что выходит у меня С - вывел картинку с прозрачностью, сделанную в фотошопе Присоединённый файл ( Кол-во скачиваний: 11 )
example.jpg 76,25 Kb |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 3 Всего: 260 |
может, давай полностью приведешь код - до момента сохранения в файл?
Добавлено через 2 минуты и 39 секунд *немного погадаю* а $this->img, который накладываешь - для него прозрачность используется? ну, эти savealhpa, alphablending вызывались? Добавлено через 6 минут и 36 секунд *угадывания продолжаются* не найду информацию о логике работы imagesavealpha - модифицирует ли функция ресурс графики или же только обрабаывает цветовую информацию... во втором случае потребовалось бы вызывать imagesavealpha не после открытия, а перед сохранением... Ну, во всяком случае - после imagecopymerge |
|||
|
||||
| voidman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 21.11.2007 Репутация: нет Всего: нет |
Ладно, не гадай
"Уменьшенная" но точная копия моего большого кода (работает аналогично):
Ее можно с уверенностью запускать и протестировать на localhoste ) Это сообщение отредактировал(а) voidman - 12.11.2008, 15:07 |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 3 Всего: 260 |
люди советуют использовать imagecopy. сходу у меня с imagecopymerge вопрос решить не удалось...
|
|||
|
||||
| voidman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 21.11.2007 Репутация: нет Всего: нет |
Уже решил эту проблему. Выкрутил код со старого срипта для построения отражения
Надеюсь, кто-то избавится от многочасовой головной боли (как я) Вот работающий код, позволяющий сделать изображение прозрачным на ХХ процентов:
skyboy, спасибо за участие! |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 3 Всего: 260 |
ну, вот. и твое "решение" отличается от "вопроса" отличается использованием imagecopy вместо imagecopymerge
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Графика | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |