Draft ShapeString

Description
The Draft ShapeString command creates a compound shape that represents a text string. This shape can be used to create 3D letters with the Part Extrude command.

The Draft ShapeString command is not intended for standard text annotations. The Draft Text command or the Draft Label command should be used for that purpose.



Usage
For Windows users: please read the Font file selection on Windows paragraph first.


 * 1) There are several ways to invoke the command:
 * 2) * Press the button.
 * 3) * Select the option from the menu.
 * 4) The  task panel opens.
 * 5) Click a point in the 3D view, or type coordinates.
 * 6) Optionally press the  button to reset the point to the origin.
 * 7) Enter a.
 * 8) Specify the.
 * 9) To select a font do one of the following:
 * 10) * Enter a file path in the input box.
 * 11) * Press the button and select a file.
 * 12) Press the  button to finish the command.
 * 13) Optionally change the  of the ShapeString. See Properties.

Options

 * Press or the  button to abort the command.

Font file selection on Windows
On Windows access to the default font folder is restricted. This affects the font file selection for ShapeStrings. There are three cases in FreeCAD where a font file for ShapeStrings can be specified: in the ShapeString task panel, when changing the property of a ShapeString, and when specifying the default font file in the Draft Preferences.

Pressing the button and then selecting a file from the default Windows font folder is not possible when using the native file dialog. There are a number of workarounds:
 * Make sure is set to, which is the default value for this preference. This will only call a different, non-native, file dialog when pressing the  button in the ShapeString task panel. With this file dialog the default Windows font folder can be accessed.
 * Change to . This instructs FreeCAD to always use the non-native file dialog.
 * Specify the font file in the input box. You can of course type the full path or copy-paste the path from the Windows File Explorer. But there is also another way to enter the path. If you enter a dropdown list will appear. Select  from that list and add . Select  from the new dropdown list. Finally add  and the first letter(s) of the font file, and then select it from the dropdown list.
 * Create a custom folder for your font files.

See the Preferences paragraph below for the location of the mentioned preferences.

Tutorials

 * Draft ShapeString tutorial: extrude a ShapeString, position it in 3D space, and create an engraving in another body.
 * How to use ShapeStrings in PartDesign

Preferences
See also: Preferences Editor, Draft Preferences and Std DlgParameter.


 * The default font file can be changed in the preferences:.
 * For Windows users:
 * Set to  to use the non-native file dialog when selecting a font file from the ShapeString task panel.
 * Alternatively, set to  to always use the non-native file dialog.

Properties
See also: Property editor.

A Draft ShapeString object is derived from a Part Part2DObject and inherits all its properties. It also has the following additional properties:

Data

 * : Font file name.
 * : Fuse faces if faces overlap, usually not required (can be very slow). Ignored if is.
 * : Horizontal and vertical alignment. Options:, , , , , , , ,.
 * : Height reference used for justification. Options:, . The shape height depends on the characters in.
 * : Keep left margin and leading white space when justification is left.
 * : Fill letters with faces.
 * : Oblique (slant) angle. Must be in the -80° to +80° range.
 * : Scale to ensure cap height is equal to size. If set to, depending on the font, cap height will not match exactly.
 * : Height of text.
 * : Text string. A ShapeString can only display a single text line.
 * : Inter-character spacing. The property type has been updated.



Scripting
See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a Draft ShapeString use the method  of the Draft module. This method replaces the deprecated method.


 * Creates a compound shape using the specified  and the full path of a supported.
 * is the height of the resulting text in millimeters.
 * is the inter-character spacing in millimeters.

The placement of the ShapeString can be changed by overwriting its attribute, or by individually overwriting its  and  attributes.

Example: