VerticalTextPosition Property (ActiveX)

Specifies the vertical position of text in relation to the dimension line.

Supported platforms: Windows only

Signature

VBA:

object.VerticalTextPosition
object

Type: Dim3PointAngular, DimAligned, DimAngular, DimArcLength, DimDiametric, Dimension, DimOrdinate, DimRadial, DimRadialLarge, DimRotated, Leader

The object this property applies to.

Property Value

Read-only: No

Type: acDimVerticalJustification enum

Remarks

The initial value for this property is acVertCentered.

Note: This property overrides the value of the DIMTAD system variable for the given dimension, leader, or tolerance object.

Examples

VBA:

Sub Example_VerticalTextPosition()
    ' This example creates an aligned dimension in model space
    ' and cycles the dimension text through a couple of different
    ' vertical alignments
    
    Dim dimObj As AcadDimAligned
    Dim point1(0 To 2) As Double, point2(0 To 2) As Double
    Dim location(0 To 2) As Double
    Dim CurrentValue As String
    
    ' Define the dimension
    point1(0) = 5: point1(1) = 5: point1(2) = 0
    point2(0) = 9: point2(1) = 5: point2(2) = 0
    location(0) = 5: location(1) = 7: location(2) = 0
    
    ' Create an aligned dimension object in model space
    Set dimObj = ThisDrawing.ModelSpace.AddDimAligned(point1, point2, location)
    ThisDrawing.Application.ZoomAll

    ' Read and display current text position
    Select Case dimObj.VerticalTextPosition
        Case acVertCentered:    CurrentValue = "centered"
        Case acAbove:           CurrentValue = "above"
        Case acOutside:         CurrentValue = "outside"
        Case acJIS:             CurrentValue = "to Japanesee industrial standards"
    End Select

    MsgBox "The vertical position of the dimension is: " & CurrentValue

    ' Change the position of the dimension text to be above the extesnion lines
    dimObj.VerticalTextPosition = acAbove
    ThisDrawing.Regen acAllViewports
    MsgBox "Dimension text is now aligned above extension lines"
   
    ' Change the position of the dimension text to be centered with the extension lines
    dimObj.VerticalTextPosition = acVertCentered
    ThisDrawing.Regen acAllViewports
    MsgBox "Dimension text is now centered with the extension lines"

End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_VerticalTextPosition()
    ;; This example creates an aligned dimension in model space
    ;; and cycles the dimension text through a couple of different
    ;; vertical alignments
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; Define the dimension
    (setq point1 (vlax-3d-point 5 5 0)
          point2 (vlax-3d-point 9 5 0)
          location (vlax-3d-point 5 7 0))  
    
    ;; Create an aligned dimension object in model space
    (setq modelSpace (vla-get-ModelSpace doc))  
    (setq dimObj (vla-AddDimAligned modelSpace point1 point2 location))
    (vla-ZoomAll acadObj)

    ;; Read and display current text position
    (setq CurrentValue (cond
                           ((= (vla-get-VerticalTextPosition dimObj) acVertCentered) "centered")
                           ((= (vla-get-VerticalTextPosition dimObj) acAbove) "above")
                           ((= (vla-get-VerticalTextPosition dimObj) acOutside) "outside")
                           ((= (vla-get-VerticalTextPosition dimObj) acJIS) "to Japanesee industrial standards")
                       ))
    
    (alert (strcat "The vertical position of the dimension is: " CurrentValue))

    ;; Change the position of the dimension text to be above the extesnion lines
    (vla-put-VerticalTextPosition dimObj acAbove)
    (vla-Regen doc acAllViewports)
    (alert "Dimension text is now aligned above extension lines")
   
    ;; Change the position of the dimension text to be centered with the extension lines
    (vla-put-VerticalTextPosition dimObj acVertCentered)
    (vla-Regen doc acAllViewports)
    (alert "Dimension text is now centered with the extension lines")
)