Guten Tag,
ich sitze hier gerade an einem kleinen Problem:
Ich entwickle gerade ein Script, das folgendes tut:
- Der Benutzer (derzeit nur Windows) lädt eine Liste mit installierten Schriftarten hoch (dir /b %windir%\Fonts >> upload.txt).
- Das Script geht die hochgeladene Datei Zeile für Zeile durch und ersetzt ggf. "falsche" Schriftnamen (arialbi.ttf) anhand einer eigens zusammengestellten Datenbank durch "richtige" Schriftnamen (Arial Bold Italic).
- Die so zusammengestellte "Schriftenliste" wird geordnet (natcasesort) und in eine HTML-Datei umgewandelt (fwrite); das sieht dann ungefähr so aus:
$html .= "<span style=\"font-size:" . $size . "px;font-family:'" . $font . "'\">" . $text . "</span><br />\n";
(code will net)
$font ist die jeweilige Schriftart; welche das ist, hängt vom Benutzer ab. Jetzt habe ich das Problem, dass ich zwei Schriftarten habe, die da Probleme machen: "!Y2KBUG" und "Devil's Handshake". Ich habe leider keine Ahnung, wie ich die letztere ausgeben soll; natürlich könnte ich auch (nicht W3C-konform) die Anführungszeichen weglassen, das wiederum führt aber dazu, dass die Schriftart "!Y2KBUG" und alle nachfolgenden Schriftarten nicht mehr korrekt dargestellt werden können (vermutlich wegen des ! am Anfang).
Hat jemand eine praktikable Lösung dafür, oder muss mein Script ohne diese Schriftarten auskommen?
Danke im Voraus,
- Tuxman
P.S.:
Ich weiß, es gibt wahrlich schon genug (Desktop-)Programme, die Schriftarten anzeigen können und diese Probleme nicht haben; aber ich schreibe das Script auch eher aus Langeweile als aus praktischem Nutzen. Ich denke mal, das Problem könnte mir auch in einem "ernsthafteren" Projekt begegnen...