Vers: Auslesen der Schriftgröße

Hi Leute!

Ich wollte mich mal erkundigen, ob es eine Möglichkeit gibt,

per JavaScript die aktuell eingestellte Schriftgröße des Browser auszulesen.

Danke im Voraus

  1. per JavaScript die aktuell eingestellte Schriftgröße des Browser auszulesen.

    Nein, ist nicht möglich. Du kannst sie aber als Näherung ermitteln

    Erzeuge ein Element mit Vorgabeschriftgröße und ermittle dessen Höhe - daraus kannst du in etwa die eingestellt schriftgröße ermitteln.

    Abweichungen entstehen natürlich durch Schriftart und Darstellung (wie etwa Kantenglättung).

    1. Nein, ist nicht möglich. Du kannst sie aber als Näherung ermitteln

      Erzeuge ein Element mit Vorgabeschriftgröße und ermittle dessen Höhe - daraus kannst du in etwa die eingestellt schriftgröße ermitteln.

      Abweichungen entstehen natürlich durch Schriftart und Darstellung (wie etwa Kantenglättung).

      Ok, kurz und knapp geht es darum:

      Ich habe in einem Dokument eine Zeilenmakierung, (ein PNG) das nach Pixeln positioniert wird. Dieses steht natürlich dann nicht mehr in der richtigen Zeile, wenn der Anwender z.B. die Schriftgröße von "mittel" auf "klein" oder "groß" umstellt.

      Kann ich das anzeigen einer bestimmten Schriftgröße erzwingen damit ich nicht alles ändern muss?

      1. Hi Vers,

        Kann ich das anzeigen einer bestimmten Schriftgröße erzwingen damit ich nicht alles ändern muss?

        Diesen Gedanken solltest du fallen lassen. Es gibt gute Gründe, warum man die Schriftgröße anpassen können sollte:

        • Sehbehinderung (erfordert evtl. größere Darstellung)
        • niedrige Auflösung auf z.B. Beamern & Mobilgeräten (erfordert evtl. kleinere Darstellung)

        Ich weise darauf hin, weil ich selbst ständig mit verkleinerten Seiten arbeite...

        Du solltest das PNG eher mittels html/css an die passende Position bringen.

        Gruß,
        Richard

      2. Kann ich das anzeigen einer bestimmten Schriftgröße erzwingen damit ich nicht alles ändern muss?

        Überhaupt nicht. Wenn die Zeilenmarkierung ein Linie unter jeder Zeile ist, kann das durch ein Inline-Element und border-bottom gelöst werden.

        Alternativ: rechne wie gesagt die Zeilenhöhe und positioniere damit deine Zeilenmarkierung. Du willst ja ohnehin nicht die Schriftgröße wissen sondern die Zeilenhöhe.

      3. Moin!

        Kann ich das anzeigen einer bestimmten Schriftgröße erzwingen damit ich nicht alles ändern muss?

        Klar. font-size:13px; Und fertig. Eine Größenskalierung, die der User dann vornimmt, sollte sich dann auch auf Grafiken auswirken, sofern der Browser nicht komplett unsinnig programmiert wurde.

        - Sven Rautenberg

        1. Eine Größenskalierung, die der User dann vornimmt, sollte sich dann auch auf Grafiken auswirken, sofern der Browser nicht komplett unsinnig programmiert wurde.

          In einem nicht komplett unsinig programmieten Browser kann ich mir aussuchen ob ich nur die Schrift oder alles skalieren will - z.B. Firefox 3.

        2. Klar. font-size:13px; Und fertig.

          Bei mir lässt es sich immernoch skalieren.

          1. Bei mir lässt es sich immernoch skalieren.

            Hast du meinen Post gelesen? :) Auch wenn Sven das gerne hätte, es ist schlichtweg nicht möglich irgendetwas im Client festzunageln.

            Auf die meisten Dinge hat der Benutzer (sofern er sich nicht ein Benutzer-CSS-File anlegt) ohnehin keinen Zugriff, darum ist es vernachlässigbar - aber die Schriftgröße verändern (egal was der Seitenautor eingestellt hat) kann so ziemlich jeder Browser - und verhindern kannst du das nicht.

        3. Klar. font-size:13px; Und fertig. Eine Größenskalierung, die der User dann vornimmt, sollte sich dann auch auf Grafiken auswirken, sofern der Browser nicht komplett unsinnig programmiert wurde.

          Bei mir wird die Schrift nicht skaliert, aber ich habe eine Mindestschriftgröße (14) angegeben. Und nun?

          --
          Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.
          Self-Code: sh:( ch:? rl:( br:> n4:( ie:{ mo:) va:) de:> zu:} fl:| ss:| ls:~ js:|
          1. Moin!

            Klar. font-size:13px; Und fertig. Eine Größenskalierung, die der User dann vornimmt, sollte sich dann auch auf Grafiken auswirken, sofern der Browser nicht komplett unsinnig programmiert wurde.

            Bei mir wird die Schrift nicht skaliert, aber ich habe eine Mindestschriftgröße (14) angegeben. Und nun?

            Mindestschriftgrößen über 13 sind verboten. ;-P

            Naja, offenbar ist das Problem doch nicht so trivial, wie es aussieht, sonst wären hier schon schönere Lösungen aufgekommen.

            - Sven Rautenberg

            1. Naja, offenbar ist das Problem doch nicht so trivial, wie es aussieht, sonst wären hier schon schönere Lösungen aufgekommen.

              Es ist relativ einfach

              https://forum.selfhtml.org/?t=188545&m=1255314

              Struppi.

  2. Hallo,

    Ich wollte mich mal erkundigen, ob es eine Möglichkeit gibt,

    per JavaScript die aktuell eingestellte Schriftgröße des Browser auszulesen.

    beim I.Explorer ist das über eine Abfrage von Styleeigenschaften recht gut möglich, und erlaubt bei Verwendung von Pixel als Einheit der Schriftgrößen eine Anpassung für älteren IEs. Opera verhält sich halbwegs "kompatibel", berücksichtigt aber nicht eine womöglich geänderte Ansicht bzw. "Zoom".

    Grüsse

    Cyx23

  3. per JavaScript die aktuell eingestellte Schriftgröße des Browser auszulesen.

    Nicht direkt, aber indirekt:

    function em_px() {  
    var node = document.createElement('span');  
    node.style.padding = node.style.margin = 0;  
    node.style.border = 'none';  
    node.style.position = 'absolute';  
    node.style.width = '1em';  
    document.body.appendChild(node);  
    alert(node.offsetWidth);  
    }  
    window.onload = em_px;  
    
    

    Gibt bei mir 16.

    Struppi.

    1. per JavaScript die aktuell eingestellte Schriftgröße des Browser auszulesen.

      Nicht direkt, aber indirekt:

      Sagte ich auch bereits.

      Gibt bei mir 16.

      Wie siehts da in verschiedenen Browsern aus bei unterschiedlichen Schriften, Kantenglättung, Clear-Type, Hinting usw?

      1. Wie siehts da in verschiedenen Browsern aus bei unterschiedlichen Schriften, Kantenglättung, Clear-Type, Hinting usw?

        Ich hab's jetzt nur im Fx, IE (7) und Safari getestet, die alle unerschiedliche Einstellungen haben. Am System nehme ich jetzt dafür keine Änderungen vor. Dafür halte ich die Information für zu unwichtig.

        Struppi.