/ Плагины / Watermark для изображений

Watermark для изображений

HIT

19.06.2016

1810

Добавляем водяной знак (Watermark) для изображений. Делается это для защиты авторских прав, дополнительного упоминания сайта, либо логотипа.

Плагин Easy Watermark

Первым делом в настройках надо поставить галку в пункте Save original images to allow to restore them after watermark was applied. Тогда будет возможность восстановить изображения, иначе этой возможности не будет. Либо просто сделать backup

Идем в настройки и выставляем параметры которые нас интересуют. Если водяные знаки нужны только для изображений загружаемых в запись в разделе Типы записей надо оставить галку только в пункте Записи.

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

Можно сгенерировать watermark в ранее загруженных изображениях. Для этого надо перейти в подменю Медиафайлы > Easy Watermark и нажать Start.

Но после нажатия Start плагин добавить водяные знаки абсолютно ко всем изображениям сайта, а не только, например, к тем которые загружены для записи. т.е. лучше не использовать массовое добавление watermark

Данный плагин лучше начинать использовать вначале наполнения сайта.

Image Watermark

50 000 установок. Отличный плагин. Есть функции автоматического наложения ВЗ на изображения а также функция ручного массового наложения в медиабиблиотеке. Можно настраивать на какие размеры миниатюр и типы записей накладывать ВЗ. Все оригинальные изображения резервируются и и можно убрать водяной знак с любого изображения. Но если отключить плагин то изображения с ВЗ так и останутся с ними.

Хорошие настройки расположения водяного знака: позиционирование, смещение, масштаб, прозрачность. Можно установить только один ВЗ, заполнения нет.

Дополнения (13.10.2023):

  • Если установить соответствующую настройку то при отключении плагина удалятся и копии с ВЗ.
  • Отсутствует функция паттерна ВЗ, т.е. когда их несколько по изображению. Но это решается PNG-файлом с нанесенными логотипами. А масштабирование ВЗ нужно установить в зависимости от размера изображения.

Водяной знак без плагина

Данный метод будет формировать водяной знак на лету, при формировании страницы. Но при этом делает это довольно быстро.

В корневой директории сайта создаем папку watermark в нее помещаем два файла: изображение водяного знака — watermark.png (уже нужного размера, можно полупрозрачным) и файл watermark.php

Содержимое файла watermark.php, жирным отмечено в хронологии:

Выравнивание и отступы
Не применять данную функцию к изображениям меньше 500px по ширине, и по высоте

<?php 

waterMark($_SERVER['DOCUMENT_ROOT'].$_SERVER['REQUEST_URI'], "watermark.png", "bottom=20,right=15");

function waterMark($original, $watermark, $placement = 'bottom=5,right=5', $destination = null) {

	$original = urldecode($original);
	$info_o = @getImageSize($original);
	if (!$info_o)
	return false;
	$info_w = @getImageSize($watermark);
	if (!$info_w)
	return false;

	list ($vertical, $horizontal) = split(',', $placement,2);
	list($vertical, $sy) = split('=', trim($vertical),2);
	list($horizontal, $sx) = split('=', trim($horizontal),2);

	switch (trim($vertical)) {
		case 'bottom':
		$y = $info_o[1] - $info_w[1] - (int)$sy;
		break;
		case 'middle':
		$y = ceil($info_o[1]/2) - ceil($info_w[1]/2) + (int)$sy;
		break;
		default:
		$y = (int)$sy;
		break;
	}

	switch (trim($horizontal)) {
		case 'right':
		$x = $info_o[0] - $info_w[0] - (int)$sx;
		break;
		case 'center':
		$x = ceil($info_o[0]/2) - ceil($info_w[0]/2) + (int)$sx;
		break;
		default:
		$x = (int)$sx;
		break;
	}

	header("Content-Type: ".$info_o['mime']);

	$original = @imageCreateFromString(file_get_contents($original));
	$watermark = @imageCreateFromString(file_get_contents($watermark));
	$out = imageCreateTrueColor($info_o[0],$info_o[1]);

	imageCopy($out, $original, 0, 0, 0, 0, $info_o[0], $info_o[1]);
	if( ($info_o[0] > 500) && ($info_o[1] > 500) )	{
		imageCopy($out, $watermark, $x, $y, 0, 0, $info_w[0], $info_w[1]);
	}

	switch ($info_o[2]) {
		case 1:
		imageGIF($out, NULL, 100);
		break;
		case 2:
		imageJPEG($out, NULL, 100);
		break;
		case 3:
		imagePNG($out, NULL, 100);
		break;
	}

	imageDestroy($out);
	imageDestroy($original);
	imageDestroy($watermark);

	return true;
	
}

?>

В директорию к изображениям из которой требуется добавлять ВЗ (скорее всего папка uploads) добавляем файл .htaccess с кодом

<FilesMatch "\.(jpg|jpeg|JPG)$"> 
 RewriteEngine On 
 RewriteCond %{REQUEST_FILENAME} -f 
 RewriteRule ^(.*)$ /watermark/watermark.php [T=application/x-httpd-php,L,QSA] 
</FilesMatch>

Можно указать любые расширения изображений для добавления WM форматы — gif, png, jpg, JPG, jpeg и т.д.

Если в папке uploads содержатся изображения, которые используются в шаблонах сайта, то каждый раз при перезагрузке страницы эти изображения будут перезагружаться с добавлением ВЗ

Обзор плагинов по добавлению watermark для изображений Woocommerce.

Поделиться в соц. сетях:

  • Комментарии
  • Вложения

Добавить комментарий

Пока нет комментариев. Будь первым!

Watermark для изображений
Модификация Woocommerce
Рекомендации для васМодификация WoocommerceOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.