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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сделать прозрачными области на картинке, с некоторым цветом 
:(
    Опции темы
motorway
Дата 1.10.2009, 00:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Есть файл .jpg. Как сделать из него такой же, где некоторые области будут закрашены прозрачным цветом, т.е. например зеленым, желтым и красным, но чтобы под ними было все видно? Про области будет известно, какие у них координаты.

Это сообщение отредактировал(а) motorway - 1.10.2009, 00:31
PM MAIL   Вверх
Ипатьев
Дата 1.10.2009, 08:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Можно посмотреть на пример такого файла?
PM MAIL   Вверх
sTa1kEr
Дата 1.10.2009, 08:40 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


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

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



motorway, вас не смущает тот факт, что JPEG не поддерживает прозрачность?
PM MAIL   Вверх
motorway
Дата 2.10.2009, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Если не поддерживает, то есть если нет способа наложить на него такие области, то можно преобразовать его в другой формат, главное то, что исходник в таком формате. Пример файла - вот (что должно получиться)

Присоединённый файл ( Кол-во скачиваний: 16 )
Присоединённый файл  map.jpg 46,35 Kb
PM MAIL   Вверх
sTa1kEr
Дата 2.10.2009, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


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

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



Теперь ясно. Пример на ImageMagick:
Код

// Исходная картинка
$im = new Imagick('source.jpg');
$red = new ImagickPixel('#FF0000'); // Цвет прямоугольника

$draw = new ImagickDraw();
$draw->setStrokeColor($red); // Цвет для бордюра
$draw->setFillColor($red); // Цвет для заполнения
$draw->setFillOpacity(0.3); // Прозрачность
$draw->rectangle(30,40,200,200); // Координаты для прямоугольника

$im->drawImage($draw); 
$im->setImageFormat('jpeg');
$im->writeImage("./out.jpg");


Добавлено через 3 минуты и 10 секунд
Результат работы этого скрипта

Присоединённый файл ( Кол-во скачиваний: 21 )
Присоединённый файл  out.jpg 42,20 Kb
PM MAIL   Вверх
motorway
Дата 2.10.2009, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Спасибо за помощь, буду знать. Похоже, мой заказчик уже кому-то другому отдал эту работу.

Добавлено через 1 минуту и 11 секунд
А с помощью просто функций GD это возможно?
PM MAIL   Вверх
sTa1kEr
Дата 2.10.2009, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


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

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



Цитата(motorway @  2.10.2009,  16:58 Найти цитируемый пост)
А с помощью просто функций GD это возможно? 

Возможно.
http://php.net/imagefilledrectangle
http://php.net/imagecolorallocatealpha

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


 




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


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

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