logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 11-03-2014 09:57:46

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

[résolu] problème de svg avec Inkscape

Bonjour,

Voyez-vous une raison pour laquelle Inskape (0.48.3.1-1.3) refuse d'éditer correctement cette image :

<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
     width="100" height="100">
    <defs>
        <filter id="MonFiltre" filterUnits="userSpaceOnUse" x="0" y="0" width="200" height="120">
            <!-- On floute l'objet source -->
            <feGaussianBlur in="SourceAlpha" stdDeviation="5" result="flou"/>
            <!-- On décale le resultat du flou qu'
on appelera "Ombre" -->
            <feOffset in="flou" dx="3" dy="3" result="Ombre"/>
           
            <!-- On crée une source de lumière spéculaire avec un point d'éclairage en haut à gauche -->
            <feSpecularLighting in="flou" surfaceScale="10" specularConstant=".75"
                                specularExponent="1" lighting-color="#EFEFEF"
                                result="speculaireSortie">
                <fePointLight x="-5000" y="-10000" z="2000"/>
            </feSpecularLighting>
           
            <!-- on applique la source de lumière à l'
object source -->
            <feComposite in="speculaireSortie" in2="SourceAlpha" operator="in" result="speculaireSortie"/>
            <!-- On mélange le resultat de la lumière sur l'objet source avec l'objet source lui même -->
            <feComposite in="SourceGraphic" in2="speculaireSortie" operator="arithmetic"
                         k1="0" k2="1" k3="1" k4="0" result="SourceEclairee"/>

            <!-- On empile l'objet éclairé avec son ombre pour obtenir le resultat final -->
            <feMerge>
                <!-- d'
abord l'ombre... -->
                <feMergeNode in="Ombre"/>
                <!-- ...puis l'
objet éclairé par dessus -->
                <feMergeNode in="SourceEclairee"/>
            </feMerge>
        </filter>
    </defs>

    <!-- le filtre est appliqué au cercle qui gagne une ombre et prend du volume -->
    <circle style="fill:#000" filter="url(#MonFiltre)" cx="50" cy="50" r="40"/>
</svg>
 



GPicView la rend sans problème et Gimp l'importe correctement.
En tant qu'éternel newbie, je ne vois pas de quel côté chercher.  hmm


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#2 11-03-2014 10:07:18

kao
Modérateur
Distrib. : Testing
Noyau : Linux 4.quelquechose
(G)UI : Gnome 3
Inscription : 27-09-2012
Site Web

Re : [résolu] problème de svg avec Inkscape

Oui c'est bizarre, il doit manquer un truc dans le code du svg, ou dans l'entête.
Essaye de le passer dans un logiciel comme svg-cleaner pour voir s'il arrive à corriger le problème
https://launchpad.net/svg-cleaner

Tu peux aussi en générer un depuis inkscape pour voir ce qui manque au fichier

Hors ligne

#3 11-03-2014 10:23:18

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

Merci de ta réponse  cool

kao a écrit :

Tu peux aussi en générer un depuis inkscape pour voir ce qui manque au fichier


J'ai fait ça à la rache mais je crois que la notion de filtre lui pose problème.  sad

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->

<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://creativecommons.org/ns#"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   width="210mm"
   height="297mm"
   id="svg2"
   version="1.1"
   inkscape:version="0.48.3.1 r9886"
   sodipodi:docname="Nouveau document 1">
    <defs>
        <filter id="MonFiltre" filterUnits="userSpaceOnUse" x="0" y="0" width="200" height="120">
            <!-- On floute l'objet source -->
            <feGaussianBlur in="SourceAlpha" stdDeviation="5" result="flou"/>
            <!-- On décale le resultat du flou qu'
on appelera "Ombre" -->
            <feOffset in="flou" dx="3" dy="3" result="Ombre"/>
           
            <!-- On crée une source de lumière spéculaire avec un point d'éclairage en haut à gauche -->
            <feSpecularLighting in="flou" surfaceScale="10" specularConstant=".75"
                                specularExponent="1" lighting-color="#EFEFEF"
                                result="speculaireSortie">
                <fePointLight x="-5000" y="-10000" z="2000"/>
            </feSpecularLighting>
           
            <!-- on applique la source de lumière à l'
object source -->
            <feComposite in="speculaireSortie" in2="SourceAlpha" operator="in" result="speculaireSortie"/>
            <!-- On mélange le resultat de la lumière sur l'objet source avec l'objet source lui même -->
            <feComposite in="SourceGraphic" in2="speculaireSortie" operator="arithmetic"
                         k1="0" k2="1" k3="1" k4="0" result="SourceEclairee"/>

            <!-- On empile l'objet éclairé avec son ombre pour obtenir le resultat final -->
            <feMerge>
                <!-- d'
abord l'ombre... -->
                <feMergeNode in="Ombre"/>
                <!-- ...puis l'
objet éclairé par dessus -->
                <feMergeNode in="SourceEclairee"/>
            </feMerge>
        </filter>
    </defs>
  <sodipodi:namedview
     id="base"
     pagecolor="#ffffff"
     bordercolor="#666666"
     borderopacity="1.0"
     inkscape:pageopacity="0.0"
     inkscape:pageshadow="2"
     inkscape:zoom="0.35"
     inkscape:cx="375"
     inkscape:cy="514.28571"
     inkscape:document-units="px"
     inkscape:current-layer="layer1"
     showgrid="false"
     inkscape:window-width="802"
     inkscape:window-height="575"
     inkscape:window-x="602"
     inkscape:window-y="220"
     inkscape:window-maximized="0" />
  <metadata
     id="metadata7">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
        <dc:title></dc:title>
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <g
     inkscape:label="Calque 1"
     inkscape:groupmode="layer"
     id="layer1">
    <path
       sodipodi:type="arc"
       style="fill:#ff0000;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
       id="path2985"
       sodipodi:cx="301.42856"
       sodipodi:cy="329.50504"
       sodipodi:rx="175.71428"
       sodipodi:ry="142.85715"
       d="m 477.14284,329.50504 a 175.71428,142.85715 0 1 1 -351.42856,0 175.71428,142.85715 0 1 1 351.42856,0 z" />
  </g>
      <!-- le filtre est appliqué au cercle qui gagne une ombre et prend du volume -->
    <circle style="fill:#000" filter="url(#MonFiltre)" cx="50" cy="50" r="40"/>
</svg>
 


Ou alors, je n'ai pas placé "circle" où il fallait.
Pourtant, gpicview s'en sort avec ???


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#4 11-03-2014 11:09:31

kao
Modérateur
Distrib. : Testing
Noyau : Linux 4.quelquechose
(G)UI : Gnome 3
Inscription : 27-09-2012
Site Web

Re : [résolu] problème de svg avec Inkscape

Zoome à fond sur ton bouton depuis un wiewer et tu vas voir une sorte de motif, ou de texture. Je ne sais pas ce que c'est mais ça doit être ça qu'inskcape n'aime pas...

Hors ligne

#5 11-03-2014 11:22:50

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

Tu parles du losange central arrondi ?

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#6 11-03-2014 11:52:33

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

Je vais voir du côté du filtre car, en le changeant, Inkscape me l'affiche :

<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
     width="100" height="100">
    <defs>
<defs>
  <filter id="filtre-texte">
    <feTurbulence type="turbulence" baseFrequency="0.20 0.06" numOctaves="2"/>
      <feColorMatrix type="matrix" values=" 0 0 0.3 0 1 0 0 0.5 0 0.2 0 0 0 0 0 0 0 0 1 0.7"/>
    <feComposite operator="in" in2="SourceGraphic"/>
    <feBlend mode="lighten" in2="SourceGraphic"/>
    <feConvolveMatrix kernelMatrix="-1 -1 -1 -1 6 -1 -1 -1 -1" result="txt"/>
    <feGaussianBlur in="SourceAlpha" stdDeviation="1.5"/>
    <feOffset dx="3" dy="3" result="flou"/>
  </filter>
</defs>

    </defs>

    <!-- le filtre est appliqué au cercle qui gagne une ombre et prend du volume -->
    <circle style="fill:#000" filter="url(#filtre-texte)" cx="50" cy="50" r="40"/>
</svg>
 


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#7 11-03-2014 11:54:35

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian
Noyau : Dur
(G)UI : gui gui, je zuis un doiseau
Inscription : 07-07-2008
Site Web

Re : [résolu] problème de svg avec Inkscape

C'est normal le url( ) autour de #MonFiltre ?

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#8 11-03-2014 11:57:36

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

Oui c'est curieux comme syntaxe, c'est pour l'intégration dans le html ?
C'est présent dans les exemples que je trouve.
Je vais vérifier dans la doc.  smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#9 11-03-2014 12:03:43

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

captnfab a écrit :

C'est normal le url( ) autour de #MonFiltre ?


C'est correct : Inkscape l'utilise comme ça quand j'applique un filtre.  smile


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#10 11-03-2014 12:07:08

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian
Noyau : Dur
(G)UI : gui gui, je zuis un doiseau
Inscription : 07-07-2008
Site Web

Re : [résolu] problème de svg avec Inkscape

Ok smile

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#11 11-03-2014 12:15:16

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

J'ai trouvé : c'est la définition filterUnits="userSpaceOnUse"
Je la retire et Inkscape me fait l'affichage, mais c'est moche, du coup.  sad

<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
     width="100" height="100">
    <defs>
        <filter id="MonFiltre"  x="0" y="0" width="200" height="120">
            <!-- On floute l'objet source -->
            <feGaussianBlur in="SourceAlpha" stdDeviation="5" result="flou"/>
            <!-- On décale le resultat du flou qu'
on appelera "Ombre" -->
            <feOffset in="flou" dx="3" dy="3" result="Ombre"/>
           
            <!-- On crée une source de lumière spéculaire avec un point d'éclairage en haut à gauche -->
            <feSpecularLighting in="flou" surfaceScale="10" specularConstant=".75"
                                specularExponent="1" lighting-color="#EFEFEF"
                                result="speculaireSortie">
                <fePointLight x="-5000" y="-10000" z="2000"/>
            </feSpecularLighting>
           
            <!-- on applique la source de lumière à l'
object source -->
            <feComposite in="speculaireSortie" in2="SourceAlpha" operator="in" result="speculaireSortie"/>
            <!-- On mélange le resultat de la lumière sur l'objet source avec l'objet source lui même -->
            <feComposite in="SourceGraphic" in2="speculaireSortie" operator="arithmetic"
                         k1="0" k2="1" k3="1" k4="0" result="SourceEclairee"/>

            <!-- On empile l'objet éclairé avec son ombre pour obtenir le resultat final -->
            <feMerge>
                <!-- d'
abord l'ombre... -->
                <feMergeNode in="Ombre"/>
                <!-- ...puis l'
objet éclairé par dessus -->
                <feMergeNode in="SourceEclairee"/>
            </feMerge>
        </filter>
    </defs>

    <!-- le filtre est appliqué au cercle qui gagne une ombre et prend du volume -->
    <circle style="fill:#000" filter="url(#MonFiltre)" cx="50" cy="50" r="40"/>
</svg>
 


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#12 11-03-2014 12:35:18

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

Une réponse ici : http://tavmjong.free.fr/INKSCAPE/MANUAL … icUse.html

The Filter Effects Region can be defined in terms of the object's bounding box or by units in the current user coordinate system by setting the “filterUnits” parameter to “objectBoundingBox” or “userSpaceOnUse”. Inkscape currently supports only the use of the first in the GUI.


Et la SVG 1.1 dans tout ça ?  roll


I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

#13 13-03-2014 12:34:46

paskal
autobahn
Lieu : ailleurs
Inscription : 14-06-2011
Site Web

Re : [résolu] problème de svg avec Inkscape

Par contre, Inkview le visualise correctement.  smile

I'd love to change the world
But I don't know what to do
So I'll leave it up to you...

logo-sur-fond.png

Hors ligne

Pied de page des forums