4D v16

SVG_New_text

Home

 
4D v16
SVG_New_text

SVG_New_text 


 

SVG_New_text ( parentSVGObject ; text {; x {; y {; font | styleDef {; size {; style {; alignment {; color {; rotation {; lineSpacing {; stretching}}}}}}}}}} ) -> Function result 
Parameter Type   Description
parentSVGObject  SVG_Ref in Reference of parent element
text  Text in Text to insert
Real in Coordinate on X axis
Real in Coordinate on Y axis
font | styleDef   Text in Font name or Style definition
size  Longint in Size of characters in points
style  Longint in Style of characters
alignment  Longint in Alignment
color  String in Text color
rotation  Real in Angle of rotation of text
lineSpacing  Real in Line spacing in points
stretching  Real in Horizontal stretch factor
Function result  SVG_Ref in Reference of SVG text object

The SVG_New_text command inserts the text in text in the SVG container designated by parentSVGObject and returns its reference. If parentSVGObject is not an SVG document, an error is generated.

Note: Starting with 4D v15, the SVG_New_text command supports simple Styled text (the text can contain different styles, but SPAN attributes must not be nested). See example 5.

The optional x and y parameters can be used to specify the position on the X and Y axis of the upper corner of the first character of text. This point is situated differently according to the alignment value: to the left for a left alignment, to the right for a right alignment or in the center when the text is centered.

The SVG_New_text command accepts two different syntaxes for setting characters:

  • You can pass various values in the font, size, style and alignment parameters: font and size can be used to specify the font and size, in points, to be used. When these parameters are omitted, the text will be written in Times New Roman 12 pts.
    The optional style parameter gives information about the character style used. In the style parameter, you must pass one of the following values or a combination of several of them (or you can also use the corresponding 4D constants from the Font Styles theme):
    0 = Plain
    1 = Bold
    2 = Italic
    4 = Underline
    8 = Strikethrough
    The optional alignment parameter can be used to set the type of alignment to be applied to the drawn text. You can pass one of the following values:
    2 = Align left
    3 = Center
    4 = Align right

    The optional color parameter contains the name of the font color. (For more information about colors, please refer to the Colors and Gradients section).
    The optional rotation parameter can be used to specify the rotation to be applied to the text.
    The optional lineSpacing parameter can be used to specify the value of the line spacing if the text has more than one line. Default value = 1.
    The optional stretching parameter can be used to specify a horizontal stretching (value >1) or condensing (value included between 0 and 1) factor of the text.

  • Or you can pass a style definition in the styleDef parameter (instead of the font parameter) and then omit the following parameters. For example, you can pass:
     SVG_New_textArea($Dom_svg;"Hello World !";x;y;vWidth;vHeight;style_definition)

    ... where the style_definition parameter contains a complete style definition. If you pass, for instance, "{font-size:48px;fill:red;}", this definition is added as a style attribute in the form:
    style="font-size:48px;fill:red;"

    In this case, any additional parameters are ignored.

Simple text using default text properties:

 $SVG:=SVG_New
 $textID:=SVG_New_text($SVG;"Hello world!")

Text that is blue, italic, underlined and aligned to the right:

 $SVG:=SVG_New
 $text:="Hello world!\rBonjour le monde!\rHola Mundo!"
 $size:=48
 $font:="helvetica"
 $textID:=SVG_New_text($SVG;$text;400;10;$font;$size;Italic+Underline;Align right;"blue")

Vertical text:

 $SVG:=SVG_New
 $textID:=SVG_New_text($SVG;$text;-250;0;"";48;-1;-1;"red";-90)

Condensed or expanded text:

 $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)

Display of multi-style text:

 C_TEXT($Dom_svg;$Dom_text;$Txt_buffer)
  //definition of multi-style text
 $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
 
  //title
 SVG_SET_FONT_COLOR(SVG_New_text($Dom_svg;"_______ svg_Newtext _______";10;30);"blue")
  //text
 $Dom_text:=SVG_New_text($Dom_svg;$Txt_buffer;50;50)
 
 SVGTool_SHOW_IN_VIEWER($Dom_svg)
 SVG_CLEAR($Dom_svg)



See also 

SVG_New_textArea
SVG_New_tspan
SVG_New_vertical_text

 
PROPERTIES 

Product: 4D
Theme: Text
Number: 65958

 
HISTORY 

Created: Composant 4D SVG v11.3
Modified: 4D v13

 
ARTICLE USAGE

4D SVG Component ( 4D v16)