Forum Programmation.web downloadable font: rejected by sanitizer

Posté par  .
Étiquettes :
0
3
avr.
2012

Je m'amuse à embarquer des polices dans des pages web. Certaines fonctionnent (une ttf récupérée sur dafont.com par exemple) mais la ttf GNU Unifont ne passe pas… J'ai également converti des ttf en eot (à l'aide de mkeot sous Squeeze) et là, aucune ne passe. J'ai cherché sur le web mais je n'ai pas trouvé. Petite précision j'ouvre les pages web avec Firefox 11.0 sous Windows XP (pas taper ! Je suis au boulot)

Auriez-vous une idée ? Je comprends que Firefox refuse d'utiliser la font parce qu'il y a un risque mais je voudrais bien savoir plus en détail pourquoi.

  • # eot

    Posté par  (site web personnel) . Évalué à 2. Dernière modification le 03 avril 2012 à 11:17.

    Que firefox n'utilise pas les polices eot est normal : eot, c'est le format que seul internet explorer utilise. Firefox comprend ttf, otf et woff : http://www.webfonts.info/wiki/index.php?title=@font-face_browser_support

    • [^] # Re: eot

      Posté par  . Évalué à 2. Dernière modification le 03 avril 2012 à 11:30.

      Tout à fait. Mais ça n'explique pas pourquoi la GNU Unifont (pourtant pas un truc underground…), ttf, ne passe pas.

      En fait j'avais fait les eot pour que ça marche aussi sous IE8, m'enfin ça je m'en fous en fait…

  • # ttf

    Posté par  . Évalué à 1.

    Salut,

    Si c'est en TTF, ça devrait marcher…

    Est ce que tu as essayé avec d'autres navigateurs et est ce que ça a marché ?
    Est ce que ça ne viendrai pas du code CSS ?

    Sinon, peut être que ton serveur HTTP n'envoie pas les bons types MIME ? Ou peut être que le fichier est corronpu, tu as essayé de l'ouvrir avec un autre logiciel ?

    Envoyé depuis ma Debian avec Firefox

    • [^] # Re: ttf

      Posté par  . Évalué à 2.

      tu as essayé de l'ouvrir avec un autre logiciel ?

      Pas con ça j'essaierai.

      Est ce que ça ne viendrai pas du code CSS ?

      Je pense que non, le code reste le même, certaines polices passent d'autres non…

      peut être que ton serveur HTTP n'envoie pas les bons types MIME ?

      C'est du PHP, je ne suis pas sûr de comprendre type MIME ? Est-ce que par exemple le meta charset pourrait jouer ?

      • [^] # Re: ttf

        Posté par  . Évalué à 2.

        Non, je parle du type MIME envoyé au navigateur par le serveur lors du. téléchargement du fichier ttf:
        Si ce type MIME n'est pas le bon, le navigateur ne reconnaitra pas ce qu'il reçoit comme étant une police de caractères et ne l'affichera pas…

        Sinon, est ce que tu as essayé d'inspecter la page avec FireBug ?
        Il devrait t'afficher le CSS de ton élément et te permettre de voir si ce n'est pas un problème d'url relative à la feuille de style, ou si la propriété font-family n'est pas écrasée par une autre feuille ou autre …

        Envoyé depuis ma Debian avec Firefox

        • [^] # Re: ttf

          Posté par  . Évalué à 2. Dernière modification le 04 avril 2012 à 13:34.

          Voici déjà le message que j'ai dans la console web :

          [13:20:04,558] downloadable font: rejected by sanitizer (font-family: "unifont" style:normal weight:normal stretch:normal src index:0)
          source: https://10.163.14.117/fonts/unifont.ttf @ https://10.163.14.117/unicode.css

          Voilà mon unicode.css :

          @font-face {
                       font-family: unifont;
                       font-style: normal;
                       font-weight: normal;
                       src: url(fonts/unifont.eot?#iefix);
                       src: url(fonts/unifont.ttf);
                     }
          body {font-family: unifont, serif;}
          
          

          Ce code fonctionne bien avec une autre font (modulo le changement du nom et du chemin de la font).

          La commande file ne m'aide pas trop :

          root@box42:/var/www/fonts# file daniel.ttf unifont.ttf
          daniel.ttf:  TrueType font data
          unifont.ttf: TrueType font data
          
          

          (oui je sais, root toussa…)

          (daniel.ttf est celle qui marche, unifont.tff (GNU Unifont) celle qui ne fonctionne pas)

          Je pense pas que le MIME type envoyé par le serveur soit différent entre ces deux cas.

          Je vais essayé de trouver un programme pour ouvrir la police, vous en connaissez pas un que je puisse installer sur une Squeeze sans GUI ? Ou sous Windows XP si c'est un truc graphique…

          J'ai également collé la font dans le %WINDIR%/fonts (et rebooté), visiblement elle n'apparaît pas dans l'appli "Table de caractères" ou dans Word… (pas testé daniel.ttf cela dit)

          • [^] # Re: ttf

            Posté par  . Évalué à 2.

            Avec Opcion Font Viewer sous Windows XP la font GNU Unifont s'ouvre bien. C'est vraiment une énigme cette histoire.

          • [^] # Re: ttf

            Posté par  . Évalué à 0.

            Salut,

            Là, je reconnais que c'est vachement bizarre, en effet…
            J'aurais mis des guillemets autour du noms des polices, mais le validateur du w3c indique que le CSS est 100% valide …

            Sinon, pour le type MIME, je parlais de vérifier celui envoyé par le serveur (pas celui en local), CàD vérifier le contenu du header Content-Type envoyé par le serveur au client à l'aide de cURL, par exemple …

            Envoyé depuis ma Debian avec Firefox

            • [^] # Re: ttf

              Posté par  . Évalué à 2.

              J'avais installé la police GNU Unifont téléchargée sur le site officiel. Je viens d'essayer en installant le package fourni dans Squeeze, pareil. Je verrai demain, là je débauche \o/ …

              J'ai aussi testé fontlint (package fontforge). Il m'indique que la police daniel.ttf est pas valide (pourtant elle passe elle), pour unifont.ttf ça a mouliné pendant 10 bonnes minutes (en faisant swapper la machine) j'ai killé. (faut dire que la police unifont pèse 16 MB…)

              • [^] # out of mem0ry

                Posté par  . Évalué à 0.

                Apparement, d'après ceci, ça pourrait venir de ta police qui est trop grosse… il faut dire que 16MB, ça commence à peser :-)

                Envoyé depuis ma Debian avec Firefox

                • [^] # Re: out of mem0ry

                  Posté par  . Évalué à 2.

                  Je me suis fait cette réflexion il y a juste 5 minutes ! :)

                  C'est sûrement ça (déjà que même un text de 10 MB ça a du mal à passer). Merci pour le lien. Je testerai une police + petite.

  • # Conclusion

    Posté par  . Évalué à 2.

    Faut être un peu con pour embarquer une police de 16MB dans une page web !

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.