/// Represents a multiline text element (MText) in the drawing.
/// Allows for text wrapping and specific line spacing.
public class MultilineText : Element
{
// Constructors
public MultilineText() { }
public MultilineText(Vector3 insertionPoint, string textString, float height, float rectWidth) { }
public MultilineText(
Plane3D plane,
Vector3 insertionPoint,
string textString,
float height,
float rectWidth,
TextAlignment alignment = TextAlignment.TopLeft,
float rotation = 0f,
float widthFactor = 1.0f,
float lineSpacingFactor = 1.0f,
bool wrap = true,
string styleName = null) { }
// Important Properties
public Vector3 InsertionPoint { get; set; } // Main insertion point [X, Y, Z].
public string TextString { get; set; } // Text content (can contain \n).
public float Height { get; set; } // Text character height (must be positive).
public Plane3D Plane { get; set; } // Text orientation plane.
public TextAlignment Alignment { get; set; } // Block alignment relative to insertion point.
public string StyleName { get; set; } // Optional text style name.
public float WidthFactor { get; set; } // Horizontal scaling (must be positive).
public float Rotation { get; set; } // Rotation in radians.
public float RectWidth { get; set; } // Bounding box width (must be positive).
public float LineSpacingFactor { get; set; } // Line spacing factor (must be positive).
public bool Wrap { get; set; } // Whether to wrap text.
// Other Accessible Properties
public string LayerName { get; set; } // The name of the layer this element belongs to.
public string ColorARGB { get; set; } // Element color represented as an AARRGGBB hex string.
public PropertyMethod ColorMethod { get; set; } // Element color method.
public LineType? LineType { get; set; } // The line type for this element.
public float? LineTypeScale { get; set; } // The scale of the line type.
public PropertyMethod LineTypeMethod { get; set; } // Element line type method.
public float? LineWeight { get; set; } // The line weight for this element.
public PropertyMethod LineWeightMethod { get; set; } // Element lineWeight method.
public string MaterialName { get; set; } // The name of the material for this element.
public int? DisplayOrder { get; set; } // The element printing and displaying order.
public bool? IsVisible { get; set; } // The element visibility status.
}