概要 - 文字の高さを設定する(VBA/ActiveX)

文字の高さは、使用するフォントの作図単位でのサイズを決定します。

TrueType フォントの場合を除き、この値は通常、大文字のサイズを表します。

TrueType フォントの場合、文字高さの指定値が大文字の高さにならないことがあります。指定した高さが表すのは、アクセント記号や英語以外の言語で使用するさまざまな記号のために、大文字の高さにアクセント記号領域を足したものとなるからです。大文字とアクセントに割り当てられる領域の割合は、フォント設計者がフォントの設計時に決めるので、この割合はフォントごとに異なります。

ユーザが高さを指定できる大文字とアクセント領域の他に、TrueType フォントには文字挿入線の下にかかる文字部分のための小さな領域があります。こうした文字の例としては、y、j、p、g、q があります。

文字高さを指定するには、Height プロパティを使用します。このプロパティは、正の数のみを受け入れます。

Text オブジェクトの高さを変更する

次の例は、1 行の文字を作成し、次に文字の高さを変更します。

Sub Ch4_ChangeTextHeight()
  Dim textObj As AcadText
  Dim textString As String
  Dim insertionPoint(0 To 2) As Double
  Dim height As Double

  ' Define the text object
  textString = "Hello, World."
  insertionPoint(0) = 3
  insertionPoint(1) = 3
  insertionPoint(2) = 0
  height = 0.5

  ' Create the text object in model space
  Set textObj = ThisDrawing.ModelSpace.AddText(textString, insertionPoint, height)

  ' Change the value of the Height to 1
  textObj.height = 1
  textObj.Update
End Sub