Nous avons introduit de nombreux éléments graphiques plus tôt. Si de nombreux graphiques eux-mêmes sont identiques, devons-nous en définir un nouveau à chaque fois ? Pouvons-nous partager quelques graphiques ? C'est l'objet de cette section : la réutilisation des éléments SVG.
Élément g combiné
L'élément g est un conteneur qui combine un groupe d'éléments graphiques liés en un tout de cette manière, nous pouvons opérer sur cet ensemble. Cet élément peut généralement être utilisé conjointement avec les éléments desc et title pour fournir des informations structurelles sur le document. Les documents bien structurés sont généralement lisibles et rendus efficacement. Regardez un petit exemple :
version="1.1"width="5cm"height="5cm">
Deux groupes, chacun de deux rectangles< ;/desc>
🎜>
>
height="1cm" />
width="4.98cm "height="4.98cm"
fill="none" Stroke="blue" Stroke-width=".02cm"/>
Notez quelques points
:
1.xmlns="http://www.w3.org/2000/svg" indique que l'espace de noms par défaut de l'ensemble de l'élément svg est svg. Cela peut être omis lorsqu'il n'y a pas d'ambiguïté. Puisque le document svg est un document XML, les règles pertinentes de l'espace de noms XML sont applicables ici. Par exemple, vous pouvez spécifier un espace de noms pour l'affichage SVG, fournir un alias pour l'espace de noms, etc.
Les éléments 2.g peuvent être imbriqués.
3. Les éléments graphiques combinés peuvent recevoir une valeur d'identifiant tout comme un élément unique. De cette façon, en cas de besoin (comme l'animation et la réutilisation d'un groupe d'éléments), il vous suffit de référencer cette valeur d'identifiant.
4. La combinaison d'un groupe d'éléments graphiques peut définir uniformément les attributs associés de ce groupe d'éléments (remplissage, contour, transformation, etc.).
Élément Template-symbol
L'élément symbol est utilisé pour définir un modèle graphique (le modèle peut contenir de nombreux graphiques). Ce modèle peut être instancié par l'élément use. La fonction du modèle est très similaire à celle de l'élément g. Ils fournissent tous deux un ensemble d'objets graphiques, mais il existe quelques différences. La différence avec l'élément g est :
1. L'élément symbole lui-même ne sera pas rendu, seules les instances du modèle de symbole seront rendues.
2. L'élément symbole peut avoir les attributs viewBox et préservationAspectRatio, qui permettent au symbole de mettre à l'échelle l'élément graphique.
Du point de vue du rendu, les éléments similaires à l'élément symbol sont des éléments de marqueur (définissant les flèches et les étiquettes) et de motif (définissant les couleurs) ; ces éléments ne sont pas directement rendus ; leur utilisation consiste essentiellement à utiliser un élément pour instancier. Pour cette raison, l'attribut 'display' n'a aucune signification pour les symboles.
Le code modifié suivant montre comment utiliser le symbole : Copiez le code
Le code est le suivant :
" hauteur="1cm"/>
< usexlink :href="#group1"target="_blank"rel="nofollow">
" .02cm"width="4.96cm"height="4.96cm"
fill="none"Stroke="blue"Stroke-width=".02cm"/> >
élément define-defs
SVG permet de définir un ensemble d'objets puis de réutiliser cet ensemble d'objets (attention, pas seulement des objets graphiques). L'exemple le plus courant consiste à définir une couleur de dégradé, puis à l'attribuer à l'attribut de remplissage dans d'autres objets graphiques. Les couleurs dégradées ne sont pas rendues une fois définies, les objets de ce type peuvent donc être placés n'importe où. La réutilisation existe souvent dans les objets graphiques, et nous ne souhaitons pas effectuer le rendu directement lors de la définition, mais souhaitons le rendre à l'endroit référencé. Cela peut être réalisé en utilisant l'élément defs.
Généralement, l'approche recommandée consiste à placer les objets référencés dans les éléments defs autant que possible. Ces objets sont généralement : altGlyphDef, clipPath, curseur, filtre, marqueur, masque, motif, LinearGradient, radialGradient, symboles et objets graphiques, etc. Définir ces objets dans les éléments defs les rend plus faciles à comprendre, améliorant ainsi l'accessibilité.
En fait, l'élément g, l'élément symbol et l'élément defs en tant qu'objets conteneurs fournissent tous des fonctions de réutilisation à des degrés divers, mais les caractéristiques de chaque élément peuvent être légèrement différentes : par exemple, l'élément g est directement rendu , symbol et defs ne seront pas rendus directement. Le symbole contient l'attribut viewBox et une nouvelle fenêtre de vue sera créée.
Habituellement, l'attribut id est attribué aux éléments définis dans defs et utilisé directement là où il est utilisé. Selon l'élément, ces définitions peuvent être utilisées à différents endroits. Par exemple, la couleur progressive suivante est utilisée comme attribut :
xmlns="http://www.w3.org/2000 /svg"version=" 1.1">
LocalURIreferenceswithinancestor's'defs'element.
🎜>fill="url(#Gradient01)"/>
La définition des éléments graphiques liés peut être liée au document à l'aide de l'élément use. Par exemple :