SetFont メソッド(ActiveX)

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

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

構文と要素

VBA:

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

タイプ: TextStyle

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

Typeface

アクセス: 入力のみ

タイプ: 文字列

タイプフェース(フォント名)。

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 つの別々な設定の組み合わせにより決定します。PitchAndFamily の値を提供するには、各分類から設定を選択し、次に OR 演算子を使用してこれらを結合します。最初の 2 つのカテゴリ、つまりピッチおよびファミリは必ず指定します。3 番目のカテゴリ、TrueType Flag は、TrueType フォントを指定するときだけに使用します。

VB または VBA アプリケーションで次の定数を使用するには、コードの宣言セクションに定義をコピーします。

' 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_SetFont()
    ' This example finds the font information for the active text style.
    ' It then changes the font to bold.
    
    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
            
    ' Change the bold property
    Bold = Not Bold
    
    ThisDrawing.ActiveTextStyle.SetFont 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
            
    ' Reset the font
    Bold = Not Bold
    ThisDrawing.ActiveTextStyle.SetFont typeFace, Bold, Italic, charSet, PitchandFamily

End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_SetFont()
    ;; 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)
)