GetFont メソッド(ActiveX)

TextStyle のフォントの定義データを取得します。

サポートされているプラットフォーム: Windows のみ

構文と要素

VBA:

object.GetFont Typeface, Bold, Italic, CharSet, PitchAndFamily
object

タイプ: TextStyle

このメソッドが適用されるオブジェクト。

Typeface

アクセス: 出力のみ

タイプ: 文字列

照会する TextStyle のタイプフェース(フォント名)。

Bold

アクセス: 出力のみ

タイプ: ブール型

TextStyle が太字かどうかを指定します。

  • True: TextStyle は太字です。
  • False: TextStyle は太字ではありません。
Italic

アクセス: 出力のみ

タイプ: ブール型

TextStyle が斜体かどうかを指定します。

  • True: TextStyle は斜体です。
  • False: TextStyle は斜体ではありません。
CharSet

アクセス: 出力のみ

タイプ: 長整数型

フォントの文字セット(注記を参照)

PitchAndFamily

アクセス: 出力のみ

タイプ: 長整数型

フォントのピッチおよびファミリの定義(注記を参照)

戻り値(RetVal)

戻り値はありません。

注意

このセクションでは、このメソッドで使用する定数の定義を説明します。これらの定数を使用するには、必要な定義をコピーして、アプリケーションの宣言セクションに貼り付けします。Microsoft から入手可能な定数の完全なリストは、Visual Basic 開発環境に付属のファイル win32api.txt の中にあります。

CharSet パラメータはフォントの文字セットを指定します。VB または VBA アプリケーションで次の定数を使用するには、コードの宣言セクションに定義をコピーします。

Public Const ANSI_CHARSET = 0
Public Const DEFAULT_CHARSET = 1
Public Const SYMBOL_CHARSET = 2
Public Const SHIFTJIS_CHARSET = 128
Public Const OEM_CHARSET = 255

PitchAndFamily パラメータは、フォントのピッチおよびファミリの値を指定します。値は 3 つの別々な設定の組み合わせにより決定します。3 つのカテゴリそれぞれから設定を 1 つ選択し、ブール演算子 OR を使用して設定を組み合わせることにより、PitchAndFamily の値が得られます。最初の 2 つのカテゴリ、ピッチとファミリは必ず指定します。3 番目のカテゴリ、TrueType Flag は、TrueType フォントを指定するときだけに使用します。

' Pitch Values
Public Const DEFAULT_PITCH = 0
Public Const FIXED_PITCH = 1
Public Const VARIABLE_PITCH = 2


' Family Values
Public Const FF_DONTCARE = 0    '  Don't care or don't know.
Public Const FF_ROMAN = 16      '  Variable stroke width, serifed.
Public Const FF_SWISS = 32      '  Variable stroke width, sans-serifed.
Public Const FF_MODERN = 48     '  Constant stroke width, serifed or sans-serifed.
Public Const FF_SCRIPT = 64     '  Cursive, etc.
Public Const FF_DECORATIVE = 80 '  Old English, etc.


' TrueType Flag
Public Const TMPF_TRUETYPE = &H4

VBA:

Sub Example_GetFont()
    ' This example find the font information for the active text style.
    
    Dim typeFace As String
    Dim Bold As Boolean
    Dim Italic As Boolean
    Dim charSet As Long
    Dim PitchandFamily As Long
    
    ThisDrawing.ActiveTextStyle.GetFont typeFace, Bold, Italic, charSet, PitchandFamily
    
    MsgBox "The current text style has the following font properties:" & vbCrLf _
            & "Typeface: " & typeFace & vbCrLf _
            & "Bold: " & Bold & vbCrLf _
            & "Italic: " & Italic & vbCrLf _
            & "Character set: " & charSet & vbCrLf _
            & "Pitch and Family: " & PitchandFamily
    
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_GetFont()
    ;; This example finds the font information for the active text style.
    ;; It then changes the font to bold.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))

    (vla-GetFont (vla-get-ActiveTextStyle doc) 'typeFace 'Bold 'Italic 'charSet 'PitchandFamily)
    
    (alert (strcat "The current text style has the following font properties:"
                   "\nTypeface: " typeFace
                   "\nBold: " (if (= Bold :vlax-true) "True" "False")
                   "\nItalic: " (if (= Italic :vlax-true) "True" "False")
                   "\nCharacter set: " (itoa charSet)
                   "\nPitch and Family: " (itoa PitchandFamily)))
            
    ;; Change the bold property
    (setq Bold (if (= Bold :vlax-true) :vlax-false :vlax-true))

    (vla-SetFont (vla-get-ActiveTextStyle doc) typeFace Bold Italic charSet PitchandFamily)
  
    (alert (strcat "The current text style has the following font properties:"
                   "\nTypeface: " typeFace
                   "\nBold: " (if (= Bold :vlax-true) "True" "False")
                   "\nItalic: " (if (= Italic :vlax-true) "True" "False")
                   "\nCharacter set: " (itoa charSet)
                   "\nPitch and Family: " (itoa PitchandFamily)))
            
    ;; Reset the font
    (setq Bold (if (= Bold :vlax-true) :vlax-false :vlax-true))
    (vla-SetFont (vla-get-ActiveTextStyle doc) typeFace Bold Italic charSet PitchandFamily)
)