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

Seiten dynamisch mit PHP erstellen
Vielleicht kennen Sie dieses Problem: Sie möchten gerne eine Seite ohne Frames erstellen, wollen aber auch nicht bei jeder Änderung an der Navigation alle Seiten ändern. Nur mit HTML gibt es hier keine Lösung und nicht jeder Benutzer hat JavaScript im Browser aktiviert, stattdessen sollten Sie auf PHP zurückgreifen.
Eine MySQL-Tabelle über Links sortieren
Tabellen haben oft den Nachteil das diese nicht vom Benutzer sortiert werden können, dabei ist es eigentlich ganz einfach.
Dateibrowser
Ein einfacher Dateibrowser, ideal um PHP-Scripte auf einem lokalen Webserver zu testen, die PHP-Scripte müssen dann nicht mehr umständlich über die Adresszeile des Browsers aufgerufen werden.
Diese Schlagwörter könnten Sie interessieren:
Linkliste Hover-Effekt Metadaten Datenschutz-Hinweis Sprachumschaltung Zeitbalken Mehrfachauswahl CSS-Counter Zeichenkodierung Wasserzeichen Kommentar-Box Sitemaps-Protokoll Formulare Fotoalbum RSS Feed Zoom-Funktion Dynamische Seiten Veranstaltungsliste Webseitenschutz SQLite