Zitat Zitat von .Mi
...mh, ah - *hoffnungsvollaufblickentu* - gar nicht mal so dumm, die idee. Ursprünglich sollte es sich schon um Text handeln, aber wenn nur die Überschriften in der Schriftart erscheinen ists auch gut - wahrscheinlich sogar besser, wenn ich überlege, was für Schriftarten ich verwenden will *g* (siehe mein posting im designforum)

sind die grafikfunktionen von php im laden schneller als eine normale grafik?
Joa. PHP bringt einige interessante Funktionen mit mit denen man dynamisch grafische Buttons generieren kann.
Die Sache ist nur die, dass wenige kostenlose Webspaceanbieter PHP's Grafikfunktionen anbieten.
Tatsächlich kann man damit den Prozessor stark belasten. Allerdings je nachdem was man PHP bzw. der GDLib so an Grafikarbeiten abverlangt.
Kleine Buttons fallen kaum auf. Beackerung von 1 MB großen PNG-Images mit Farbverlauffüllungen und Größenänderungen haut da schon mehr rein.

Um mit PHP einen Button zu erstellen mit einer dynamischen Beschriftung in einer selbst gewählten Schriftart, ist das zu tun:
Komplett dynamisch erzeugtes Bild mit variabler Breite:
PHP-Code:
<?php
// Zuerst etwas Definition
    
$family="/pfad/schriftart.ttf";
    
$text="Text";

// Initiiert den Bildoutput, sagt dem Browser das es ein png-Bild ist
// und sagt dem Browser das er das Bild nicht cachen soll.
    
header("Content-type: image/png");
    
header("Cache-Control: no-cache, must-revalidate");
    
header("Pragma: no-cache");
    
// Ermittelt den Platz den der Text einnehmen wird
    
$textsize=ImageTTFBBox(7,0,$family,$text);
// Erzeugt das Basisbild und weist ihm als Dimensionen die durch 
// ImageTTFBox() ermittelte Breite und Höhe zu plus etwas Rand 
    
$im=ImageCreate($textsize[4]+20,$textsize[3]+6);
// erste definierte Farbe ist Hintergrundfarbe des Gesamtbildes 
    
$red=ImageColorAllocate($im,255,0,0);
// auf ihr schreiben wir jetzt in Schwarz...
    
$black=ImageColorAllocate($im,0,0,0);
// unseren Text
    
ImageTTFText($im,7,0,10,3,$black,$family,$text); 
    
// und nun ab mit dem Bild an den Browser
    
ImagePNG($im);
// der Form halber zerstören wir, nach der Ausgabe des Bildes an den Browser, die Bildinstanz noch.
    
ImageDestroy($im);
?>
Hier noch eine Halb-dynamische Version mit der du einen Vorlagebutton in PHP's Grafikfunktionen reinlädtst um dort dann den Text draufzuschreiben:
PHP-Code:
<?php
// Zuerst wieder etwas Definition
    
$family="/pfad/schriftart.ttf";
    
$text="Text";
    
$vorlage="vorlage.png";

// Initiiert den Bildoutput, sagt dem Browser das es ein png-Bild ist
// und sagt dem Browser das er das Bild nicht cachen soll.
    
header("Content-type: image/png");
    
header("Cache-Control: no-cache, must-revalidate");
    
header("Pragma: no-cache");
    
// Ermittelt den Platz den der Text einnehmen wird
    
$textsize=ImageTTFBBox(7,0,$family,$text);
// Erzeugt das Basisbild aus dem Vorlagebild 
// die Bildinstanz erhält dann die Dimensionen des Vorlagebildes 
    
$im=ImageCreatefromPNG($vorlage);
// Etwas Schattentext gefällig? mit etwas Trixerei auch das möglich
    
$gray=ImageColorAllocate($im,170,170,170);
    
ImageTTFText($im,7,0,11,4,$gray,$family,$text)
// auf der Vorlage über dem Schatten schreiben wir jetzt in Schwarz...
    
$black=ImageColorAllocate($im,0,0,0);
// unseren Text
    
ImageTTFText($im,7,0,10,3,$black,$family,$text); 
    
// und nun ab mit dem Bild an den Browser
    
ImagePNG($im);
// der Form halber zerstören wir, nach der Ausgabe des Bildes an den Browser, die Bildinstanz noch.
    
ImageDestroy($im);
?>
Als Schriftart nimmst du einfach eine .ttf-Datei aus deinem fonts-Ordner deines Systems und lädtst es auf deinen Server hoch.

Das sind jetzt beides Basisversionen. Beide lassen sich natürlich noch ausbauen. So kann man bei der ersten Variante noch einen Farbverlauf basteln.
Siehe dazu:
http://www.chocwise.de/listen.phps
Bei der zweiten Variante könnte man den Text noch zentrieren auf der Vorlage, aber dazu sind noch einige zusätzliche Zeilen Code nötig.
Ich setze natürlich voraus, dass du dir die verwendeten Funktionen nochmal im PHP-Manual anschaust um sie zu verstehen.