www.Litecode.ru – Сборник рецептов для создания сайтов

Создание водяных знаков на фото

ГлавнаяPerl → Водяные знаки на фото

Работа профессиональных фотографов это всегда произведение искусства. И как правило, такие фото часто просто крадут у автора, выдавая за свои. И в силу этого, авторы вынуждены использовать «водяные знаки», на своих работах.

С помощью ImageMagick это очень легко и просто реализовать. В качестве водяного знака будем использовать прозрачный .png — файл, предварительно созданный в фотошопе или любой другой растровой или векторной утилите.
Например такой:

В качестве защищаемого фото используем это:

Чтобы свести два изображения в ImageMagick существует метод Composite.
Пример:

my $img = new Image::Magick;
my $layer = new Image::Magick;

my $err = $img->Read( '/абсолютный путь к исходному изображению/375x300.jpg' );
$err = $layer->Read( '/путь к водяному знаку/layer.png' );

$err = $img->Composite(image=>$layer,compose=>'Atop', x=>10, y=>20);

$err = $img->Write( '/путь к изображению после сведения/protected.jpg' );

Где image=>$layer — ссылка на объект с водяным знаком, compose=>'Atop' — способ сведения наложением сверху, x=>10, y=>20 — указание координат от верхнего левого угла изображения.

В итоге получаем: