4D v16

SVG_New_textArea

Accueil

 
4D v16
SVG_New_textArea

SVG_New_textArea 


 

SVG_New_textArea ( objetSVGParent ; texte {; x {; y {; largeur {; hauteur {; police | stylePolice {; taille {; style {; alignement}}}}}}}} ) -> Résultat 
Paramètre Type   Description
objetSVGParent  Ref_SVG in Référence de l’élément parent
texte  Texte in Texte à insérer
Entier long in Coordonnée sur l'axe x
Entier long in Coordonnée sur l'axe y
largeur  Entier long in Largeur de la zone de texte
hauteur  Entier long in Hauteur de la zone de texte
police | stylePolice  Texte in Nom de la police ou Définition de style
taille  Entier in Taille des caractères en points
style  Entier in Style des caractères
alignement  Entier in Alignement
Résultat  Ref_SVG in Référence de l'objet texte SVG

La commande SVG_New_textArea insère une zone de 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.

L'élément "textArea" est recommandé par la norme SVG tiny 1.2 et implémenté dans 4D v11 SQL à partir de la version 11.3 (cf. http://www.w3.org/TR/SVGMobile12/text.html#TextAreaElement). Cet élément implémente une zone de texte qui, au contraire de l'élément "text", gère automatiquement les retours à la ligne lorsque le texte dépasse la largeur demandée.

Notes :

  • Dans l'élément "textArea", les retours à la ligne sont remplacés par des éléments "<tbreak/>".
  • A compter de 4D v15, la commande SVG_New_textArea prend en charge le texte multi-style simple (texte pouvant contenir des styles différents, mais sans attributs SPAN imbriqués). Voir exemple 2.

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 gauche de la zone.

Les paramètres optionnels largeur et hauteur définissent dans l'espace de coordonnées utilisateur la taille de la zone. Si l'un ou l'autre de ces paramètres n'est pas fourni, la zone de texte s'adaptera automatiquement à son contenu.

La commande SVG_New_textArea accepte deux syntaxes différentes pour la définition des caractères :

  • vous pouvez passer diverses valeurs dans les paramètres police, taille, style et alignement : 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 :

    1 = Alignement par défaut (gauche)
    2 = Aligné à gauche
    3 = Centré
    4 = Aligné à droite
    5 = Justifié
  • 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 :
     SVG_New_textArea($Dom_svg;"Hello World !";x;y;larg;haut;style_definition)

    ... 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.

 $svg:=SVG_New
  `Positionner un rectangle de bordure
 $rec:=SVG_New_rect($svg;5;5;210;320;0;0;"#777";"peachpuff";3)
  `Le texte
 $txt:="Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor."
 $txtArea:=SVG_New_textArea($svg;$txt;10;10;200;310;"Georgia";25;Italic;5)
  `Sauvegarder le document
 SVG_SAVE_AS_TEXT($svg;"test.svg")

Affichage de texte multistyle :

 C_TEXT($Dom_svg;$Dom_text;$Txt_buffer)
     //définition de texte mutlistyle
 $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
 
   //titre
 SVG_SET_FONT_COLOR(SVG_New_text($Dom_svg;"_______ SVG_New_textArea ______";10;30;"";-1);"blue")
   //textArea
 $Dom_text:=SVG_New_textArea($Dom_svg;$Txt_buffer;50;50)
 
 SVGTool_SHOW_IN_VIEWER($Dom_svg)
 SVG_CLEAR($Dom_svg)



Voir aussi  

SVG_APPEND_TEXT_TO_TEXTAREA
SVG_New_text
SVG_New_vertical_text
SVG_SET_TEXTAREA_TEXT

 
PROPRIÉTÉS 

Produit : 4D
Thème : Texte
Numéro : 65955

 
HISTORIQUE 

Créé : Composant 4D SVG v11.3
Modifié : 4D v12
Modifié : 4D v13

 
UTILISATION DE L'ARTICLE

4D SVG ( 4D v16)