Вход Регистрация
ruen

Добавление водяных знаков на изображения или копирайт на фото при помощи PHP

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

watermark-images-php

Что такое водяной знак? Это знак, наносимый поверх картинки. Таким знаком может быть всё, что угодно – обычная текстовая фраза или свой логотип. Часто на изображения на своем сайте наносят адрес этого сайта или какого-либо имя.

Как добавить водяной знак на изображение? Способов есть несколько, например, можно использовать графические редакторы, специальные программы и т.д. Но для изображений на сайте проще всего использоваться скрипт на PHP для автоматического добавления копирайта на изображения.

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

Готовый скрипт для добавления копирайта на картинки:

function add_watermark() {
	// Задание водяного знака и папки с изображениями
	$watermark = 'Watermark';
	$directory = getcwd().'/images/';
	
	// Поиск изображений jpg и png в указанной папке
	$images = glob($directory.'/*.{jpg,png}', GLOB_BRACE);
	
	// Обработка каждого изображения
	foreach ($images as $image) {
		// Получение информации об изображении
		$data = getimagesize($image);
		
		// Координаты наносимого текста - примерно в центре изображения
		$width = $data[0];
		$height = $data[1];
		$x = ($width / 2) - 30;
		$y = ($height / 2) + 30;
		
		// Создание изображения из оригинального на основе его типа
		$mime = $data['mime'];			
		if ($mime == 'image/jpeg') {
			$type = 'jpeg';
			$i = imagecreatefromjpeg($image);
		} else if ($mime == 'image/png') {
			$type = 'png';
			$i = imagecreatefrompng($image);
			imagesavealpha($i, true);
		}
	
		// Задание цвета и шрифта для текста (файл со шрифтом можно скопировать, например, из ОС Windows)
		$grey = imagecolorallocate($i, 230, 230, 230);			
		$font = getcwd().'/fonts/verdana.ttf';		
		
		// Добавление водяного знака на изображение - текста
		imagettftext($i, 15, 45, $x, $y, $grey, $font, $watermark);
		
		// Перезапись оригинального изображения новым изображением со знаком
		// Сохранение в зависимости от типа - jpg или png
		$type == 'png' ? imagepng($i, $image) : imagejpeg($i, $image);
		
		// Уничтожение временного изображения в оперативной памяти
		imagedestroy($i);
	}
}

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

Например, можно сделать:

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

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

Комментарии (0)
Для комментирования войдите или зарегистрируйтесь.
Оставить заявку

Последние статьи

Популярные разделы

Eqsash (Инструменты)

Приложение для Android - VK LAST USER ID, отучитель от зависимости и т.д.:
Доступно в Google Play

Amessage (Общение)

Вход в веб-версию
Приложение для Android:
Доступно в Google Play

Поделиться

Подписаться

YouTube

Книги

IT-заметки - Простым языком о самом нужном (HTML, CSS, JavaScript, PHP, базы данных, Drupal, Битрикс, SEO, домены, безопасность и другое), PDF, 500 стр.