Bosquejo de forma de cadena

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Draft ShapeString and the translation is 13% complete.
Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎русский
Arrow-left.svg Previous: Draft Facebinder.svg Facebinder
Next: Hatch Draft Hatch.svg Arrow-right.svg

Draft ShapeString.svg Bosquejar forma de cadena

Ubicación en el Menú
Borrador -> Bosquejar forma de cadena
Entornos de trabajo
Borrador, Arquitectura
Atajo de teclado por defecto
Introducido en versión
Ver también
Draft Text, Part Extrude


La herramienta forma de cadena, inserta una forma compuesta representando una cadena de texto a un punto dado en el actual documento. Altura, trayectoria y fuente pueden ser definidas.

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.

Draft ShapeString Example400.png

Draft ShapeString Example400.png

Como utilizar

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

  1. There are several ways to invoke the command:
    • Press the Draft ShapeString.svg Draft ShapeString button.
    • Select the Drafting → Draft ShapeString.svg Shape from text option from the menu.
  2. The ShapeString task panel opens.
  3. Click a point in the 3D view, or type coordinates.
  4. Optionally press the Reset Point button to reset the point to the origin.
  5. Enter a String.
  6. Specify the Height.
  7. To select a font do one of the following:
    • Enter a file path in the Font file input box.
    • Press the ... button and select a file.
  8. Press the OK button to finish the command.


  • Para ingresar coordenadas manualmente, simplemente ingresa los numeros, luego ENTER entre cada componente X,Y y Z.
  • Presionando ESC cancelará la operación.
  • Puedes ajustar un archivo fuente predeterminado en Draft/Preferencias.


  • A Draft ShapeStrings can be edited by double-clicking it in the Tree view. introduced in version 0.20
  • Supported fonts include TrueType (.ttf), OpenType (.otf) and Type 1 (.pfb).
  • The command is restricted to LTR (left-to-right) text. Therefore at the moment RTL (right-to-left + top-to-bottom) text isn't supported.
  • Very small text heights may result in deformed character shapes due to loss of detail in scaling.
  • Many fonts will generate problematic geometry. This is because font contours are allowed to overlap, have small gaps, and have varying directions within a glyph. These conditions are considered errors in wires used to define faces.
  • Draft ShapeStrings can also be created with the Macro Fonts Win10 PYMP.
  • To create Draft ShapeStrings arranged in a circular fashion use the Macro FCCircularText.

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 DatosFont File 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 DontUseNativeFontDialog is set to true, 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 DontUseNativeDialog to true. 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 C:\ a dropdown list will appear. Select Windows from that list and add \F. Select Fonts 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.



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

  • The default font file can be changed in the preferences: Edit → Preferences... → Draft → Texts and dimensions → Default ShapeString font file.
  • For Windows users:
    • Set Tools → Edit parameters... → BaseApp → Preferences → Dialog → DontUseNativeFontDialog to true to use the non-native file dialog when selecting a font file from the ShapeString task panel.
    • Alternatively, set Tools → Edit parameters... → BaseApp → Preferences → Dialog → DontUseNativeDialog to true to always use the non-native file dialog.


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:



  • DatosPosition: El punto base del compuesto
  • DatosString: Los contenidos del texto
  • DatosSize: La altura de las letras en unidades de FreeCAD
  • DatosTracking: El espacio adicional entre los caracteres en unidades de FreeCAD
  • DatosFont File: El archivo fuente utilizado para dibujar el texto



  • VistaPattern (Enumeration): specifies the Draft Pattern with which to fill the faces of the text. This property only works if VistaDisplay Mode is Flat Lines.
  • VistaPattern Size (Float): specifies the size of the Draft Pattern.



Esta herramienta se puede utilizar en macros y desde la consola de Python mediante las siguientes funciones:

shapestring = make_shapestring(String, FontFile, Size=100, Tracking=0)
  • Convierte un texto en un compuesto usando la fuente especificada.

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


import FreeCAD as App
import Draft

doc = App.newDocument()

font1 = "/usr/share/fonts/truetype/msttcorefonts/Arial.ttf"
font2 = "/usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf"
font3 = "/usr/share/fonts/truetype/freefont/FreeSerifItalic.ttf"

S1 = Draft.make_shapestring("This is a sample text", font1, 200)

S2 = Draft.make_shapestring("Inclined text", font2, 200, 10)

zaxis = App.Vector(0, 0, 1)
p2 = App.Vector(-1000, 500, 0)
place2 = App.Placement(p2, App.Rotation(zaxis, 45))
S2.Placement = place2

S3 = Draft.make_shapestring("Upside-down text", font3, 200, 10)
S3.Placement.Base = App.Vector(0, -1000, 0)
S3.Placement.Rotation = App.Rotation(zaxis, 180)


Arrow-left.svg Previous: Draft Facebinder.svg Facebinder
Next: Hatch Draft Hatch.svg Arrow-right.svg