News Xulfr

Passé et futur de SVG dans Gecko

mardi 7 juin 2005 à 11:11

Un document, écrit par les principaux contributeurs à l'implementation de SVG dans Gecko, dont Alex Fritze, retrace l'historique et le futur de l'implementation de SVG dans Gecko.

On apprend ainsi que les premières tentatives d'implémentation datent de 1999, par un contributeur externe. En 2000, des ingenieurs de Netscape ont aussi commencés à développer une autre solution. Cependant, ces deux essais n'étaient pas convaincants, et trés limités. Ce n'est qu'en 2001, qu'une troisième tentative fut finalement la bonne. La société Crocodile Clips s'interressait à cette époque à Mozilla pour la réalisation de ses logiciels, et avait besoin d'un support de SVG. Elle commença donc le developpement d'une implémentation de SVG. Et fin 2001, les 35000 lignes de codes du travail d'un de leur développeur, Alex Fritze, fut intégré dans le tronc cvs de Mozilla. Il y eu alors 2 générations successives de cette implémentation, qui ont conduits à des modifications de l'architecture de Gecko.

Le document précise ensuite l'état actuel du support de SVG, et des évolutions futures. Le principal objectif est un support complet de SVG 1.1. Une bonne partie est déjà fait mais il reste encore beaucoup de travail à faire, car les spécifications de SVG 1.1 sont énormes. Les développeurs prévoient comme on le sait, d'utiliser finalement la bibliothèque graphique Cairo, malgré son manque de performance actuel. Ils vont toutefois se concentrer sur les performances dans Gecko et d'autres problèmes.

Le document explique en effet un certain nombre de problème dans l'implémentation, comme l'utilisation de la balise <foreignObject>, les problèmes de performances et de cohabitations dans Gecko entre la partie du rendu "classique" HTML, XUL etc. et la partie du rendu SVG, qui, par nécéssité, ne suivent pas la même logique. Les développeurs ont mis aussi en lumière des conflits entre les spécifications de CSS et de SVG, et également des points floues dans les spécifications de SVG. Ils éspèrent alors, comme il est expliqué dans le document, que le futur SVG 1.2 corrigera ces problèmes.

Bien que le support de SVG 1.1 ne sera pas complet à 100%, Firefox 1.1 proposera tout de même comme on le sait, la possibilité de faire du SVG. Le document explique en effet que cela apportera un grand plus dans le développement des sites webs, de par les avantages par rapport aux solutions actuelles pour avoir des images vectoriels dans une page web (plugin flash ou svg, génération d'image coté serveur..) : accés au contenu via le DOM, meilleure intégration dans le document, relativement léger à télécharger, moins de charge pour le serveur etc.

Pour que ce support soit le meilleur possible, les auteurs du document demandent de l'aide : que vous soyez une entreprise utilisant SVG et interressé par le support de SVG, que vous soyez simple développeur ou utilisateur : testez et rapportez les problèmes rencontrés. Il y a aussi un besoin en ce qui concerne des tests unitaires : il faut en développer.

Pour en savoir plus, connaître les détails de cette historique et du futur de SVG dans Gecko, n'hésitez pas à lire ce document : http://lewis.compbio.ucsf.edu/scooter/svgopen2.html

Trackbacks

1. dimanche 12 juin 2005 à 04:15 de BlogZiNet

SVG dans Mozilla Gecko

Dans le cadre des Amis du lézard, MozillaZine-fr met en valeur l'article de XULfr Passé et futur de SVG dans Gecko. Rappelons que le SVG est un langage de description de graphiques 2D en XML du W3C qui admet trois types d'objets graphiques : des formes...

Les trackbacks pour ce billet sont fermés.

Commentaires

1. mercredi 8 juin 2005 à 15:52, par Bernard VALTON

bravo pour cette excellente synthèse du document.

Je l'ai lu également et j'en ai retenu qqs points qui me semblaient intéressants à rajouter :

  • a propos de cairo : elle a été retenue pour sa licence, son intérêt partagé par d'autres projets (gtk+ surtout), ses possibilités d'accélération hardware à venir, son portage sur toutes les plateformes et la possibilité de l'utiliser pour tout (HTML/XUL, canvas et SVG) . Ils espèrent bien ne pas être les seuls à travailler sur l'amélioration des performances de cairo.
  • a propos des specs SVG, ils ont soulevé des problèmes au niveau specs et n'ont pas de réaction suite à leur retour. Comme d'habitude, c'est donc certainement celui qui aura la plus grande part de marché ou la solution la plus logique ou utilisée qui fignolera le standard ...
  • je ne dirais pas qu'une bonne partie est faite, je dirais que presque tout est fait (il ne manque que l'animation déclarative, les filtres et les fonts SVG). Mais il semble que ce peu qui reste à faire demande beaucoup de boulot surtout sachant qu'ils sont très peu nombreux à travailler dessus.
  • sur SVG 1.2 : il semble que SVG étant très intéressant pour les prochaines génération d'IHMs de téléphones mobiles (avec des sociétés comme opera, access, openwave ...), ces industriels ne cherchent pas à intégrer SVG 1.2 à HTML mais plutôt à Xforms. Cela pose un problème dans le cas d'un navigateur Web qui doit supporter HTML et bien s'y intégrer, évidemment ...
  • une petite question : qq'un a un bon point d'entrée sur le tag <canvas>, ce qu'il fait, son implémentation dans firefox ...
  • pour conclure,je trouve que sortir une version même non complète de SVG 1.1 dans firefox 1.1 est une excellente idée et va donner envie à plein de gens de développer des nouveautés en SVG/XUL/HTML/... sur le navigateur à la mode que ya que lui qui le fait tellement c'est top ! Et comme le doc le dit, cela pourrait faire un effet d'entrainement vers plus de développeurs/testeurs ...

allez vivement FF 1.1 !

note : pour les commentateurs bavards comme moi, la fenêtre pour poster les commentaires est petite :(

2. dimanche 12 juin 2005 à 04:21, par Mozinet

Bernard

« note : pour les commentateurs bavards comme moi, la fenêtre pour poster les commentaires est petite »

Il existe une extension « Resizable Textarea » et un script pour Greasmonkey qui permettent tous deux d'agrandir les zones de texte dans Firefox.

Les commentaires pour ce billet sont fermés.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.