Joachim: Abfrage installierte Schriften

Hallo!

Mit JavaScript kann man ja zB den Browser des Benutzers abfragen.

Weiß jemand von Euch ob man auch abfragen kann, welche Schriften installiert sind?

Hintergrund: Ich will auf einer Website chinesische Zeichen verwenden (als Graphik geht nicht!) und würde diese gerne "ausblenden", wenn der Benutzer nicht ohnehin Chinesisch installiert hat (um ihm die Installation zu ersparen, was unerfahrene Benutzer abschrecken dürfte).

Würde mich über Tipps freuen!

Joachim

  1. Hi,

    Mit JavaScript kann man ja zB den Browser des Benutzers abfragen.

    nö. Man kann abfragen, was der Browser _behauptet_ zu sein.

    Weiß jemand von Euch ob man auch abfragen kann, welche Schriften installiert sind?

    Ja: Nein.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Schade. Danke für die Info!

  2. Mahlzeit Joachim,

    Mit JavaScript kann man ja zB den Browser des Benutzers abfragen.

    Das mag sein, diese Angabe ist aber in keinster Weise zuverlässig, da ggf. vom Benutzer in seinen Browsereinstellungen manipulierbar.

    Weiß jemand von Euch ob man auch abfragen kann, welche Schriften installiert sind?

    Das in einem vernünftigen Browser laufende Javascript darf nicht auf irgendwelche Systemeigenschaften zugreifen (z.B. Zwischenablage, Dateisystem, installierte Schriften). Ein Browser, der das zuließe, würde von mir mit extremster Nichtachtung bedacht.

    Hintergrund: Ich will auf einer Website chinesische Zeichen verwenden (als Graphik geht nicht!) und würde diese gerne "ausblenden", wenn der Benutzer nicht ohnehin Chinesisch installiert hat (um ihm die Installation zu ersparen, was unerfahrene Benutzer abschrecken dürfte).

    Würde mich über Tipps freuen!

    Alternativ kannst Du abfragen, ob der Browser des Benutzers Chinesisch als Sprache akzeptiert (auch diese Information kann vom Benutzer beeinflusst werden). Wenn ja, könntest Du die Schriftzeichen einblenden, wenn nicht lässt Du sie weg.

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. Hi,

      Das mag sein, diese Angabe ist aber in keinster Weise zuverlässig, da ggf. vom Benutzer in seinen Browsereinstellungen manipulierbar.

      Das möchte ich sehen!

      Und komm mir jetzt nicht mit der "Arme-Programmierer-Abfrage" des User-Agents!

      Gruß, Cybaer

      --
      Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
      (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
      1. Mahlzeit Cybaer,

        Das mag sein, diese Angabe ist aber in keinster Weise zuverlässig, da ggf. vom Benutzer in seinen Browsereinstellungen manipulierbar.

        Das möchte ich sehen!

        Aber gern doch ...

        Und komm mir jetzt nicht mit der "Arme-Programmierer-Abfrage" des User-Agents!

        Wieso nicht? Ich bin jetzt einfach mal davon ausgegangen, dass Joachim genau das meinte.

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
        1. Hi,

          Aber gern doch ...

          Sorry, aber wer sich bei JS zwcks Browsererkennung auf den UA stützt, der hat den Schuß nicht gehört ...

          navigator hat so viele schöne Eigenschaften (inkl. appName, product & vendor). Wenn Du *die* ändern kannst, dann meld dich wieder. =;-)

          Wieso nicht?

          Weil der UA ja bekanntermaßen beliebig ist, und man bei JS (anders als z.B. PHP) nicht auf ihn angewisen ist.

          Ich bin jetzt einfach mal davon ausgegangen, dass Joachim genau das meinte.

          Hoffentlich nicht (s.o.).

          Gruß, Cybaer

          --
          Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
          (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
          1. Hallo zusammen!

            Vielen Dank für die zahlreichen Ansätze zur Lösung.

            Sorry, aber wer sich bei JS zwcks Browsererkennung auf den UA stützt, der hat den Schuß nicht gehört ...

            navigator hat so viele schöne Eigenschaften (inkl. appName, product & vendor). Wenn Du *die* ändern kannst, dann meld dich wieder. =;-)

            Ja, genau so eine Abfrage (ob der Browser Chinesisch als Sprache akzeptiert) meinte ich. Das muß auch nicht 100% zuverlässig oder manipulationssicher sein: Wie gesagt geht es mir nur darum, unerfahreren Benutzern zu helfen - wer die Einstellungen manipulieren kann, dürfte auch an einer Sprachinstallation nicht scheitern;)

            Kann mir jemand bitte noch verraten, wie diese Abfrage funktioniert.

            Dank und Gruß

            Joachim

            1. @@Joachim:

              Ja, genau so eine Abfrage (ob der Browser Chinesisch als Sprache akzeptiert) meinte ich. […]
              Kann mir jemand bitte noch verraten, wie diese Abfrage funktioniert.

              Nicht.

              Live long and prosper,
              Gunnar

              --
              Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
          2. Mahlzeit Cybaer,

            Aber gern doch ...

            Sorry, aber wer sich bei JS zwcks Browsererkennung auf den UA stützt, der hat den Schuß nicht gehört ...

            Mein Reden.

            Ich bin jetzt einfach mal davon ausgegangen, dass Joachim genau das meinte.

            Hoffentlich nicht (s.o.).

            MIR ist das schon klar, aber Joachims ursprünglicher Frage habe ich entnommen, dass er auf genau diese Weise den Browser "bestimmen" will.

            MfG,
            EKKi

            --
            sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
            1. Hi,

              MIR ist das schon klar, aber Joachims ursprünglicher Frage habe ich entnommen, dass er auf genau diese Weise den Browser "bestimmen" will.

              ? Man kann via JS auch den Browser "bestimmen". Ganz ohne UA.

              Soweit, so gut.

              Die folgende Frage war, ob man dann auch mit JS ermitteln kann, ob der Browser das chin. Schriftenpaket installiert hat. Und das geht eben nicht (jedenfalls nicht direkt).

              Also so oder so: der UA hat hier nichts zu suchen.

              Gruß, Cybaer

              --
              Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
              (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
    2. @@EKKi:

      Alternativ kannst Du abfragen, ob der Browser des Benutzers Chinesisch als Sprache akzeptiert

      Das möchte ich sehen!

      Live long and prosper,
      Gunnar

      --
      Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.
      1. Mahlzeit Gunnar Bittersmann,

        Alternativ kannst Du abfragen, ob der Browser des Benutzers Chinesisch als Sprache akzeptiert

        Das möchte ich sehen!

        Hm, geht das nicht? Ich hätte jetzt gedacht, dass man mittels Javascript (zur Not mit XMLHTTPRequests da dran kommt - Javascript ist doch so toll und kann alles ... ;-)

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
        1. Hi,

          Hm, geht das nicht?

          Header mit JS abgreifen? Doch, natürlich.

          Ich hätte jetzt gedacht, dass man mittels Javascript (zur Not mit XMLHTTPRequests da dran kommt

          Via XMLHttpRequest kommst Du auch an die Header. Aber natürlich die Response-Header dieses Requests, nicht an die Request-Headers von jemand ganz anderem (vom Browser beim Aufruf einer Seite z.B.). Und wie die eigenen Request-Header aussehen, weiß JS auch: man muß sie ja auch in JS erzeugen ... :)

          Gruß, Cybaer

          --
          Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
          (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
  3. Hallo Joachim,

    Weiß jemand von Euch ob man auch abfragen kann, welche Schriften installiert sind?

    Mit Flash soll dies möglich sein. Ich betrachte dies als Sicherheitslücke.
    Siehe: </archiv/2007/5/t152912/#m994956>.

    Freundliche Grüße

    Vinzenz

  4. Vieleicht kommst du per Trick an dein Ziel.

    Nutze die Möglichkeit, dass ein chin. Text bei installiertem chin. Zeichensatz (vermutlich) breiter ist als ohne (da kommen doch Fragezeichen?)

    Schreibe also chin. Text in eine verborgene (margin-left:-2000px) Tabelle und die entspr. Zahl Fragezeichen in eine andere. Die Breite der beiden Tabellen kannst du abfragen. Wenn unterschiedlich, ist wohl der chin. Zeichensatz installiert.

    Kalle

    1. Hi,

      Nutze die Möglichkeit, dass ein chin. Text bei installiertem chin. Zeichensatz (vermutlich) breiter ist als ohne (da kommen doch Fragezeichen?)

      Jep. Und ich vermute mal, daß es auch bei den chinesischen Zeichen welche unterschiedlicher Breite, sowie unproportionale Fonts dafür gibt.

      Also das Zeichen für vielleicht "Haus", wird ggf. eine andere Breite haben, als vielleicht "Quelle".

      Gruß, Cybaer

      --
      Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
      (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)