Сейчас: 04:40:34   24-го апреля 2024 г.
UsefulScript.ruСкриптыЗащита сайтаДобавление ватермарка
6
26

Добавление водяных знаков на изображения

Для защиты своих изображений от копирования рекомендуется использовать водяные знаки (ватермарки). Но наносить их вручную для каждого изображения не совсем правильно и быстро. Поэтому рекомендуем Вам воспользоваться нашим PHP кодом, позволяющим добавлять указанный водяной знак на изображение при его выводе на экран.


Ниже расположены два изображения, наглядно показывающие работу предлагаемого нами скрипта добавления водяных знаков:


Добавление водяных знаков

Добавление водяных знаков

Как видно на приведенных выше изображениях в правом нижнем углу стоит ватермарк с адресом нашего сайта - Ватермарк http://UsefulScript.ru.


Для добавления водяных знаков на изображения Вашего сайта Вам необходимо создать два файла: watermark.png - графический файл ватермарка и watermark_to_image.php - скрипт добавления ватермарка на указанные изображения.


В файл watermark_to_image.php поместите следующий PHP код добавления ватермарка:

PHP код:
<?php
$img 
$_GET['src'];
$watermark imagecreatefrompng('image/watermark.png');
$watermark_width imagesx($watermark);
$watermark_height imagesy($watermark);
$img_path $img;
if (
strstr($img_path'.jpg')) $img imagecreatefromjpeg($img_path);
elseif (
strstr($img_path'.png')) $img imagecreatefrompng($img_path);
if (
$img === false) { return false; }

$size getimagesize($img_path);
$dest_x $size[0] - $watermark_width 5;
$dest_y $size[1] - $watermark_height 5;

imagealphablending($imgtrue);
imagealphablending($watermarktrue);
imagecopy($img,$watermark,$dest_x,$dest_y,0,0,$watermark_width,$watermark_height);

if (
strstr($img_path'.jpg')) imagejpeg($img);
elseif (
strstr($img_path'.png')) imagepng($img);

imagedestroy($img);
imagedestroy($watermark);
?>

Обратите внимание, что данный код позволяет добавлять ватермарки только на изображения с расширениями jpg или png!


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

HTML код:
<img src="watermark_to_image.php?src=image.png" alt="">

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


Обращаем Ваше внимание на то, что водяные знаки к изображениям добавляются динамически (при каждом обращении к изображению) и, следовательно, нагрузка на сервер возрастает. При очень большом количестве изображений на сайте (галереи фотографий и т.д.) использование данного способа не рекомендуется.

Дата создания: 16:49:18 26.05.2012 г.
Посещений: 9525 раз(а).

Комментарии посетителей (5 шт.):
Артур
0
# 4122
(21:26:45  07.11.2017 г.)

Все работает. Но для этого watermark_to_image.php должен находиться в папке с изображениями. Можно ли сделать так, чтоб он лежал в другом месте и вызывался для любого изображения из любой подкатегории?
Ответить

Administrator
0
# 4123
(21:34:10  07.11.2017 г.)

Так укажите полный URL адрес к изображению в GET переменной, например:
<img src="watermark_to_image.php?src=http://usefulscript.ru/image/logo.png" alt="">
Ответить

Артур
0
# 4124
(23:58:41  07.11.2017 г.)

Не то немного. Нужно для любого изображения, на любой странице в любой директории чтоб работало подставлением watermark_to_image.php?src=, а сам watermark_to_image.php находился бы в одном месте.
Ответить

Артур
0
# 4127
(19:18:57  08.11.2017 г.)

По логике примерно такая форма помогла: <img src="../../watermark_to_image.php?src=<?php echo dirname($_SERVER['PHP_SELF']);?>/img.jpg" alt="">
Ответить

benkerrry
0
# 4273
(02:27:06  06.04.2018 г.)

У меня вопрос, а как сделать качество лучше?
Я так понимаю оно равно 80%.
Ответить

Закрыть
Ваше имя:
929 + 7 =
Добавить комментарий:
Ваше имя:
929 + 7 =

Перед публикацией все комментарии проходят обязательную модерацию!

Если Вы хотите задать какой-либо вопрос, то сделайте это на нашем форуме.
Таким образом, Вы сможете быстрее получить ответ на интересующий Вас вопрос.
Посетителей онлайн: 7

Какие темы необходимо добавлять на сайт?