Перейти к публикации

Рекомендованные сообщения

Приветствую.

Нужна консультация. Решил сделать в модуле свой вотермарк. Все казалось бы работает, но есть неприятный момент. Хоть на картинке вотермарка нет фона, но он нагладывается с невидимым фоном. Пример наложенного вотермарка здесь

http://pixs.ru/showimage/300874538h_8378662_206710.jpg

Что я возможно забыл?

PS если нужен код - то предоставлю.

Спасибо.

Ссылка на сообщение
Поделиться на других сайтах

Аналогичная проблема с гиф изображениями, на них вот также криво накладывается. Приходится сперва пересохранить в джепег

Ссылка на сообщение
Поделиться на других сайтах

Не нашел ничего поиском.

С гифами всегда проблема, и тут проблема не в дле или каком либо движке, просто php это не фотошоп и там много не сделать, gif это по сути архив, поэтому наложение на него вотрмарка не всегда получается.

Изменено пользователем spam
Ссылка на сообщение
Поделиться на других сайтах

Да у меня не с гивами проблема, а со всеми форматами... вот последовательность...

function create_watermark($main_img_obj, $watermark_img_obj, $alpha_level = 100) {

	$watermark_width = imagesx ( $watermark_img_obj );

	$watermark_height = imagesy ( $watermark_img_obj );


	$dest_x = @imagesx ( $main_img_obj ) - $watermark_width - 5;

	$dest_y = @imagesy ( $main_img_obj ) - $watermark_height - 5;

	@imagecopymerge ( $main_img_obj, $watermark_img_obj, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, $alpha_level );


	return $main_img_obj;

}


function MakeWatermark($movefile) {

	global $images_path, $config;

	$fileinfo = getimagesize ( $movefile );


	$water = imagecreatefrompng ( ROOT_DIR . '/templates/' . $config ['skin'] . '/dleimages/watermark_dark.png' );


	// для jpeg формата

	if (strstr ( $fileinfo ['mime'], 'jpeg' ) or strstr ( $fileinfo ['mime'], 'jpg' )) {

		$img = imagecreatefromjpeg ( $movefile );

		$im = create_watermark ( $img, $water, 90 );

		imagejpeg ( $im, $movefile );

	}

	// для gif - формата

	if (strstr ( $fileinfo ['mime'], 'gif' )) {

		$img = imagecreatefromgif ( $movefile );

		$im = create_watermark ( $img, $water, 90 );

		imagegif ( $im, $movefile );

	}


	// для png - формата

	if (strstr ( $fileinfo ['mime'], 'png' )) {

		$img = imagecreatefrompng ( $movefile );

		$im = create_watermark ( $img, $water, 90 );

		imagepng ( $im, $movefile );

	}


}

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...