Bilder mit Wasserzeichen markieren

JPEG-Bilder (oder andere Grafikformate) können mit einem transparenten Wasserzeichen markiert werden; Mit Hilfe eines kleinen PHP-Scripts.

Transparenten Text hinzufügen

Ohne Wasserzeichen Wasserzeichen Mit Wasserzeichen
(c) bla bla
<img src="bild.jpg">
Text
<img src="wasserzeichen.php?
bild=
bild.jpg">

QuelltextKopierenAusblendenZeilen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
// Bild mit Wasserzeichen markieren (JPEG-Bilder)
// Transparenten Text hinzufügen

if (isset($_GET["bild"])) {
 if (
file_exists($_GET["bild"])) {
  
$bild $_GET["bild"];

  
$text "(c) bla bla";
  
$farbe "#00FF7F"// Bsp: #00FF7F
  
$size 5// Schriftgröße 1 - 5
  
$transparenz 25// Tranzparenz: 0 - 100 (0 = keine Transp.)

  
$bildInfo getImageSize($bild);
  
$bildKopie imageCreateFromJPEG($bild);
  
sscanf($farbe"#%2x%2x%2x"$r$g$b);
  
$color imageColorAllocateAlpha($bildKopie$r$g$b$transparenz);
  
imageString($bildKopie$size5, ($bildInfo[1] - 18), $text$color);

  
// Header möglichst an das Ende des Scripts setzen!
  
header("Content-type: image/jpeg");
  
imageJPEG($bildKopie);
  
imageDestroy($bildKopie);
 }
}
?>

Transparentes Bild hinzufügen

Ohne Wasserzeichen Wasserzeichen Mit Wasserzeichen
<img src="bild.jpg">
logo.png
<img src="wasserzeichen.php?
bild=
bild.jpg">

QuelltextKopierenAusblendenZeilen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
// Bild mit Wasserzeichen markieren (JPEG-Bilder)
// Transparentes Bild (Logo) hinzufügen

if (isset($_GET["bild"])) {
 if (
file_exists($_GET["bild"])) {
  
$bild $_GET["bild"];

  
$logo "logo.png";
  
$transparenz 65// Tranzparenz: 0 - 100 (0 = keine Transp.)

  
$wasserzeichen imageCreateFromPNG($logo);
  
$wz_breite imageSx($wasserzeichen);
  
$wz_hoehe imageSy($wasserzeichen);
  
$bildKopie imageCreateTruecolor($wz_breite$wz_hoehe);
  
$bildKopie imageCreateFromJPEG($bild);
  
$bildKopie_size getImageSize($bild);
  
$x $bildKopie_size[0] - $wz_breite 10;
  
$y $bildKopie_size[1] - $wz_hoehe 2;
  
imageCopyMerge($bildKopie$wasserzeichen$x$y00$wz_breite$wz_hoehe$transparenz);

  
header("Content-type: image/jpeg");
  
imageJPEG($bildKopie);
  
imageDestroy($bildKopie);
 }
}
?>

Transparenten Text und eine andere Schriftart

Ohne Wasserzeichen Wasserzeichen Mit Wasserzeichen
Mein Logo
<img src="bild.jpg">
Text
<img src="wasserzeichen.php?
bild=
bild.jpg">

QuelltextKopierenAusblendenZeilen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
// Bild mit Wasserzeichen markieren (JPEG-Bilder)
// Transparenten Text und Schriftart hinzufügen

if (isset($_GET["bild"])) {
 if (
file_exists($_GET["bild"])) {
  
$bild $_GET["bild"];

  
$text "Mein Logo";
  
$farbe "#FFFFFF"// Bsp: #FFFFFF
  
$size 17// Schriftgröße
  
$transparenz 35// Tranzparenz: 0 - 100 (0 = keine Transp.)
  
$schriftart "FIFTYHV.TTF"// Pfad zur Schriftart (Dateityp: .ttf (TrueType-Font))

  
$bildInfo getImageSize($bild);
  
$bildKopie imageCreateFromJPEG($bild);
  
sscanf($farbe"#%2x%2x%2x"$r$g$b);
  
$color imageColorAllocateAlpha($bildKopie$r$g$b$transparenz);
  
imageTTFtext($bildKopie$size015, ($bildInfo[1] - 10), $color$schriftart$text);

  
header("Content-type: image/jpeg");
  
imageJPEG($bildKopie);
  
imageDestroy($bildKopie);
 }
}
?>

Tipps

Mit dem PHPMailer E-Mails sicher versenden
Damit E-Mails sicher beim Empfänger ankommen und nicht irgendwo anders landen (Spamordner) oder sogar vom Provider abgelehnt werden nutzt man am besten eine fertige Mailer-Klasse wie den „PHPMailer”.
Mit PHP schreiben und lesen
Hier möchte ich an Beispielen zeigen, wie eine .txt-Datei mit PHP erstellt wird und wie diese ausgelesen werden kann.
Mit PHP zeichnen - Eine Grafik mit PHP erstellen
Mit den Grafikfunktionen können Sie zur Laufzeit des PHP-Scripts auch Grafiken erzeugen.
Diese Schlagwörter könnten Sie interessieren:
Counter Berechnungen Mimetypen localStorage Veranstaltungsliste Zeitansage Quelltext Dateibrowser Audio-Player RSS Feed Linkliste MySQL Favicon Seitenformatierung Event-Kalender Kommentar-Box SQLite PHP-Fehlermeldungen Silbentrennung Hover-Effekt