СКРИПТЫ
ТЕГИ:
php (285)
js (155)
html (135)
css (109)
html tags (61)
jquery (40)
edit text (37)
php array (30)
form html (30)
fonts (27)
ruweb.net (23)
foto (22)
online (20)
atom (20)
forum (19)
svg (18)
Показать еще :
hosting (17)
board (17)
js method (16)
html book (16)
php file (16)
color (15)
php date (15)
link (15)
js events (14)
input (14)
osclass (13)
table (13)
htaccess (13)
dw block (12)
path (12)
select (12)
php img (11)
form (11)
php time (11)
jsphp (11)
icon (11)
js delete (11)
download (11)
notepad (11)
mouse (10)
img (10)
url (10)
js time (9)
info (9)
yandex (9)
dosite (7)
hover (7)
cookie (7)
comment (7)
task (7)
php url (7)
js url (6)
mysql (6)
year (6)
click (6)
list (6)
iframe (6)
browser (5)
search (5)
ftp (5)
chart (5)
adminka (5)
php get (5)
value (5)
mb (5)
week (4)
console (4)
vk (4)
bbcode (4)
symbols (4)
js form (4)
js id (4)
mounth (4)
submit (4)
reg.ru (4)
scandir (3)
line (3)
pages (3)
https (3)
js post (3)
ucoz (3)
js img (3)
padding (3)
day (3)
captcha (3)
vs code (3)
ssl (3)
second (2)
cursor (2)
tag hr (2)
money (2)
рся (2)
height (2)
js vars (2)
title (2)
counter (2)
typeof (2)
details (2)
youtube (2)
video (2)
base64 (2)
seo (2)
qr kod (2)
arrows (2)
sitemap (2)
smile (1)
google (1)
windows (1)
archive (1)
domen (1)
numbers (1)
speed (1)
books (1)
scroll (1)
header (1)
days (1)

Ставим водяной знак на картинку php

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

А именно наложения прозрачного "водяного знака" на оригинальное изображение.

Очень подробно, пошаговая инструкция нанесения водяного значка php

  1. Описание как нанести водяной знак на изображение с помощью php
  2. Условие для установки водяного знака
  3. Создаем виртуальный водяной знак.
  4. Сохранение изображения с водяным знаком.
  5. Скрипт водяного знака
  6. Скачать можно здесь

  1. Описание как нанести водяной знак на изображение с помощью php

    Почему именно такой способ нанесения водяного знака!? Наложение прозрачного изображения на оригинальное ...

    Дело в том. что я попробовал использовать нанесение текста вместо картинки, но это оказалось таким проблематичным, что я на некоторое количество времени отказался вообще от водяного знака.

    Одна из главных проблем - это позиционирование водяного знака и сделать это со шрифтом - короче я "забодался"!

    В общем - я протестировал нанесение полупрозрачного изображения в виде водяного значка.

    Наш водяной знак будет стоять всегда "ПОСЕРЕДИНЕ" - если вам потребуется разобраться с позиционированием, то у нас есть страница на эту тему!

    Алгоритм создания водяного знака php/

    Создаем водяной знак из существующего изображения.

    Накладываем водяной знак уже на существующую картинку.

    Переписываем исходное изображение.

    Процесс наложения - создание водяного знака.

    У нас будет 4 изображения для наложения водяных знаков.

    Вам понадобится программа, которая сомжет делать полупрозрачное изображение - использовалась программа "Photoshop" в архив положу файл "psd" из которого делались ниже приведенные файлы. Вам потребуется изменить только разрешение исходника + собственный текст, и сохранить новое изображение в новом разрешении 4 раза, в названии файла вы видите какое разрешение файла:

    $watermark_src = $home . '/watermark/watermark_1300_307.png' ;

    $watermark_src = $home . '/watermark/watermark_1000_236.png' ;

    $watermark_src = $home . '/watermark/watermark_700_165.png' ;

    $watermark_src = $home . '/watermark/watermark_500_118.png' ;


  2. Условие для установки водяного знака

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

    путь до исходной картинки

    $img = $home . '/путь_до, картинки/оригинал.png' ;

    получаем размер картинки

    $size_img = getimagesize($img);

    ширина

    $width = $size_img[0];

    высота

    $height = $size_img[1];

    Создаем условие наложения определенного водяного знака если существующее изображение будет в пределах ширина больше "1350" и высота больше "400"

    if($width > 1350 and $height > 400)

    Тогда у нас будет загружаться определенный водяной знак. $home - путь до корневой
    Внимание! в архиве вместо такого пути применена константа __DIR__ - для примера и для данного случая - это самый удобный вариант(в том смысле, что путь до папки получается автоматически, где бы эта папка не находилась), если и картинки и скрипт находятся в одной папке.

    $watermark_src = $home . '/watermark/watermark_1300_307.png' ;

    Далее позиционирование...ставим посередине картинки(подробнее)

    $otstup_width = ($width - 1300)/2;
    $otstup_height = ($height/2) - (307/2);

    Создаем некую переменную, потом будем её использовать

    $do_watermark = 1;

    Собираем код(весь код не буду публиковать - очень длинный...(всё будет в архиве)):

    $img = $home . '/путь_до, картинки/оригинал.png' ; // путь до исходной картинки

    $size_img = getimagesize($img); // получаем размер картинки

    $width = $size_img[0]; // ширина

    $height = $size_img[1]; // высота


    if($width > 1350 and $height > 400)

    {

    $watermark_src = $home . '/watermark/watermark_1300_307.png' ;

    $otstup_width = ($width - 1300)/2;

    $otstup_height = ($height/2) - (307/2);

    $do_watermark = 1;

    }

    еще условия... много условий


  3. Создаем виртуальный водяной знак.

    Вот и пригодилась та переменная($do_watermark)), по условию её существования... получаем размеры водяного знака + создаем в переменную "$image" наш оригинал.

    if($do_watermark)

    {

    $sizeWM = getimagesize($watermark_src); // получаем размер водяного знака

    $watermark_width = $sizeWM[0]; // ширина водяного знака

    $watermark_height = $sizeWM[1]; // высота водяного знака

    //Создаёт новое изображение из файла или URL

    if($mime[1]=='jpeg')

    {

    $image = imagecreatefromjpeg($img);

    }

    еще условия... много условий

    }

    Далее также создаем в переменную водяной знак...

    $watermark = imagecreatefrompng($watermark_src);

    И накладываем два изображения друг на друга...

    imagecopy($image, $watermark, $otstup_width, $otstup_height , 0, 0, $watermark_width, $watermark_height);


  4. Сохранение изображения с водяным знаком.

    Далее нам остается перезаписать существующую картинку(по адресу $img) на эту же картинку, но только с водяным знаками "$image".

    if($mime[1]=='jpeg')

    {

    imagejpeg($image, $img, 100); // качество в 100%

    }

    еще условия... много условий

    Очищаем

    Уничтожение изображения

    imagedestroy() освобождает память, занятую изображением image.

    imagedestroy($image);

    imagedestroy($watermark);

  5. Скрипт водяного знака

    В общем... что я тут подумал...

    Описание не полное и разобраться, как в реальности это будет работать - не очень понятно - вернее вообще непонятно!

    Поэтому

    В архиве, готовый скрипт к применению!

    Бросаем в любую папку на сайте, кроме файла "psd".

    Скрипт водяного знака
    Скрипт водяного знака

    Открываем файл "test.php" в браузере, нажимаем "выбрать картинку", на которую будет наложен водяной знак. Чекбокс уже "чекнут", его не нужно трогать.

    Скрипт водяного знака
    Скрипт водяного знака

    После выбора картинки и нажатия кнопки "сохранить изменения", в папке(на сервере) появится новое изображение:

    Скрипт водяного знака
    Скрипт водяного знака

    Обращаю ваше внимание на путь - используется константа __DIR__ - если файл "test.php" со скриптом, либо сам скрипт будет находиться в другой папке, то путь до картинки с водяным знаком нужно прописывать вручную.

    Скрипт водяного знака
    Скрипт водяного знака

    Думаю с путями разберетесь самостоятельно! Там всего две позиции:

    Куда будет файл изначально сохраняться - $uploaddir.

    И второй путь до картинки с водяным знаком.

    Если вдруг загрузили не ту картинку, то вам может пригодиться замена картинки

Пользуйтесь на здоровье! Не забудьте сказать спасибо
Название скрипта :Водяной знак на картинку
Ссылка на скачивание : Все скрипты на одной странице
Теги :
водяной знак php
php наложение водяного знака
php водяной знак на картинку
watermark php
watermark через php
Еще никто не прокомментировал! COMMENTS+   BBcode
аватар
🞨
Загрузить свой аватар
(max ширина, высота = 200px)

Подписаться + =

Последние комментарии :
Марат :
28.04.2022 19:20
У меня на сайте - все скрипты рабочие! Приходите…
подробнее.
Игорь :
05.04.2022 03:52
Спасибо Большое Вам за счетчик скачиваний файлов! Вы единственный, кто выложил действительно рабочий код!…
подробнее.
Марат :
03.04.2022 11:16
Вы обратились не по адресу... Предположим... что у вас есть паравоз...на дровах... И вы обращаетесь в автосервис, …
подробнее.
Good_Serpent :
03.04.2022 08:18
Шара - "расшаренная", доступная для пользователей локальной сети папка. Там происходит обмен информацией,…
подробнее.
Марат :
02.04.2022 20:29
Я даже не знаю, что таоке "шара"... Думаю, что вам нужно искать на специализированном сайте посвященной…
подробнее.
Good_Serpent :
02.04.2022 19:54
Здравствуйте! Нужен скрипт, который бы закрывал файл на шаре, если он там открыт. Не удаётся его удалить для…
подробнее.
ruweb
Страница загружена за : 0.022158 секунд. Подробнее