» Texteffekte mit PHP: imagettftext mit Schatten

Online ShopNeuen Thread eröffnenNeue Antwort erstellenTexteffekte mit PHP: imagettftext mit Umrandung / Rand
AutorNachricht
Administrator 

Name: Marc
Geschlecht:
Anmeldedatum: 28.08.2004
Beiträge: 52423
Wohnort: Lohmar


Meine eBay-Auktionen:
19.11.2008, 16:39
zitieren

Hallo,

ich habe hier eine Funktion realisiert, die einen TrueType-Schriftzug mit einem Schatten ausstattet.

Hier die Funktion:
function imagettfshadow($im, $size, $angle, $x, $y, $font, $text, $width, $frcolor, $bgcolor=false, $degree=315) {
$frcolor =imagecolorsforindex($im, $frcolor);
// gradient
if ($bgcolor !== false) {
// trouble shooting
if ($width == 1) {
$width = 2;
}
$bgcolor =imagecolorsforindex($im, $bgcolor);
$steps = array(
'red' => ($frcolor['red'] - $bgcolor['red']) / ($width-1),
'green' => ($frcolor['green'] - $bgcolor['green']) / ($width-1),
'blue' => ($frcolor['blue'] - $bgcolor['blue']) / ($width-1)
);
}
else {
$bgcolor = $frcolor;
}
// display shadow
$cos = cos(deg2rad($degree));
$sin = sin(deg2rad($degree));
$x = $x + $width * $cos;
$y = $y - $width * $sin;
for ($i = 0; $i < $width; $i++) {
$x -= $cos;
$y += $sin;
imagettftext($im, $size, $angle, round($x), round($y), imagecolorallocate($im, $bgcolor['red'], $bgcolor['green'], $bgcolor['blue']), $font, $text);
$bgcolor = array(
'red' => $bgcolor['red'] + $steps['red'],
'green' => $bgcolor['green'] + $steps['green'],
'blue' => $bgcolor['blue'] + $steps['blue'],
);
}
}

Erklärungen dazu:
width = Breite des Textschatten in Pixeln
frcolor = Vordere Farbe, die am Schriftzug selbst beginnt
bgcolor = Hintere Farbe, in die die Vordere Farbe verläuft (optional)
degree = in welche Richtung der Schatten fallen soll (315 Grad = unten rechts ist Standard)

Beispiel:
// settings
$font = '../fonts/Tuffy.ttf';
$text = 'Programmierer-Forum.de';
// image
header("Content-type: image/gif");
$im = imagecreate(400, 50);
// colors
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
$grey = imagecolorallocate($im, 175, 175, 175);
// display text
imagettfshadow($im, 20, 0, 10, 30, $font, $text, 10, $grey, $white, 315);
imagettftext($im, 20, 0, 10, 30, $black, $font, $text);
// display image
imagegif($im);
imagedestroy($im);


 
schrift-ohne-schatten.gif
schrift-ohne-schatten.gif - Angeschaut: 8936 mal

 
schrift-mit-schatten.gif
schrift-mit-schatten.gif - Angeschaut: 8936 mal

 Illustration für Gradzahl und Richtung des Schattens

Polarkoordinaten.png
Polarkoordinaten.png - Angeschaut: 9019 mal

pn email
Gast 
19.11.2008, 16:39
zitieren

Mach mit!

Wenn Dir die Beiträge zum Thread "Texteffekte mit PHP: imagettftext mit Schatten" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:



Registrierte Mitglieder genießen die folgenden Vorteile:
✔ kostenlose Mitgliedschaft
keine Werbung
✔ direkter Austausch mit Gleichgesinnten
✔ neue Fragen stellen oder Diskussionen starten
✔ schnelle Hilfe bei Problemen
✔ Bilder und Videos hochladen
✔ und vieles mehr...


Neuen Thread eröffnenNeue Antwort erstellen
Ähnliche BeiträgeRe:
Letzter Beitrag
 Texteffekte mit PHP: imagettftext mit Umrandung / Rand
Hi, neben diesem Schatteneffekt: http://www.programmierer-forum.de/texteffekte-mit-php-imagettftext-mit-schatten-t80468.htm habe ich es jetzt noch geschafft einen Umrandungseffekt zu realisieren. Hier die Funktion: function...
[PHP]von mgutt
0
4.444
19.11.2008, 21:31
mgutt
 Texteffekte mit PHP: imagettftext mit Verlauf / Farbverlauf
Hallo, neben Schatten und Umrandung , konnte ich jetzt auch einen Farbverlauf realisieren. Einziger Haken im Moment ist, dass kein Antialias unterstützt wird. Ich musste Antialias ausschalten, damit die Schriftfarbe komplett entfernt werden...
[PHP]von mgutt
0
2.206
20.11.2008, 15:50
mgutt
 Schrifteffekte: Verlauf, Schatten & Umrandung im Einsatz
Hier ein Beispiel, wenn man die folgenden Effekte...
[PHP]von mgutt
0
1.077
20.11.2008, 16:00
mgutt
Vinca Minor Alba im Schatten (trocken!)
Moin Moin allerseits, ich bin gerade am Garten aufhübschen. UNter meinen Rosen habe ich noch eine ziemlich kahle Ecke, in die ich weiß blühende Vincas setzen möchte. DStandort ist schattig und der Boden relativ trocken. Allerdings stehen im gleichen...
von Petri1206
7
146
21.05.2012, 20:29
Berenike57
© 2004 - 2025 www.programmierer-forum.de | Communities | Impressum |