- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Итак, проблема заключается в следующем:
Есть фото-исходник, на который программно накладывается watermark.
Суть в том, что в результате слетает цветовая гамма водяного знака (это картинка gif/png).
В аттаче поста - иллюстрация, как теряется цвет надписи.
Это неизбежный косяк GD или это косяк моего кода?
КОД в студию
КОД в студию
$from = imagecreatefromjpeg('image.jpg');$to = imagecreatetruecolor(500,300);
$cutx = (imagesx($from) - 500) / 2;
$cuty = (imagesy($from) - 300) / 2;
imagecopyresampled($to,$from,0,0,$cutx,$cuty,imagesx($to),imagesy($to),500,300);
$from2 = imagecreatefrompng('water.png');
imagecopyresampled($to,$from2,imagesx($to)-imagesx($from2),0,0,0,imagesx($from2),imagesy($from2),imagesx($from2),imagesy($from2));
imagejpeg($to,'1.jpg',100);
Смотрите цветовую гамму gif'а, скорее всего дело в ней.
так на вскидку не скажу, что делать...
дело в том, что нужно копировать и пересчитывать палитры, когда совмещаете изображения
смотрите в сторону функции и подобных
http://ua2.php.net/manual/ru/function.imagepalettecopy.php
Смотрите цветовую гамму gif'а, скорее всего дело в ней.
Причем тут gif'овая гамма, если в текущем примере png берем?
Проверил и на jpg - тупое пересохранение картинки через GD портит цвет шрифта.
$image = new Imagick($from);
$image->resizeImage(1000, false, Imagick::FILTER_LANCZOS, 1);
$width = $image->getImageWidth() - $watermark->getImageWidth();
$height = $image->getImageHeight() - $watermark->getImageHeight();
$image->compositeImage($watermark, $watermark->getImageCompose(), $width, $height, imagick::COLOR_ALPHA);
$image->writeImage($to);
попробуй нечто такое, может сканает))
ммм... я это... разницы между картинками не вижу :)
ммм... я это... разницы между картинками не вижу :)
на вотермарк посмотри
MOP1 добавил 07.04.2009 в 18:03
попробуй нечто такое, может сканает))
это же не ГД
MOP1, а кто сказал что мир на гд остановился? все давно юзают имагик :) гд это какбы утарело имхо)
так на вскидку не скажу, что делать...
дело в том, что нужно копировать и пересчитывать палитры, когда совмещаете изображения
смотрите в сторону функции и подобных
http://ua2.php.net/manual/ru/function.imagepalettecopy.php
Обе картинки - труколор, нету там палитр, если я не ошибаюсь.
bearman,
Пять баллов. Я пытаюсь разрулить проблему с GD, в ответ - кусок кода от мэджика. Я про него знаю, но на текущий момент меня интересует именно GD.