Page 1 sur 1
Inclusion SVG dans une page XHTML
Publié : 06 mai 2005, 15:45
par calimo
Suite à
cette discussion je me lance dans la fabrication d'une page "démo" de XHTML avec plein de choses dedans !
Donc je fais
une page xhtml, j'y mets du MathML... parfait ça marche ! Je rajoute du SVG et... ben ça marche pas évidemment vu que j'utilise la 1.0.3

Je prend donc une nightly pas trop vieille (elle doit dater du week-end dernier), et... je suis déçu
- Ça ne valide pas (pourtant j'ai bien un doctype avec SVG 1.1, et un namespace qui me semble ok)
- Et en plus il y a un énoooorme espace en dessous de la figure.
Quelqu'un a une idée de ce qui peut provoquer cette catastrophe ?

Re: Inclusion SVG dans une page XHTML
Publié : 06 mai 2005, 16:47
par Bobe
calimo a écrit :
Et en plus il y a un énoooorme espace en dessous de la figure.
Quelqu'un a une idée de ce qui peut provoquer cette catastrophe ?
Je ne sais pas mais ça fait pareil sous Opera 8.0
Publié : 06 mai 2005, 21:01
par PsyDk
Ça valide en préfixant le nom des éléments par le nom du namespace svg. L'attribut xmlns quant à lui posait problème aussi.
Code : Tout sélectionner
<svg:svg>
<svg:g fill-opacity="0.7" stroke="black" stroke-width="0.1cm">
<svg:circle cx="6cm" cy="2cm" r="100" fill="red" transform="translate(0,50)" />
<svg:circle cx="6cm" cy="2cm" r="100" fill="blue" transform="translate(70,150)"/>
<svg:circle cx="6cm" cy="2cm" r="100" fill="green" transform="translate(-70,150)"/>
</svg:g>
</svg:svg>
Concernant les raisons j'ai quelques idées mais rien de très solide pour l'instant. Je suis preneur pour une explication.
Publié : 06 mai 2005, 21:40
par calimo
C'est quand-même bizarre que ça marche pour le MathML mais pas pour le SVG... pourtant avec le même doctype
Et surtout je ne vois pas la raison... c'est parfaitement valide de mettre
Code : Tout sélectionner
<svg xmlns="http://www.w3.org/2000/svg">
<g fill-opacity="0.7" stroke="black" stroke-width="0.1cm">
<circle cx="6cm" cy="2cm" r="100" fill="red" transform="translate(0,50)" />
<circle cx="6cm" cy="2cm" r="100" fill="blue" transform="translate(70,150)"/>
<circle cx="6cm" cy="2cm" r="100" fill="green" transform="translate(-70,150)"/>
</g>
</svg>
Je me trompe ?
(Du moins d'un point de vue syntaxe XML...)
Publié : 07 mai 2005, 11:26
par golemboy
Bonjour,
il ya aussi un problème dans tes styles Modernes au niveau du menu
au passage de la souris, les sous menus s'affichent dans le menu. Il ya un problème aussi avec la licence CC qui empiete sur ton contenu
Publié : 18 mai 2005, 21:33
par calimo
Le sujet a été discuté sur le
forum d'alsacréations. Il en ressort que si on ne peut pas utiliser la syntaxe
Code : Tout sélectionner
<svg xmlns="http://www.w3.org/2000/svg">
<g fill-opacity="0.7" stroke="black" stroke-width="0.1cm">
<circle cx="6cm" cy="2cm" r="100" fill="red" transform="translate(0,50)" />
<circle cx="6cm" cy="2cm" r="100" fill="blue" transform="translate(70,150)"/>
<circle cx="6cm" cy="2cm" r="100" fill="green" transform="translate(-70,150)"/>
</g>
</svg>
c'est tout simplement en raison d'une limitation de la syntaxe des DOCTYPES qui ne permettent pas de gérer une collision de noms avec le SVG...
Donc...
supprimons le doctype ! C'est tout à fait correct d'un point de vue XML. Mais... du coup les entités non numériques ne sont plus définies

Et ça on peut pas le faire par les namespaces...
J'ai donc (toujours sur la même page) quand-même rajouté un doctype juste pour les entités qui ne dit rien des balises autorisées, juste les entités... eh ben ça ne marche pas (
toujours sur la même page). Quelqu'un saurait me dire pourquoi ?
J'en ai profité pour mettre à jour
la page XHTML.

Publié : 19 mai 2005, 08:51
par cemoi
j'ai testé avec ie d'ici il crois que c'est un liens pour télécharger la page xhtml!
mon ff dois etre trop vieux (10.01) je vois pas l'image svg...
en tous les cas waooouu! Moi qui cherche à ecrire des formules mathématique sur le net bé voila! La combinaison svg/xhtml m'interesse pas mal mais sacrément gérer...
Au passage j'ai déja tenté de me servire du svg et à chaque fois ça été laborieu et peu convaincant... faut dire que je ne fait que bricoler moi in

j'apprends tout sur le tas. Pour faire un site graphiqe svg est tres interesent encore faut t il que ça marche...illustrator gere le svg
Beau travail et bonne continuation ;o)
Publié : 19 mai 2005, 10:21
par bobo
Le chargement des fichiers externes dans la section DOCTYPE est interdite pour les fichiers du web, il me semble.
Publié : 19 mai 2005, 15:47
par calimo
cemoi a écrit :j'ai testé avec ie d'ici il crois que c'est un liens pour télécharger la page xhtml!
Est-il encore utile de rappeler que
IE ne supporte pas le XHTML ?
cemoi a écrit :mon ff dois etre trop vieux (10.01) je vois pas l'image svg...
10.01 ?

Tu as au moins 10 ans d'avance !
Cela dit si tu parles de la 1.0.1 effectivement, il y a des failles corrigées, on en est à la 1.0.4 ça vaut la peine d'avoir toujours un navigateur à jour
Cela dit le SVG c'est pour la 1.1. Tu peux déjà le voir dans Opera (pas le MathML). Le SVG est activé dans les nightlies de la 1.1 mais il faut encore l'activer avec une pref cachée
cemoi a écrit :Au passage j'ai déja tenté de me servire du svg et à chaque fois ça été laborieu et peu convaincant... faut dire que je ne fait que bricoler moi in

j'apprends tout sur le tas. Pour faire un site graphiqe svg est tres interesent encore faut t il que ça marche...illustrator gere le svg

Dans ce cas c'est 3 ronds touts bêtes
Pour le générer il y a des logiciels libres comme Sodipodi ou Inkscape
bobo a écrit :Le chargement des fichiers externes dans la section DOCTYPE est interdite pour les fichiers du web, il me semble.
Oh non ! C'est donc impossible ?
C'est vraiment nul si c'est ça. Il y a une raison ?
Publié : 19 mai 2005, 16:15
par Bobe
calimo a écrit :
Le SVG est activé dans les nightlies de la 1.1 mais il faut encore l'activer avec une pref cachée
C'est ok chez moi sans avoir de préférence à modifier (Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b2) Gecko/20050517 Firefox/1.0+).
calimo a écrit :
bobo a écrit :Le chargement des fichiers externes dans la section DOCTYPE est interdite pour les fichiers du web, il me semble.
Oh non ! C'est donc impossible ?
C'est vraiment nul si c'est ça. Il y a une raison ?
Au pire, tu récupères les fichiers *.ent qui définissent les entités dont tu as besoin et tu les met sur le même domaine que la page elle-même.
Publié : 19 mai 2005, 19:47
par calimo
Bon, j'ai donc mis ce doctype
Code : Tout sélectionner
<!DOCTYPE html SYSTEM "http://cui.unige.ch/~robin0/dtd/entites.dtd">
avec la dtd :
Code : Tout sélectionner
<!ENTITY mathml "http://www.w3.org/1998/Math/MathML">
<!ENTITY svg "http://www.w3.org/2000/svg">
<!ENTITY % HTMLlat1 PUBLIC
"-//W3C//ENTITIES Latin1//EN//HTML"
"HTMLlat1.ent">
%HTMLlat1;
<!ENTITY % HTMLsymbol PUBLIC
"-//W3C//ENTITIES Symbols//EN//HTML"
"HTMLsymbol.ent">
%HTMLsymbol;
<!ENTITY % HTMLspecial PUBLIC
"-//W3C//ENTITIES Special//EN//HTML"
"HTMLspecial.ent">
%HTMLspecial;
et les fichiers .ent au même endroit. Ça ne marche pas
J'ai donc copié simplement le contenu des 3 fichiers dans la dtd elle-même... et ça marche pas non plus (c'est l'exemple en cours...)