4D v16

SVG_DEFINE_STYLE_WITH_ARRAYS

Accueil

 
4D v16
SVG_DEFINE_STYLE_WITH_ARRAYS

SVG_DEFINE_STYLE_WITH_ARRAYS 


 

SVG_DEFINE_STYLE_WITH_ARRAYS ( objetSVG ; ptrTabNoms ; ptrTabValeurs {; className {; type {; media {; titre}}}} ) 
Paramètre Type   Description
objetSVG  Ref_SVG in Référence d’objet SVG
ptrTabNoms  Pointeur in Pointeur vers le tableau des noms de styles
ptrTabValeurs  Pointeur in Pointeur vers le tableau des valeurs de styles
className  Texte in Nom de la classe du style CSS
type  Texte in Type de contenu
media  Texte in Descripteur de media
titre  Texte in Nom du style

La commande SVG_DEFINE_STYLE_WITH_ARRAYS définit les styles de l’objet SVG désigné par le paramètre objetSVG à l’aide de tableaux. 

  • Si le paramètre objetSVG désigne l’élément racine, les styles sont définis en tant qu’éléments "style" inclus dans la section "defs" (Internal Style Sheet). Dans ce cas, le paramètre className est obligatoire (s’il est manquant, une erreur est retournée). Vous pouvez ensuite affecter la feuille de style className à des objets SVG en passant son nom à la commande SVG_SET_CLASS (voir exemple 1).   
  • Si le paramètre objetSVG désigne un élément SVG autre que l’élément racine, le style est défini en tant qu’attribut de style pour cet élément (Inline Style Sheet) (voir exemple 2).

Le paramètre optionnel type spécifie le langage de la feuille de style du contenu de l’élément. La valeur par défaut est "text/css". 

Le paramètre optionnel media indique le media de destination souhaité pour l’information de style. Si vous omettez ce paramètre, la valeur par défaut utilisée est "all". Si la valeur n’est pas comprise dans la liste des types de medias reconnus par CSS2, une erreur est générée.

Le paramètre optionnel titre vous permet d’ajouter un attribut de type "title".

Exemple de définition de styles internes :

 ARRAY TEXT($tnoms;0)
 ARRAY TEXT($tvaleurs;0)
 APPEND TO ARRAY($tnoms;"fill")
 APPEND TO ARRAY($tvaleurs;"black")
 APPEND TO ARRAY($tnoms;"font-family")
 APPEND TO ARRAY($tvaleurs;"'Lucida Grande' Verdana")
 APPEND TO ARRAY($tnoms;"font-size")
 APPEND TO ARRAY($tvaleurs;"20px")
 APPEND TO ARRAY($tnoms;"text-align")
 APPEND TO ARRAY($tvaleurs;"center")
 
 $svg:=SVG_New
 SVG_DEFINE_STYLE_WITH_ARRAYS($svg;->$tnoms;->$tvaleurs;"title")
 $object:=SVG_New_textArea($svg;"Hello World!";10;10;200;310)
 SVG_SET_CLASS($object;"title")

Cette méthode génère le code suivant :

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<svg xmlns="http://www.w3.org/2000/svg">
    <defs id="4D">
        <style type="text/css">.title{fill:red;font-family:'Lucida Grande' Verdana;font-size:20px;text-align:center;}</style>
    </defs>
    <textArea class="title" height="310" width="200" x="10" y="10">Hello World!</textArea>
</svg>

Exemple de définition de styles inline :

 ARRAY TEXT($tnoms;0)
 ARRAY TEXT($tvaleurs;0)
 APPEND TO ARRAY($tnoms;"fill")
 APPEND TO ARRAY($tvaleurs;"black")
 APPEND TO ARRAY($tnoms;"font-family")
 APPEND TO ARRAY($tvaleurs;"'Lucida Grande' Verdana")
 APPEND TO ARRAY($tnoms;"font-size")
 APPEND TO ARRAY($tvaleurs;"20px")
 APPEND TO ARRAY($tnoms;"text-align")
 APPEND TO ARRAY($tvaleurs;"center")
 
 $svg:=SVG_New
 $object:=SVG_New_textArea($svg;"Hello World!";10;10;200;310)
 SVG_DEFINE_STYLE_WITH_ARRAYS($object;->$tnoms;->$tvaleurs)

Cette méthode génère le code suivant :

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<svg xmlns="http://www.w3.org/2000/svg">
    <textArea height="310" style="fill:red;font-family:'Lucida Grande' Verdana;font-size:20px;text-align:center;" width="200" x="10" y="10">Hello World!</textArea>
</svg>

 
PROPRIÉTÉS 

Produit : 4D
Thème : Structure et Définitions
Numéro : 65871

 
HISTORIQUE 

Créé : 4D v13

 
UTILISATION DE L'ARTICLE

4D SVG ( 4D v16)