Flavius Kehr: Pixelbreite bei Arial-Schriftart

Hallo!
Ich skripte gerade an einem System, dass einen Verzeichnisinhalt mit Hilfe der GD-Library als Bild darstellt. Hierzu hab ich ein vordefiniertes Bild und will die Dateinamen (also z.B. index.html) in das Bild einfügen. Das funktioniert soweit ganz gut, aber der Text soll wenn möglich rechtsbündig dargestellt werden.

Ich kann zwar über imagettftext() Text ohne Weiteres einfügen, muß aber  die Pixelangaben für X und Y absolut angeben. Jetzt die Frage: Gibt es eine Möglichkeit, die Breite eines definierten Textes in Pixeln zu bestimmen, um so die X- und Y-Angaben relativ machen zu können?

Ich verwende als Schriftart arial.ttf und bitte um Antwort!

Gruß und schonmal Danke!
Flavius Kehr

  1. Ich kann zwar über imagettftext() Text ohne Weiteres einfügen, muß aber  die Pixelangaben für X und Y absolut angeben. Jetzt die Frage: Gibt es eine Möglichkeit, die Breite eines definierten Textes in Pixeln zu bestimmen, um so die X- und Y-Angaben relativ machen zu können?

    Die absoluten Koordinaten kannst Du mit Hilfe der Funktion imagettfbbox(int size, int angle, string fontfile, string text) berechnen. Sie gibt ein Array mit den Eck-Koordinaten der Schrift zurück. Damit kannst Du die Breite des Texts berechnen und daraus auf die X-Position schließen, sodass der Text rechtsbündig erscheint.

    Gruß,
    wacker