Canh hàng văn bản đơn

Một phần của tài liệu Phát triển AutoCAD bằng ActiveX & VBA - Chương 4 pot (Trang 54 - 55)

1 Minh họa phông chữ đặc và rỗng: Phông đặc;

4.2.3.Canh hàng văn bản đơn

Ta có thể canh đều văn bản một dòng theo một hoặc hai phương đứng và ngang như

thể hiện trong minh họa dưới đây. Chếđộ canh trái là giá trị mặc định. Để thiết lập chếđộ canh hàng theo phương ngang và dọc, ta sử dụng thuộc tính Alignment.

Canh hàng lại văn bản

Ví dụ sau tạo đối tượng Text và đối tượng Point. Đối tượng Point được gán làm

điểm canh hàng cho văn bản, và sau đó được chuyển thành dấu thập đỏđể ta có thể

ngừng quá trình thực thi Macro để ta có thể thấy rõ tác động của việc thay đổi chế độ canh hàng.

Sub Ch4_TextAlignment()

Dim textObj As AcadText Dim textString As String

Dim insertionPoint(0 To 2) As Double Dim height As Double

’ Định nghĩa đối tượng Text textString = "Hello, World." insertionPoint(0) = 3

insertionPoint(1) = 3 insertionPoint(2) = 0 height = 0.5

’ Tạo đối tượng text trong không gian mô hình Set textObj = ThisDrawing.ModelSpace. _

AddText(textString, insertionPoint, height) ’ Tạo điểm trùng với điểm canh hàng văn bản,

’ để ta có thể quan sát rõ quá trình thay đổi chế độ canh hàng Dim pointObj As AcadPoint

Dim alignmentPoint(0 To 2) As Double alignmentPoint(0) = 3

alignmentPoint(1) = 3 alignmentPoint(2) = 0

Set pointObj = ThisDrawing.ModelSpace. _ AddPoint(alignmentPoint)

pointObj.Color = acRed

’ Gán kiểu điểm thành dạng chữ thập ThisDrawing.SetVariable "PDMODE", 2 ’ Canh trái đối tượng Text

textObj.Alignment = acAlignmentLeft ThisDrawing.Regen acActiveViewport

MsgBox "The Text object is now aligned left" ’ Canh giữa đối tượng Text

textObj.Alignment = acAlignmentCenter ’ Canh hàng văn bản so với điểm (cần cho ’ tất cả ngoại trừ canh trái)

textObj.TextAlignmentPoint = alignmentPoint ThisDrawing.Regen acActiveViewport

MsgBox "The Text object is now centered" ’ Canh phải đối tượng Text

textObj.Alignment = acAlignmentRight ThisDrawing.Regen acActiveViewport

MsgBox "The Text object is now aligned right" End Sub

Một phần của tài liệu Phát triển AutoCAD bằng ActiveX & VBA - Chương 4 pot (Trang 54 - 55)