RSS-лента

Лучшие CMS интернета бесплатно для создания сайта

Янв
22

Изображения wordpress с водяным знаком — Watermark.

Всем привет сегодня я расскажу, как сделать на своем блоге WordPress изображения с водяным знаком — Watermark. Лично я не  использую водяные знаки на блоге, даже если это уникальные изображения, которые нарисовал сам. Однако многие веб-мастеры на фото-блогах (и не только) не чувствуют себя защищенными, если их картинки не защищены, каким-нибудь опознавательным знаком подтверждающим, что данное изображение — это их творение и собственность.

В интернете вы можете найти множество различных систем защиты изображений, наносящие водяные знаки. Одной из таких систем является wordpress плагин Signature Watermark.

Плагин Signature Watermark.

При помощи этого плагина для WordPress, можно нанести на изображение водяной знак. Водяной знак — Watermark, может быть в виде осветленного изображения, текста, или комбинации изображения и текста. В функции плагина заложена возможность, добавить водяной знак ко всем изображениям, опубликованным в постах и на страницах,  или просто к миниатюрам — Thumbnail. При использовании картинок с водяными знаками, даже если у вас украдут изображение вы получите бесплатные ссылки на сайт.

водяной знак watermark

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

настройки watemark

Так же в качестве водяного знака плагин Signature Watermark позволяет использовать текст. Плагин предоставляет обширные настройки текста для водяного знака: плавающая ширина, прозрачность, цвет. Можно даже использовать свой шрифт, закачав его в папку шрифтов, которая находится в папке плагина.

настройки текста watemark

Этот плагин существует в двух видах — бесплатная и платная версия. Платная версия позволяет наносить водяной знак выборочно, менять положение водяного знака, более гибко настраивать прозрачность. Бесплатную версию плагина можно скачать у нас на сайте или в депозитарии wordpress.

 

Кроме, плагина  для реализации водяных знаков на изображениях можно воспользоваться PHP скриптом который добавляет на изображения заранее подготовленный Watermark на автомате.

PHP скрипт Watermark на автомате.

Самое интересное, что для добавления Watermark ко всем изображениям на сайте, можно воспользоваться специальным PHP скриптом. И в этом случае мы можем не использовать плагин для защиты изображений, который будет создавать дополнительную нагрузку на сервер сайта.  При этом, данное решение вполне применимо не только к wordpress, но и к другим CMS.

Итак, во первых, добавим в файл .htaccess следующие строки:

# enable watermark RewriteRule ^(.*)
wp-content/uploads/(.*(jpg|jpeg|gif|png))$
$1watermark.php?img=wp-content/uploads/$2

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

Кроме этого, необходимо положить в корень сайта файл с именем watermark.png. Это файл самого водяного знака, который будет наложен на основное изображение. Не делайте его размеры большими, иначе он будет перекрывать основное изображение. Так же, необходимо положить файл empty.png, который содержит 1 прозрачный пиксель и накладывается на маленькие изображения.

Далее, необходимо создать файл watermark.php со следующим содержимым и также положить его в корень сайта:

<?php
// получаем переданный в GET параметр

img  $img= $_GET['img'];

// задаем  минимальное разрешение, для которого не нужен большой водяной знак

// и на основании размера применяем соответствующий png-файл
$size = getimagesize($img);  if ($size[0]<100 || $size[1]<100 )
{$watermark = imagecreatefrompng('empty.png');}
else {

$watermark = imagecreatefrompng('watermark.png');}

$watermark_w = imagesx($watermark);
$watermark_h = imagesy($watermark); // обрабатываем
gif if(eregi('.gif',$img)) {

$image = imagecreatefromgif($img);
$size = getimagesize($img);
$dest_x = $size[0] - $watermark_w - 0;
$dest_y = $size[1] - $watermark_h - 0;
imagealphablending($watermark, true);
header('Content-type: mage/gif');
imagecopymerge

($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_w, $watermark_h, 50);
imagegif($image, "", 100);} // обрабатываем
jpeg elseif(eregi('.jpeg',$img)||eregi('.jpg',$img)){

$image = imagecreatefromjpeg($img);
$size = getimagesize($img);
$dest_x = $size[0] - $watermark_w - 0;
$dest_y = $size[1] - $watermark_h - 0;
imagealphablending($watermark, true);
header('content-type: image/jpeg');
imagecopy

($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_w, $watermark_h);
imagejpeg($image,"", 100);  } // обрабатываем png
elseif(eregi('.png',$img)) {
$image = imagecreatefrompng($img);
$size = getimagesize($img);
$dest_x = $size[0] - $watermark_w - 0;
$dest_y = $size[1] - $watermark_h - 0;
imagesavealpha($image, true);
imagealphablending($watermark, true);
header('Content-type: image/png');
imagecopy

($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_w, $watermark_h);
imagepng($image);  }

else {

exit("Изображение не имеет формат jpg, gif или png.");}

// освобождаем память
imagedestroy($image);
imagedestroy($watermark);  ?>

Вот и все спасибо за внимание.

Получай первым обновления блога!

Введите Ваш e-mail:

Оставить комментарий


вверх