# Text

class `Text`

  The Text class is a concept class for text-related enum classes.

  Public Types

  enum class `Alignment` : uint32_t

    Enumeration of the alignments used for text string. These define what the insertion point for a text string is measured with respect to.

    Values:

    enumerator `TopLeft`

      Insertion point is the top left corner of the text string.

    enumerator `CenterLeft`

      Insertion point is the center of the left side of the text string.

    enumerator `BottomLeft`

      Insertion point is the bottom left corner of the text string.

    enumerator `TopCenter`

      Insertion point is the center of the top side of the text string.

    enumerator `Center`

      Insertion point is the vertical and horizontal center of the text string.

    enumerator `BottomCenter`

      Insertion point is the center of the bottom side of the text string.

    enumerator `TopRight`

      Insertion point is the top right corner of the text string.

    enumerator `CenterRight`

      Insertion point is the center of the right side of the text string.

    enumerator `BottomRight`

      Insertion point is the bottom right corner of the text string.

  enum class `GreekingMode` : uint32_t

    Enumerates the greeking modes. These define what to draw in place of characters once they fall below the greeking limit.

    Values:

    enumerator `Nothing`

      Nothing will be drawn for characters below the greeking limit.

    enumerator `Lines`

      A grid of lines will be drawn in place of characters below the greeking limit.

    enumerator `Box`

      A filled box will be drawn in place of characters below the greeking limit.

  enum class `GreekingUnits` : uint32_t

    Enumerates the units for greeking limits.

    Values:

    enumerator `ObjectSpace`

      Object space units ignoring any scaling components in modelling matrices.

    enumerator `SubscreenRelative`

      Fraction of the height of the outermost window.

    enumerator `WindowRelative`

      Fraction of the height of the local window.

    enumerator `WorldSpace`

      Object space units including any scaling components in modelling matrices and cameras.

    enumerator `Points`

      Points units typically used for text size. 1 point corresponds to 1/72 inch.

    enumerator `Pixels`

      Number of pixels.

  enum class `Justification` : uint32_t

    Enumerates the justifications used for multiline text strings.

    Values:

    enumerator `Left`

      Multiline strings will be left justified.

    enumerator `Right`

      Multiline strings will be right justified.

    enumerator `Center`

      Multiline strings will be center justified.

  enum class `LeaderLineSpace` : uint32_t

    Enumerates the spaces in which leader lines can be defined.

    Values:

    enumerator `Object`

      The leader line position is supplied in Object Space.

    enumerator `World`

      The leader line position is supplied in World Space.

  enum class `MarginUnits` : uint32_t

    Enumerates the units for background margins.

    Values:

    enumerator `ObjectSpace`

      Object space units ignoring any scaling components in modelling matrices.

    enumerator `SubscreenRelative`

      Fraction of the height of the outermost window.

    enumerator `WindowRelative`

      Fraction of the height of the local window.

    enumerator `WorldSpace`

      Object space units including any scaling components in modelling matrices and cameras.

    enumerator `Points`

      Points units typically used for text size. 1 point corresponds to 1/72 inch.

    enumerator `Pixels`

      Number of pixels.

    enumerator `Percent`

      Percentage of the requested font height.

  enum class `Preference` : uint32_t

    Enumerates the font type preferences for text strings. These define the types of fonts Visualize will use.

    Values:

    enumerator `Default`

      Use the default font type for the current driver.

    enumerator `Vector`

      Use vector fonts.

    enumerator `Raster`

      Use raster or bitmap fonts.

    enumerator `Exterior`

      Use the font outline (characters will be unfilled).

  enum class `ReferenceFrame` : uint32_t

    Enumeration of the reference frames for text alignment and justification.

    Values:

    enumerator `WorldAligned`

      Alignment and justification will be defined relative to a screen-facing box around the text.

    enumerator `PathAligned`

      Alignment and justification will be defined relative to a text-path-aligned box around the text.

  enum class `RegionAlignment` : uint32_t

    Enumerates the alignments for text regions. These define how text strings will be positioned relative to the line defining the text region.

    Values:

    enumerator `Top`

      Text will be drawn below the region line.

    enumerator `Center`

      Text will be drawn such that the region line passes through its center.

    enumerator `Bottom`

      Text will be drawn above the region line.

  enum class `RegionFitting` : uint32_t

    Enumerates how text is arranged within a region.

    Values:

    enumerator `Left`

      Text will be left-justified on the region line.

    enumerator `Center`

      Text will be centered-justified on the region line.

    enumerator `Right`

      Text will be right-justified on the region line.

    enumerator `Spacing`

      Text will be stretched or squeezed to fill the region line and character width will not change (characters may overlap).

    enumerator `Width`

      Text will be stretched or squeezed to fill the region line and character width will change (narrowing or widening as necessary).

    enumerator `Auto`

      Text will be stretched or squeezed to fill the region line. This will behave as Width when the text needs to be squeezed, or as Spacing when the text needs to be stretched.

  enum class `Renderer` : uint32_t

    Enumerates the renderers for text strings. These define the font-handling subsystems Visualize uses to find and render fonts.

    Values:

    enumerator `Default`

      All font-handling subsystems will be used.

    enumerator `Driver`

      Only driver fonts will be used. If a non-driver font is requested, the stroked font will be used instead.

    enumerator `Truetype`

      Only TrueType fonts will be used. If a non-TrueType font is requested, the stroked font will be used instead.

  enum class `Rotation` : uint32_t

    Values:

    enumerator `None`

      Characters are not rotated.

    enumerator `Rotate`

      Characters are rotated clockwise by a specified angle.

    enumerator `FollowPath`

      Characters are rotated such that they will be perpendicular to the text path.

  enum class `SizeToleranceUnits` : uint32_t

    Enumerates the units for size tolerances.

    Values:

    enumerator `ObjectSpace`

      Object space units ignoring any scaling components in modelling matrices.

    enumerator `SubscreenRelative`

      Fraction of the height of the outermost window.

    enumerator `WindowRelative`

      Fraction of the height of the local window.

    enumerator `WorldSpace`

      Object space units including any scaling components in modelling matrices and cameras.

    enumerator `Points`

      Points units typically used for text size. 1 point corresponds to 1/72 inch.

    enumerator `Pixels`

      Number of pixels.

    enumerator `Percent`

      Percentage of the requested font size defining the lower limit on the smallest font size that can be substituted in the requested’s place.

  enum class `SizeUnits` : uint32_t

    Enumerates the units for font sizes.

    Values:

    enumerator `ObjectSpace`

      Object space units ignoring any scaling components in modelling matrices.

    enumerator `SubscreenRelative`

      Fraction of the height of the outermost window.

    enumerator `WindowRelative`

      Fraction of the height of the local window.

    enumerator `WorldSpace`

      Object space units including any scaling components in modelling matrices and cameras.

    enumerator `Points`

      Points units typically used for text size. 1 point corresponds to 1/72 inch.

    enumerator `Pixels`

      Number of pixels.

  enum class `Transform` : uint32_t

    Enumerates the transform behaviors for text strings. These define how the entire string will be positioned within 3D space.

    Values:

    enumerator `Transformable`

      Text will be subject to all modelling and projection matrices, essentially acting as a textured quad. Text paths will be act as transformations in 3D space.

    enumerator `NonTransformable`

      Only the text insertion point (see also Text::Alignment) will be subject to modelling and projection matrices. Text will always be drawn in screen space. Text paths will act as transformations in screen space.

    enumerator `CharacterPositionOnly`

      Text will be subject to all modelling and projection matrices, however characters will always be drawn in screen space.

    enumerator `CharacterPositionAdjusted`

      Equivalent to CharacterPositionOnly, but additionally will draw text upright when it would otherwise appear upside down based on the camera. To get this behavior Text::ReferenceFrame::PathAligned and Text::Rotation::FollowPath must be set, otherwise this will be equivalent to CharacterPositionOnly.

    enumerator `NonScalingTransformable`

      Text will be subject to all modelling and projection matrices except for size changes, otherwise acting as a textured quad. Text paths will be act as transformations in 3D space.

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your Docs generative AI assistant. Ask me anything about HOOPS Visualize Desktop or choose a sample question below to start a conversation:

What is HOOPS Visualize Desktop?
What are the latest release notes for HOOPS Visualize Desktop?
How do I start evaluating HOOPS Visualize Desktop?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...