robertroth: Font-Namen ermitteln

Liebe Mitdenker, liebe Wissende, liebe Neugierige,

fällt Euch eine Möglichkeite ein, wie man mittels PHP den Namen eines Fonts ermitteln kann? Die Namen der Fontdateien kann man ja ermitteln, aber das sind nicht die Namen, die manh bei "CSS::Font-Family: " angeben muss, damit der Browser diesen benutzt.

Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

Spirituelle Grüße
Euer Robert
robert.r@online.de

--
Möge der wahre Forumsgeist ewig leben!

akzeptierte Antworten

  1. Hallo,

    Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

    Ist das nicht eher eine Aufgabe für JS?

    Gruß
    Kalk

    1. Liebe Mitdenker, liebe Wissende, liebe Neugierige,

      Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

      Ist das nicht eher eine Aufgabe für JS?

      Wenn Du mir sagst, wie das mit JS gehen könnte, kann ich Dir die Frage vielleicht beantworten. :-)

      Ich such(t)e jedenfalls erst einmal eine Möglichkeit, den Namen des Fonts aus der Fontdatei zu ermitteln.

      Spirituelle Grüße
      Euer Robert
      robert.r@online.de

      --
      Möge der wahre Forumsgeist ewig leben!
  2. @@robertroth

    Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

    Dazu müsste der Browser die lokalen Sytemdateien durchsuchen. Ich glaube nicht, dass er die Rechte dafür hat. Oder haben sollte.

    LLAP

    --
    „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)
    1. Liebe Mitdenker, liebe Wissende, liebe Neugierige,

      Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

      Dazu müsste der Browser die lokalen Sytemdateien durchsuchen. Ich glaube nicht, dass er die Rechte dafür hat. Oder haben sollte.

      Das kann er genau dann, wenn ich das will. Ich habe ich auch keine Probleme, die Liste der Dateinamen für die Fonts zu erstellen oder die Dateien zu lesen. Ich habe nur ein Problem dabei, den Trivialnamen für den Font auszulesen. Diesen benötigt der Browser dann aber, wenn er den Font benutzen soll.

      Als Alternative kann ich mir die Fonts mit der GD-Lib-Funktion http://php.net/manual/de/function.imagettftext.php anzeigen lassen als Bilder. Diesen Umweg wollte ich mir aber ersparen.

      Spirituelle Grüße
      Euer Robert
      robert.r@online.de

      --
      Möge der wahre Forumsgeist ewig leben!
  3. Liebe Mitdenker, liebe Wissende, liebe Neugierige,

    fällt Euch eine Möglichkeite ein, wie man mittels PHP den Namen eines Fonts ermitteln kann? Die Namen der Fontdateien kann man ja ermitteln, aber das sind nicht die Namen, die manh bei "CSS::Font-Family: " angeben muss, damit der Browser diesen benutzt.

    Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

    Ich habe nach ca. dreistündiger Suche eine PHP-Klasse gefunden, die so einigermaßen gut funktioniert: http://stackoverflow.com/questions/5668901/php-how-to-read-title-of-font-from-ttf-file. Paar kleinere Fehlerchen habe ich schon fixed.

    Leider prüft sie während der Auswertung nicht das Dateiformat. Da fällt sie dann auf die Schnauze, wenn man ihr x-beliebige Files unterjubelt. Das sollte sie also noch beigebracht bekommen.

    Und ich habe noch Probleme, manche Fonts auszuwerten, z.B. Windings x, Webdings x, usw. Da weiß ich nicht, bei welchem Codepoint die wirklich anfangen. Wenn man "abc ABC 123" anzeigen lässt, wird das auch angezeigt und nicht die hübschen Bildchen, die in Textprogrammen oder im FontViewer kommen.

    Spirituelle Grüße
    Euer Robert
    robert.r@online.de

    --
    Möge der wahre Forumsgeist ewig leben!
  4. Hi,

    fällt Euch eine Möglichkeite ein, wie man mittels PHP

    Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

    Wie willst Du vom Server aus auf die lokalen Font-Dateien zugreifen können?

    Um die lokalen Font-Dateien serverseitig (mit PHP == serverseitig) untersuchen zu können, müßten diese erstmal über die Leitung zum Server.

    Dein Ziel ist mit PHP m.E. so gut wie gar nicht zu erreichen.

    cu,
    Andreas a/k/a MudGuard

    1. Liebe Mitdenker, liebe Wissende, liebe Neugierige,

      fällt Euch eine Möglichkeite ein, wie man mittels PHP

      Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

      Wie willst Du vom Server aus auf die lokalen Font-Dateien zugreifen können?

      Um die lokalen Font-Dateien serverseitig (mit PHP == serverseitig) untersuchen zu können, müßten diese erstmal über die Leitung zum Server.

      Dein Ziel ist mit PHP m.E. so gut wie gar nicht zu erreichen.

      Wieso? Klappt doch!
      Wieso sollte man mit PHP nicht auf das lokale Dateisystem des Servers zugreifen können?

      Mit dem Tool kannst Du dir nun für deine Webseite (die auf dem Server gehostet wird) die gewünschten Fonts aussuchen. Die werden mittels CSS::@font-face{} an den Client übertragen, und können dann dort (meistens) auch angezeigt werden.

      Und wenn Server, Browser und Fonts auf demselben Host laufen, geht es sogar direkt über CSS::font-family:.

      Wie schon gesagt, habe ich nur den Mechanismus mit den Start-Codepoints der Fonts (Bsp: Wingdings, Webdings, ...) noch nicht ganz begriffen.

      Spirituelle Grüße
      Euer Robert
      robert.r@online.de

      --
      Möge der wahre Forumsgeist ewig leben!
      1. Hallo,

        Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

        mit PHP auf das lokale Dateisystem des Servers zugreifen

        das hast du dann im Ursprungsposting zumindest verwirrend formuliert.

        Gruß
        Kalk

        1. Liebe Mitdenker, liebe Wissende, liebe Neugierige,

          Ziel: Anzeige von verfügbaren Fonts des lokalen Systems mittels Browser.

          mit PHP auf das lokale Dateisystem des Servers zugreifen

          das hast du dann im Ursprungsposting zumindest verwirrend formuliert.

          Finde ich überhaupt nicht!
          Wo stand da bitte, dass Browser und Server auf unterschiedlichen Hosts laufen?

          Wenn als Einwand gekommen wäre: "dann müssen aber entweder Server und Browser auf demselben Host laufen, oder aber dem Browser muss der Font zur Anzeige übermittelt werden", dann wäre es eine sinnvolle Ergänzung. Aber einfach zu schreiben (das übersetze ich jetzt mal frei, als Eauszug aus dem gesamten Thread): "das geht nicht", das ist mMn der falsche Weg.

          Außerdem war die Hauptaufgabe (Kurzfassung):
          "... für eine Fontdatei mit unbekanntem Trivialnamen diesen mittels PHP bestimmen."

          *     DD
            === D  D
          *     DD
          

          Spirituelle Grüße
          Euer Robert
          robert.r@online.de

          --
          Möge der wahre Forumsgeist ewig leben!