FontFamily 클래스

정의

관련 글꼴 패밀리를 나타냅니다.Represents a family of related fonts.

public ref class FontFamily
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.FontFamilyConverter))]
[System.Windows.Localizability(System.Windows.LocalizationCategory.Font)]
public class FontFamily
type FontFamily = class
Public Class FontFamily
상속
FontFamily
특성

설명

글꼴 패밀리 서체 "Times New Roman", 예: 동일한 제품군 이름, 공유 하는 하지만 다른 기능에서 집합이 합니다.A font family is a set of typefaces that share the same family name, such as "Times New Roman", but that differ in features. 이러한 기능 차이 Style, 기울임꼴, 및 Weight, 굵게 등입니다.These feature differences include Style, such as italic, and Weight, such as bold.

글꼴Fonts
"Times New Roman" 글꼴 패밀리의 멤버인 서체의 예제Example of typefaces that are members of the "Times New Roman" font family

대부분 UI(사용자 인터페이스)user interface (UI) 요소와 같은 ButtonTextBlock, 제공을 FontFamily 컨트롤의 텍스트 내용에 대 한 글꼴을 지정 하는 속성입니다.Most UI(사용자 인터페이스)user interface (UI) elements, such as Button and TextBlock, provide a FontFamily property that can be used to specify a font for the text content of a control. 해당 속성을 설정 하 여 글꼴 정의 FontFamily 값입니다.You define the font by setting that property with a FontFamily value. 다음 예제에서 글꼴을 참조 하는 방법을 보여 줍니다 XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) 및 코드입니다.The following examples show how to reference a font, in XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) and in code.

myTextBlock.FontFamily = new FontFamily("Comic Sans MS");
myTextBlock.FontFamily = New FontFamily("Comic Sans MS")
<TextBlock FontFamily="Comic Sans MS">Hello, world</TextBlock>

앞의 예제에서 "MS Sans Comic" 글꼴 참조 되는 라고 하 여 해당 이름을입니다.In the preceding example, the font that is referenced, "Comic Sans MS", is referred to by its friendly name. 또한이 예제에서는 글꼴 가정 시스템 글꼴 컬렉션에 포함 되도록 합니다.Also, in this example the font is assumed to be in the system font collection.

글꼴 대체 디렉터리 지정Specifying Fonts in Alternate Directories

WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) 애플리케이션 글꼴 참조를 확인 하는 시스템 글꼴 컬렉션을 포함 하는 디렉터리가 아닌 다른 디렉터리를 지정할 수 있습니다.A WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) application can specify a directory, other than the directory that contains the systems font collection, for resolving font references. 다음 XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) 및 코드 예제에 표시 된 것 처럼 글꼴의 이름은 글꼴 참조를 확인 하기 위해 절대 URI (uniform resource identifier) 값을 지정할 수 있습니다.The friendly name of the font can specify an absolute uniform resource identifier (URI) value to resolve the font reference, as shown in the following XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) and code examples.

// Create a new FontFamily object, using an absolute URI reference.
myTextBlock.FontFamily = new FontFamily("file:///d:/MyFonts/#Pericles Light");
' Create a new FontFamily object, using an absolute URI reference.
myTextBlock.FontFamily = New FontFamily("file:///d:/MyFonts/#Pericles Light")
<TextBlock FontFamily="file:///d:/MyFonts/#Pericles Light">
  Aegean Sea
</TextBlock>

글꼴의 이름에는 상대 URI 값을 지정할 수도 있습니다 .이 값은 기본 URI를 사용 하 여 글꼴 참조를 확인 합니다.The friendly name of the font can also specify a relative URI value, which requires a base URI to resolve the font reference. FontFamily 개체의 BaseUri 속성은 기본 URI 값에 해당 합니다.The BaseUri property of the FontFamily object corresponds to the base URI value. 다음 코드 예제에서는 기본 URI 값과 상대 URI 값으로 구성 되는 글꼴 참조를 만드는 방법을 보여 줍니다.The following code example shows how to create a font reference that is composed of a base URI value and a relative URI value.

// Create a new FontFamily object, using a base URI reference and a relative URI reference.
myTextBlock.FontFamily = new FontFamily(new Uri("file:///d:/MyFonts/"), "./#Pericles Light");
' Create a new FontFamily object, using a base URI reference and a relative URI reference.
myTextBlock.FontFamily = New FontFamily(New Uri("file:///d:/MyFonts/"), "./#Pericles Light")

응용 프로그램의 일부로 패키지 된 글꼴을 참조 하는 경우 기본 URI 값을 사용할 수 있습니다.You can use a base URI value when you reference a font that is packaged as part of the application. 예를 들어, 기본 URI 값은 "pack://application" URI가 될 수 있으며,이를 통해 응용 프로그램 리소스로 패키지 된 글꼴을 참조할 수 있습니다.For example, the base URI value can be a "pack://application" URI, which lets you reference fonts that are packaged as application resources. 다음 코드 예제에서는 기본 URI 값과 상대 URI 값으로 구성 되는 글꼴 참조를 보여 줍니다.The following code example shows a font reference that is composed of a base URI value and a relative URI value.

// The font resource reference includes the base URI reference (application directory level),
// and a relative URI reference.
myTextBlock.FontFamily = new FontFamily(new Uri("pack://application:,,,/"), "./resources/#Pericles Light");
' The font resource reference includes the base URI reference (application directory level),
' and a relative URI reference.
myTextBlock.FontFamily = New FontFamily(New Uri("pack://application:,,,/"), "./resources/#Pericles Light")

FontFamily 태그에서 특성으로 지정 된 경우에는 기본 URI 값이 항상 암시 됩니다. 해당 값은 XAMLXAML 페이지의 URI입니다.When a FontFamily is specified as an attribute in markup, the base URI value is always implied - its value is the URI of the XAMLXAML page. 암시 된 기본 URI 값은 이름 문자열의 상대 URI 값과 함께 사용 되어 글꼴의 위치를 가져옵니다.The implied base URI value is used with the relative URI value in the friendly name string to obtain the location of the font. 다음 XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) 예제에서 상대 URI 값은 "./" 표기법을 사용 하며이는 기본 URI 값의 "현재 폴더"를 의미 합니다.In the following XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) example, notice that the relative URI value uses the "./" notation, which means "in the current folder" of the base URI value.

<TextBlock FontFamily="./resources/#Pericles Light">
  Aegean Sea
</TextBlock>

WPFWPF 애플리케이션 콘텐츠 항목, 리소스 항목 또는 라이브러리 리소스 항목으로 글꼴을 패키지할 수 있습니다.A WPFWPF application can package fonts as either a content item, a resource item, or a library resource item. 자세한 내용은 애플리케이션과 함께 글꼴 패키징을 참조하세요.For more information, see Packaging Fonts with Applications.

글꼴 대체 (fallback)Font Fallback

클라이언트 애플리케이션에서 선택한 글꼴이 아닌 글꼴의 자동 대체 글꼴 대체 (fallback)를 가리킵니다.Font fallback refers to the automatic substitution of a font other than the font that is selected by the client application. 두 가지 기본 글꼴 대체 (fallback)가 호출 하는 이유:There are two primary reasons why font fallback is invoked:

  • 클라이언트 애플리케이션에서 지정 된 글꼴을 시스템에 존재 하지 않습니다.The font that is specified by the client application does not exist on the system.

  • 클라이언트 애플리케이션에서 지정 된 글꼴에서 텍스트를 렌더링 하는 데 필요한 문자를 포함 하지 않습니다.The font that is specified by the client application does not contain the glyphs that are required to render text.

WPFWPF, 글꼴 대체 (fallback) 메커니즘으로 대체 글꼴 기본 대체 글꼴 패밀리 "Global User Interface"를 사용 합니다.InWPFWPF, the font fallback mechanism uses the default fallback font family, "Global User Interface", as the substitute font. 이 글꼴 파일 이름이 "GlobalUserInterface.CompositeFont"는 합성 글꼴을으로 정의 됩니다.This font is defined as a composite font, whose file name is "GlobalUserInterface.CompositeFont". 복합 글꼴에 대 한 자세한 내용은이 항목의 합성 글꼴 섹션을 참조 합니다.For more information about composite fonts, see the Composite Fonts section in this topic.

합니다 WPFWPF 이전 대체 글꼴 대체 메커니즘이 Win32Win32 글꼴 대체 기술입니다.The WPFWPF font fallback mechanism replaces previous Win32Win32 font substitution technologies.

코드에서 글꼴 대체 (fallback) 시퀀스를 정의합니다.Defining a Font Fallback Sequence in Code

대체 글꼴을 정의할 수 있는 코드에서 글꼴 대체 (fallback) 시퀀스를 정의할 수 있습니다.You can define a font fallback sequence in your code, which lets you define an alternate font. 만들 때를 FontFamily 개체, 여러 글꼴에 대 한 쉼표로 구분 된 제품군 이름을 입력 합니다 String "체, Verdana"와 같은 매개 변수입니다.When you create a FontFamily object, provide multiple font family names, separated by commas, for the String parameter, such as "Comic Sans MS, Verdana". 이 경우 "Comic San MS" 서체의 문자를 사용할 수 없는 경우 "Verdana" 서체의 문자 모양은 사용 됩니다.In this case, if the glyphs from the "Comic Sans MS" typeface are not available, glyphs from the "Verdana" typeface are used. "Comic San MS" 나 "Verdana"에 필요한 문자 모양의 경우 대체 글꼴 패밀리 서체의 "Global User Interface"는 기본적으로 사용 됩니다.If neither "Comic Sans MS" nor "Verdana" have the required glyphs, the fallback font family of the typeface is used, which is "Global User Interface" by default.

다음 예의 글꼴 대체 시퀀스를 정의 하는 방법을 보여 줍니다 XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) 및 코드입니다.The following examples show how to define a font fallback sequence, in XAML(Extensible Application Markup Language)Extensible Application Markup Language (XAML) and in code.

myTextBlock.FontFamily = new FontFamily("Comic Sans MS, Verdana");
myTextBlock.FontFamily = New FontFamily("Comic Sans MS, Verdana")
<TextBlock FontFamily="Comic Sans MS, Verdana">Hello, world</TextBlock>

대체 (fallback) 시퀀스에 있는 글꼴 중 하나는 글꼴 위치를 지정할 수 있습니다.Any one of the fonts in the fallback sequence can specify font locations. 다음 예제에서는 "Pericles Light"를 애플리케이션 리소스로 참조 및 "Verdana" 시스템 글꼴 컬렉션 구성원으로 참조 됩니다.In the following examples, "Pericles Light" is referenced as an application resource, and "Verdana" is referenced as a system font collection member.

myTextBlock.FontFamily = new FontFamily(new Uri("pack://application:,,,/"), "./resources/#Pericles Light, Verdana");
myTextBlock.FontFamily = New FontFamily(New Uri("pack://application:,,,/"), "./resources/#Pericles Light, Verdana")
<TextBlock FontFamily="./resources/#Pericles Light, Verdana">Aegean Sea</TextBlock>

복합 글꼴Composite Fonts

WPFWPF 플랫폼 생성 전체 범위의 다국어 글꼴을 허용 하 고 없는 문자 모양을 표시 하지 않으려면 합성 글꼴 기능을 제공 합니다.The WPFWPF platform provides a composite font feature to allow the construction of full range multilingual fonts, and to avoid displaying missing glyphs. 복합 글꼴 대체를 Win32Win32 글꼴 연결, 글꼴 대체 (fallback), 글꼴, 글꼴 연결 바인딩과 최종 사용자 정의 문자 (EUDC) 메커니즘입니다.Composite fonts replace the Win32Win32 font linking, font fallback, font binding, font association, and end-user-defined characters (EUDC) mechanisms.

복합 글꼴 패밀리를 통해 애플리케이션에 사용할 수는 FontFamilyTypeface 생성자와 마찬가지로 다른 글꼴 패밀리입니다.A composite font family is available to applications through the FontFamily and Typeface constructors just like any other font family. 각 복합 글꼴 패밀리, 이름이 고,으로 다른 글꼴을 사용 하 여 제공할 수 있습니다 여러 언어에 해당 이름의 지역화 된 변형입니다.Each composite font family is named, and, as with other fonts, can provide localized variants of its name in multiple languages.

다음 태그 예제에서는 디스크 파일로 합성 글꼴 패밀리를 정의할 수 있는 방법을 보여 줍니다.The following markup example shows how a composite font family can be defined as a disk file. 이 파일은 설치 된 다른 글꼴과 마찬가지로 기본 Windows 글꼴 디렉터리에 저장 하거나 이름으로 패밀리를 참조할 때 해당 URI를 포함 하 여 어떤 위치에서 든 참조할 수 있습니다.This file can be stored in the default Windows font directory as with any other installed font, or can be referenced in any location by including its URI when referencing the family by name.

다음 예제에서는 글꼴 패밀리 태그는 ". CompositeFont"파일입니다.The following example shows the font family markup in a ".CompositeFont" file.

<FontFamily
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/composite-font"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:System="clr-namespace:System;assembly=mscorlib"
    Baseline="0.9"
    LineSpacing="1.2">

    <!-- Name mapping -->
    <FontFamily.FamilyNames>
        <System:String x:Key="en-US">Global User Interface</System:String>
    </FontFamily.FamilyNames>

    <!-- Faces to report in font chooser UI -->
    <FontFamily.FamilyTypefaces>
        <FamilyTypeface
            Weight="Normal" Stretch="Normal" Style="Normal"
            UnderlinePosition="-0.1" UnderlineThickness="0.05"
            StrikethroughPosition="0.3" StrikethroughThickness="0.05"
            CapsHeight="0.5" XHeight="0.3" />

        <FamilyTypeface
            Weight="Bold" Stretch="Normal" Style="Normal"
            UnderlinePosition="-0.1" UnderlineThickness="0.05"
            StrikethroughPosition="0.3" StrikethroughThickness="0.05"
            CapsHeight="0.5" XHeight="0.3" />
    </FontFamily.FamilyTypefaces>

    <!-- Character to family lookups (in lookup order) -->
    <FontFamily.FamilyMaps>

        <!--
            Basic Latin                 0000-007F
            Latin-1 Supplement          0080-00FF
            Latin Extended-A            0100-017F
            Latin Extended-B            0180-024F
            IPA Extensions              0250-02AF
            Spacing Modifier Letters    02B0-02FF 
            Combining Diacritics Marks  0300-036F 
            Greek and Coptic            0370-03FF
            Cyrillic                    0400-04FF 
            Cyrillic Supplement         0500-052F 
            Phonetic Extensions         1D00-1D7F
            Latin Extended Additional   1E00-1EFF
            Greek Extended              1F00-1FFF
            Alpha Pres Forms Latin      FB00-FB0F -->
        <!-- CHS -->    
        <FontFamilyMap
            Unicode="0000-052F, 1D00-1FFF, FB00-FB0F"
            Language="zh-Hans"
            Target="Times New Roman"
            Scale="1.0" />
        <!-- CHT -->    
        <FontFamilyMap
            Unicode="0000-052F, 1D00-1FFF, FB00-FB0F"
            Language="zh-Hant"
            Target="Times New Roman"
            Scale="1.0" />
        <!-- Other (include JA and KO) -->    
        <FontFamilyMap
            Unicode="0000-052F, 1D00-1FFF, FB00-FB0F"
            Target="Comic Sans MS, Verdana"
            Scale="4.0" />

        <!--
            Armenian                    0530-058F    
            Georgian                    10D0-10FF
            Alpha Pres Forms Armenian   FB10-FB1C -->
        <FontFamilyMap
            Unicode="0530-058F, 10D0-10FF, FB10-FB1C"
            Target="Sylfaen"
            Scale="1.0" />

        <!-- Other FontFamilyMap elements defined ... --> 

    </FontFamily.FamilyMaps>

</FontFamily>

다음 네 가지 합성 글꼴 WPF 설치의 일부로 기본 Windows 글꼴 디렉터리에 나타납니다.The following four composite fonts appear in the default Windows font directory as part of the WPF installation.

글꼴Font 메모Notes
GlobalMonospace.CompositeFontGlobalMonospace.CompositeFont 라틴 문자에 대 한 예를 들어, "Courier New"에 고정 폭 글꼴을 사용 하 여 텍스트를 렌더링 합니다.Renders text by using a monospace font, for example, "Courier New" for Latin characters.
GlobalSanSerif.CompositeFontGlobalSanSerif.CompositeFont 예를 들어, "Arial" 라틴 문자에 대 한 san serif 글꼴을 사용 하 여 텍스트를 렌더링 합니다.Renders text by using a sans serif font, for example, "Arial" for Latin characters.
GlobalSerif.CompositeFontGlobalSerif.CompositeFont 라틴 문자에 대 한 예를 들어 "Times New Roman" serif 글꼴을 사용 하 여 텍스트를 렌더링 합니다.Renders text by using a serif font, for example, "Times New Roman" for Latin characters.
GlobalUserInterface.CompositeFontGlobalUserInterface.CompositeFont 라틴 문자에 대 한 예를 들어 "Times New Roman" 기본 글꼴을 사용 하 여 텍스트를 렌더링 합니다.Renders text by using a default font, for example, "Times New Roman" for Latin characters.

XAML 특성 사용XAML Attribute Usage

<object FontFamily="fontFamilyName"/>  
- or -  
<object FontFamily="fontFamilyNamesList"/>  
- or -  
<object FontFamily="fontFamilyFolderReference"/>  
- or -  
<object FontFamily="fontFamilyUriReference"/>  

XAML 값XAML Values

fontFamilyNamefontFamilyName
글꼴 패밀리 이름을 지정 하는 문자열입니다.A string specifying a font family name. 예를 들어 "Arial" 또는 "Century Gothic"입니다.For example, "Arial" or "Century Gothic".

fontFamilyNamesListfontFamilyNamesList
여러 글꼴 패밀리 이름을 지정 하는 문자열을 각각 쉼표로 구분 된 (쉼표 뒤에 있는 공백은 무시 됨).A string specifying multiple font family names, each separated by a comma (any white space following a comma is ignored). 지정 된 첫 번째 글꼴 패밀리 기본 글꼴 패밀리; 역 후속 글꼴 패밀리 기본 글꼴 패밀리를 적용할 수 없거나 사용할 수 없는 경우에 사용할 대체 (fallback) 제품군으로 사용 됩니다.The first font family specified serves as the primary font family; subsequent font families serve as fallback families to be used in cases where the primary font family is unavailable or not applicable. 예를 들어 "Arial, Century Gothic" Arial 대체 글꼴 패밀리로 Gothic 세기를 사용 하 여 기본 글꼴 패밀리를 지정 합니다.For example, "Arial, Century Gothic" specifies Arial as the primary font family, with Century Gothic as the fallback font family.

fontFamilyFolderReferencefontFamilyFolderReference
글꼴, 글꼴 패밀리 이름과 함께 포함 된 폴더를 지정 하는 문자열입니다.A string specifying a folder containing the font, along with a font family name. 폴더 및 글꼴 패밀리 이름 # 문자로 구분 됩니다.The folder and font family name are delimited by a # character. 폴더 참조는 절대적 이거나 상대적일 수 있습니다.The folder reference may be absolute, or relative. "Custom Fonts\#My Custom Font")을 입력합니다.For example, "Custom Fonts\#My Custom Font".

fontFamilyUriReferencefontFamilyUriReference
글꼴 패밀리 이름과 함께 글꼴의 URI (uniform resource identifier)를 지정 하는 문자열입니다.A string specifying a uniform resource identifier (URI) for the font, along with a font family name. URI 및 글꼴 패밀리 이름은 # 문자로 구분 됩니다.The URI and font family name are delimited by a # character. "http://MyFontServer/Fonts/#My Custom Font")을 입력합니다.For example, "http://MyFontServer/Fonts/#My Custom Font".

생성자

FontFamily()

익명 FontFamily 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of an anonymous FontFamily class.

FontFamily(String)

지정한 글꼴 패밀리 이름에서 FontFamily 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the FontFamily class from the specified font family name.

FontFamily(Uri, String)

지정한 글꼴 패밀리 이름과 선택적인 기본 URI(Uniform Resource Identifier) 값에서 FontFamily 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the FontFamily class from the specified font family name and an optional base uniform resource identifier (URI) value.

속성

Baseline

기준선과 문자 셀 맨 위 사이의 거리를 가져오거나 설정 합니다.Gets or sets the distance between the baseline and the character cell top.

BaseUri

글꼴 패밀리 이름을 확인하는 데 사용되는 기본 URI(Uniform Resource Identifier)를 가져옵니다.Gets the base uniform resource identifier (URI) that is used to resolve a font family name.

FamilyMaps

FontFamilyMap 개체의 컬렉션을 가져옵니다.Gets the collection of FontFamilyMap objects.

FamilyNames

CultureInfo 개체의 글꼴 패밀리 이름을 나타내는 FontFamily 값과 문자열의 컬렉션을 가져옵니다.Gets a collection of strings and CultureInfo values that represent the font family names of the FontFamily object.

FamilyTypefaces

FontFamily 개체에 대한 서체의 컬렉션을 가져옵니다.Gets a collection of typefaces for the FontFamily object.

LineSpacing

FontFamily 개체의 줄 간격 값을 가져오거나 설정합니다.Gets or sets the line spacing value for the FontFamily object. 줄 간격은이 글꼴 em 크기를 기준으로에서 텍스트에 대 한 권장 되는 기준선-거리입니다.The line spacing is the recommended baseline-to-baseline distance for the text in this font relative to the em size.

Source

FontFamily 개체를 생성하는 데 사용되는 글꼴 패밀리 이름을 가져옵니다.Gets the font family name that is used to construct the FontFamily object.

메서드

Equals(Object)

현재 글꼴 패밀리 개체와 지정한 글꼴 패밀리 개체가 같은지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the current font family object and the specified font family object are the same.

GetHashCode()

FontFamily의 해시 함수로 사용됩니다.Serves as a hash function for FontFamily. 해시 알고리즘 및 해시 테이블과 같은 데이터 구조에서 사용하기에 적합합니다.It is suitable for use in hashing algorithms and data structures such as a hash table.

GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
GetTypefaces()

기본 시스템 글꼴 위치에 있는 서체를 나타내는 Typeface 개체의 컬렉션을 반환합니다.Returns a collection of Typeface objects that represent the type faces in the default system font location.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

Source 속성의 값을 반환합니다.Returns the value of the Source property.

적용 대상

추가 정보