Schriftzug in Bild setzen mit gd

Hallo,

ich versuche einen Schriftzug schräg in ein vorhandenes Bild zu setzen
- ist auch kein Problem.
Allerdings passt die Schriftfarbe manchmal nicht zum Bild, also wollte
ich noch ein Rechteck unterlegen.
1. Möglichkeit: ein neues Bild, Rechteck zeichnen, Text rein, Bild
drehen und in das Hintergrundbild kopieren
2. Möglichkeit ins Hintergrundbild mit Linien ein gedrehtes Rechteck
zeichnen, Rechteck füllen (wie, weiß ich noch nicht) Text rein.

Gibt es da nicht etwas einfacheres wie schräges Rechteck in das
Hintergrundbild, dann den Text drüber?

--
Stephan
Stephan Dreisbach [ Mo, 29 Oktober 2007 17:48 ] [ ID #1857105 ]

Re: Schriftzug in Bild setzen mit gd

Stephan Dreisbach schrieb:

> 2. Möglichkeit ins Hintergrundbild mit Linien ein gedrehtes Rechteck
> zeichnen, Rechteck füllen (wie, weiß ich noch nicht) Text rein.

imagefill ()

> Gibt es da nicht etwas einfacheres wie schräges Rechteck in das
> Hintergrundbild, dann den Text drüber?

imagefilledpolygon ()

Wenn das Rechteck immer die gleiche Größe haben soll könntest Du auch
eins als seperate Graphik mit transparentem Hintergrund vorbereiten und
mit imagecopy auf das Bild setzen.
so [ Mi, 31 Oktober 2007 01:50 ] [ ID #1859267 ]

Re: Schriftzug in Bild setzen mit gd

Suat Özgür <so [at] instantgallery.de> schrieb:

>> Gibt es da nicht etwas einfacheres wie schräges Rechteck in das
>> Hintergrundbild, dann den Text drüber?
>
>imagefilledpolygon ()
>
>Wenn das Rechteck immer die gleiche Größe haben soll könntest Du auch
>eins als seperate Graphik mit transparentem Hintergrund vorbereiten und
>mit imagecopy auf das Bild setzen.

Die Rechteckgröße ist abhängig von der Textlänge. Es bleibt also
nichts anderes übrig, als die Textlänge festzustellen und mit
Winkelfunktionen das den Text zu unterlegende Rechteck zu berechnen?
Stephan Dreisbach [ Fr, 02 November 2007 18:35 ] [ ID #1861141 ]
PHP » de.comp.lang.php.misc » Schriftzug in Bild setzen mit gd

Vorheriges Thema: Speicherproblem
Nächstes Thema: Session oder Cookie oder ???