:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte
Unternehmen im
Anbieterverzeichnis von SELFPHP
:: SELFPHP Forum ::
Fragen rund um die Themen PHP? In über
120.000 Beiträgen finden Sie sicher die passende
Antwort!
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
:: Qozido ::
Die Bilderverwaltung mit Logbuch für
Taucher und Schnorchler.
|
|
Rahmen um Vorschaubilder setzen |
Beispielaufgabe
Es sollen individuelle Rahmen erzeugt und um Vorschaubilder gesetzt werden.
Beschreibung
Einfache Rahmen um Vorschaubilder zu setzen ist mit PHP nicht schwer, allerdings wenn individuelle Rahmen erzeugt werden sollen, so wird der Aufwand sehr schnell beträchtlich.
Natürlich verlangt keiner immer alles mit PHP zu bewältigen und zum Glück gibt es auch andere und sehr effektive Lösungswege. In diesem Code-Snippet zeigen wir Ihnen, wie Sie bereits fertige Rahmen, die in Photoshop erstellt wurden, über bereits vorhandene Vorschaubilder plazieren können.
Der Trick daran ist: Die in Photoshop erstellten Rahmen werden schon mit einer Transparenz ausgestattet und als PNG-Bild abgespeichert. Im Anschluss müssen nachher beide Bilder nur noch mit PHP verbunden bzw. übereinander gelegt werden.
Hier haben wir Ihnen auch ein kleines Photoshop-Tutorial incl. Photoshop-Datei bereit gestellt.
Zum Photoshop Tutorial
Das eigentliche Skript ist fast selbsterklärend. Wir speichern lediglich mit imagesavealpha() die Alpha-Channel Information und kopieren den Rahmen über unser Vorschaubild. Wichtig ist nur, dass das fertige Bild als PNG-Datei ausgegeben oder abgespeichert wird.
Sie können das folgende Skript einfach erweitern, damit es z.B. auch Vorschaubilder aus gößeren Bildern erzeugen kann.
Wie Vorschaubilder erstellt werden können, finden Sie in unserem Skript-Bereich:
Vorschaubilder erstellen
<?PHP
function imageborder ($image1, $image2, $width, $height) {
$im_a = @imagecreatefrompng($image2);
$im_b = @imagecreatefrompng($image1);
imageSaveAlpha($im_b, true);
imagecopy($im_b, $im_a, 0, 0, 0, 0, $width, $height);
header("Content-type: image/png");
imagepng($im_b);
}
$image1 = 'bild.png';
$image2 = 'rahmen/fotorahmen-2.png';
$width = 250;
$height = 160;
imageborder ($image1, $image2, $width, $height);
?>
|
Die Ausgabe ist verblüffend, wenn man sich überlegt, dass der Aufwand in Photoshop nur ca. 2 Minuten und in PHP ca. 15 Minuten war.
Damit Sie auch direkt dieses Snippet testen können, finden Sie hier schon einige fertige Rahmen und zusätzlich eine Photoshop-Datei mit allen Ebenen um Rahmen erstellen zu können.
Zip-Datei (Rahmen) downloaden
Ausgabebeispiel: Browseransicht
|
|
|
|
|
|