|Draft → Text|
|Introduced in version|
|Draft Label, Draft ShapeString|
Single point required to position the textbox
Warning: The texts created with version 0.18 are not backward compatible, so backup your work if you try to open files created with 0.18 with older versions.
- Press the button, or press then keys.
- Click a point on the 3D view, or type a coordinate and press the button.
- Enter the desired text, pressing between each line.
- Press twice to finish the operation.
- To enter coordinates manually, simply enter the numbers, then press between each X, Y and Z component. You can press the button when you have the desired values to insert the point.
- Hold snapping your point to the nearest snap location, independently of the distance. while placing the text to force
- Press or to enter a new line of text.
- Press to edit the previous line of text.
- Press or twice to finish editing the text.
- Press or the button to abort the current command.
- DataText: specifies the contents of the text block as a list of strings; each element on the list, separated by a comma, indicates a new line.
- DataPosition: specifies the base point of the first line of the text block.
- DataAngle: specifies the rotation of the baseline of the first line of the text block.
- DataAxis: specifies the axis to use for the rotation.
- ViewDisplay Mode: if it is "3D text" the text will be aligned to the scene axes, initially lying on the XY plane; if it is "2D text" the text will always face the camera.
- ViewFont Name: specifies the font to use to draw the text. It can be a font name, such as "Arial", a default style such as "sans", "serif" or "mono", a family such as "Arial,Helvetica,sans" or a name with a style such as "Arial:Bold". If the given font is not found on the system, a generic one is used instead.
- ViewFont Size: specifies the size of the letters. If the text object is created in the tree view but no text is visible, increase the size of the text until it is visible.
- ViewJustification: specifies if the text aligns to the left, right or at the center of the base point.
- ViewLine Spacing: specifies the space between lines of text.
Text = makeText(stringlist, point=Vector(0,0,0), screen=False)
- Creates a
Textobject, at a
pointdefined by a
stringlistis a string, or a list of strings; if it's a list, each element is displayed in its own line.
True, the text always faces the camera view direction, otherwise it aligns with the scene axes, and lies on the XY plane.
The placement of the
Text can be changed by overwriting its
Placement attribute, or by individually overwriting its
The view properties of
Text can be changed by overwriting its attributes; for example, overwrite
ViewObject.FontSize with the new size in millimeters.
import FreeCAD, Draft p1 = FreeCAD.Vector(0, 0, 0) t1 = "This is a sample text" p2 = FreeCAD.Vector(1000, 1000, 0) t2 = ["First line", "second line"] Text1 = Draft.makeText(t1, point=p1) Text2 = Draft.makeText(t2, point=p2) Text1.ViewObject.FontSize = 200 Text2.ViewObject.FontSize = 200 p3 = FreeCAD.Vector(-1000, -500, 0) t3 = ["Upside", "down"] Text3 = Draft.makeText(t3, point=p3) Text3.ViewObject.FontSize = 200 ZAxis = FreeCAD.Vector(0, 0, 1) place3 = FreeCAD.Placement(p3, FreeCAD.Rotation(ZAxis, 175)) Text3.Placement = place3 Text4 = Draft.makeText(t3, point=p3) Text4.ViewObject.FontSize = 200 Text4.Placement.Rotation = FreeCAD.Rotation(ZAxis, -30)