Zunächst einmal handelt es sich bei der Ausgabe nicht um Text, sondern um eine Pixelgraphik.
Wenn das samt dem (X)HTML drum herum per Skript automatisch erzeugt wird, ist das Skript offenbar mangelhaft, denn bei dem zur Einblendung verwendeten img-Element fehlt das alt-Attribut.
Ein sinnvoller Alternativtext für die Graphik wäre aber sicher angebracht, weil die Pixelgraphik ja die Anmutung von Text enthält. Zudem, wenn der Alternativtext ausgegeben würde, entsprechend dem, was ins Bild gemalt ist, könnte man ja erkennen, ob wenigstens im Alternativtext Umlaute dargestellt werden.
Ansonsten braucht der PHP-Programm-Teil, welcher solche Bilder mit reingemaltem Text fabriziert, für derartige Schriftarten eine Schriftartendatei - da sollte man nachgucken, ob die überhaupt Umlaute enthält. Zudem, was ebenfalls eine mögliche Ursache ist - könnte die Kodierung des dem PHP-Programm-Teil übergebenem Text falsch sein, was dann wiederum dazu führt, daß das Teil die Umlaute mit anderen Zeichen identifiziert, für welche wiederum im gewählten Zeichensatz kein Zeichen vorhanden ist, was dann eben mit dem ‘Notzeichen’ im gewählten Zeichensatz behandelt wird, hier also offenbar ein Quadrat.
Vor zig Jahren habe ich auch mal damit rumprobiert, in Pixelgraphik Text zu malen, kann mich dunkel daran erinnern, daß die Wahl der richtigen Kodierung ein kniffliger Punkt bei der GD-Bibliothek ist.
Wenn man wirklich Text in Graphik braucht, ist meist ohnehin SVG die bessere Wahl, nicht Pixelgraphik - bei SVG braucht man dann auch keine zusätzliche Bibliothek und das Kodierungsproblem ist schlimmstenfalls identisch mit dem bei (X)HTML-Dateien, hängt also nicht am PHP.
Tja so richtig ausführlich ist die PHP-Dokumentation nicht, daher konnte ich der auf die Schnelle nicht entnehmen, in welcher Kodierung man den Text in die Funktion imagettftext (die wird es hier wohl sein) reinstecken soll - oder wie man die Kodierung angibt. Kodierungsangaben für Text war noch nie so richtig intuitiv bei PHP-Funktionen ;o)
Es steht immerhin drin, daß man auch die üblichen numerischen Entitäten von XML verwenden
kann, es sollte also auf jeden Fall funktionieren, wenn man im Text Umlaute und ß-Ligatur etc durch
die Zeichenentität ersetzt und den so modifizierten Text ohne Sonderzeichen in die Funktion steckt.
Das hilft natürlich nur, wenn die Shriftart auch Glyphen für Umlaute enthält…