La commande SVG_New_text insère le texte dans le conteneur SVG désigné par objetSVGParent et retourne sa référence. Si objetSVGParent n’est pas un document SVG, une erreur est générée.
Note : A compter de 4D v15, la commande SVG_New_text prend en charge le texte multi-style simple (texte pouvant contenir des styles différents, mais sans attributs SPAN imbriqués). Voir exemple 5.
Les paramètres optionnels x et y permettent de préciser le positionnement sur l'axe x et sur l'axe y du coin supérieur du premier caractère du texte. Ce point est différemment situé selon la valeur de l'alignement : à gauche pour un alignement à gauche, à droite pour un alignement à droite ou au centre lorsque le texte est centré.
La commande SVG_New_text accepte deux syntaxes différentes pour la définition des caractères :
- vous pouvez passer diverses valeurs dans les paramètres police, taille, style, alignement, couleur, rotation, interligne et étirement : police et taille permettent de spécifier la police et la taille, en points, à utiliser. Si ces paramètres sont omis, le texte sera écrit en Times New Roman 12 pts.
Le paramètre optionnel style précise le style de caractères à utiliser. Vous devez passer dans le paramètre style l'une des valeurs suivantes ou une combinaison de ces valeurs (vous pouvez également utiliser les constantes 4D correspondantes dans le thème Styles de caractères) :0 = Normal
1 = Gras
2 = Italique
4 = Souligné
8 = Barré
Le paramètre optionnel alignement permet de spécifier le type d'alignement appliqué au texte dessiné. Vous devez passer une des valeurs suivantes :
2 = Aligné à gauche
3 = Centré
4 = Aligné à droite
Le paramètre optionnel couleur contient le nom de la couleur de la police. Pour plus d’informations sur les couleurs, reportez-vous au chapitre "Couleurs et dégradés".
Le paramètre optionnel rotation permet de préciser la rotation à appliquer au texte.
Le paramètre optionnel interligne permet de préciser la valeur de l'interlignage si le texte comporte plusieurs lignes. Valeur par défaut = 1.
Le paramètre optionnel étirement permet d'appliquer horizontalement un facteur d'étirement (valeur >1) ou de condensation (valeur comprise entre 0 et 1) au texte.
- ou bien, vous pouvez passer une définition de style dans le paramètre défStyle (en lieu et place du paramètre police) et omettre les paramètres suivants. Vous pouvez passer par exemple :
... où le paramètre style_definition contient une définition de style complète. Si vous passez par exemple "{font-size:48px;fill:red;}", cette définition sera ajoutée en tant qu’attribut de style sous la forme :
style="font-size:48px;fill:red;"
Dans ce cas, les éventuels paramètres suivants sont ignorés.
Texte simple utilisant les propriétés de texte par défaut :
Texte en bleu, italique, souligné et aligné à droite :
Texte condensé ou étiré :
$SVG:=SVG_New
$textID:=SVG_New_text($SVG;"Hello world (condensed)";0;0;"";-1;-1;-1;"blue";0;1;0,8)
$textID:=SVG_New_text($SVG;"Hello world (normal)";0;24)
$textID:=SVG_New_text($SVG;"Hello world (stretched)";0;48;"";-1;-1;-1;"red";0;1;2)
Affichage de texte multistyle :
C_TEXTE($Dom_svg;$Dom_text;$Txt_buffer)
$Txt_buffer:="<SPAN STYLE=\"font-size:18pt\">Hello </SPAN>"+\
"<SPAN STYLE=\"font-size:24pt;font-weight:bold;color:#D81E05\">World</SPAN>"+\
"<SPAN STYLE=\"font-size:36pt\">!</SPAN><BR/>"+\
"<SPAN STYLE=\"font-size:19pt;font-style:italic\">It's </SPAN>"+\
"<SPAN STYLE=\"font-size:24pt\">Monday</SPAN>"
$Dom_svg:=SVG_New
SVG_SET_FONT_COLOR(SVG_New_text($Dom_svg;"_______ svg_Newtext _______";10;30);"blue")
$Dom_text:=SVG_New_text($Dom_svg;$Txt_buffer;50;50)
SVGTool_SHOW_IN_VIEWER($Dom_svg)
SVG_CLEAR($Dom_svg)