5171 sujets

Le Bar du forum

Bijour, bijour,

Je suis revenu un peu par hasard au WebFont suite à un message de Benjamin D.C (merci Benjamin) qui donnais un lien sur une page de plugin Safari, qui contenait un plugin pour tester les polices GoogleFonts sur une page, et donc retour sur les webfonts.

Et ça tombe bien, parce que j’étais en train de casser la tête avec un question de police, je n’arrivais pas à me décider entre Corbel, Trebuchet, Segoe UI, alors le message de Benjamin D.C est bien tombé

Je me pose une question pratique, si des gens savent comment ça se passe : dans @font-face, on peut donner plusieurs sources à une police. On peut avoir plusieurs “local”, et ça correspond à peut prêt à la liste des choix que l’on peut avoir avec font-family. Mais on peut avoir également plusieurs url, ça ne semble pas invalide d’après ce que j’en ai vu ici : La propriété @font-face (en)

Je me demandais comment ça se passe en pratique si on tente d’utiliser plusieurs url, par exemple en prévision du cas où un serveur est indisponible tout autant que pour tester localement sans être nécessairement connecté à internet.

Disons par exemple une url vers un serveur comme Google, suivi d’une url locale au site, en espérant que de cette manière, ça fonctionne à la fois localement, et à la fois en vrai en offrant par l’occasion une roue de secoure en cas de serveur injoignable ou indisponible.

Est-ce une pratique connue ? Y a-t-il des contre indications, des commentaires à ce sujet ?
Modifié par hibou57 (30 Jul 2010 - 13:50)
Bonjour,

Pourquoi pas, sauf que je me demande si la typo entière ne va pas être chargée deux fois, ce qui occasionnerait un alourdissement du temps de chargement du site (au moins la première fois)... A voir, je ne suis pas sûr de mon coup.
De toutes façon, 'faut proposer dans tous les cas une ou plusieurs typos "standards" en alternative à la typo chargée via @font-face, au cas où, donc bon..
Modifié par audrasjb (30 Jul 2010 - 14:12)
audrasjb a écrit :
Bonjour,

Pourquoi pas, sauf que je me demande si la typo entière ne va pas être chargée deux fois,

D’après la page dont le lien est donné dans le premier message, le navigateur ne doit en choisir qu’une.

a écrit :
This descriptor specifies the resource containing font data. It is required, whether the font is downloadable or locally installed. It's value is a prioritized, comma-separated list of external references or locally installed font face names. When a font is needed the user agent iterates over the set of references listed, using the first one it can successfully activate.


Donc voilà la question : est-il censé tenter de charger les deux en parallèle en s’arrêtant dès que l’une des deux est entièrement chargé (il peut charger en parallèle, si ce n’est pas sur le même domaine, ça c’est une question réseau), ou va t-il tenter la première dans la liste, et attendre qu’une certain time-out se doit passer (mais combien ?) avant de passer à la suivante ?

En même temps, je me doute bien que je dois sembler tordu de vouloir avoir deux source (la raison est donnée dans le premier message)

D’ailleurs, une question concernant le déterminisme est également posé dans le lien que je donne, même si ce n’est pas concernant la même question :

a écrit :
User agent implementors might consider it convenient to use downloaded fonts when rendering characters in other documents for which no other available font exists as part of the system font fallback procedure. This however leads to non-deterministic rendering patterns where the appearance of a page effectively becomes a function of browsing history.


Je vais quand-même ouvrir l’autre sujet sur les police que je voulais ouvrir. Je voulais poser la question ici, mais si je fais comme ça, ça va faire une salade.
Bonjour,

hibou57 a écrit :
Donc voilà la question : est-il censé tenter de charger les deux en parallèle en s’arrêtant dès que l’une des deux est entièrement chargé (il peut charger en parallèle, si ce n’est pas sur le même domaine, ça c’est une question réseau), ou va t-il tenter la première dans la liste, et attendre qu’une certain time-out se doit passer (mais combien ?) avant de passer à la suivante ?

Aucune idée pour ma part.

Moyens de répondre à cette question, dans l'ordre:
1. Lire la spec, pour voir si elle prévoit ce cas de figure (ce qui ne garantit pas des implémentations correctes, mais c'est un début).
2. Si c'est à la libre interprétation des agents utilisateur, faire quelques recherches (Google ou et/ou concurrents), de préférence en anglais, pour savoir si quelqu'un n'a pas déjà testé ce cas de figure et consigné ses découvertes.
3. Si pas d'informations détaillées et récentes disponibles, faire ses propres tests.

(La première étape c'est déjà fait apparemment, mais je la note tout de même pour être complet.)

Ce genre de recherches, c'est le prix à payer quand on veut faire quelque chose de peu conventionnel. Smiley cligne
Modifié par Florent V. (30 Jul 2010 - 22:57)