• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# drawing_text_font_descriptor.h
2<!--Kit: ArkGraphics 2D-->
3<!--Subsystem: Graphics-->
4<!--Owner: @oh_wangxk; @gmiao522; @Lem0nC-->
5<!--Designer: @liumingxiang-->
6<!--Tester: @yhl0101-->
7<!--Adviser: @ge-yafang-->
8## 概述
9
10定义了字体信息的相关接口,比如获取字体信息,查找指定字体等。
11
12**引用文件:** <native_drawing/drawing_text_font_descriptor.h>
13
14**库:** libnative_drawing.so
15
16**起始版本:** 14
17
18**相关模块:** [Drawing](capi-drawing.md)
19
20## 汇总
21
22### 枚举
23
24| 名称 | typedef关键字 | 描述 |
25| -- | -- | -- |
26| [OH_Drawing_SystemFontType](#oh_drawing_systemfonttype) | OH_Drawing_SystemFontType | 字体类型的枚举。 |
27
28### 函数
29
30| 名称 | 描述 |
31| -- | -- |
32| [OH_Drawing_FontDescriptor* OH_Drawing_MatchFontDescriptors(OH_Drawing_FontDescriptor* desc, size_t* num)](#oh_drawing_matchfontdescriptors) | 获取与指定字体描述符匹配的所有系统字体描述符,其中[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)的path字段不作为有效的匹配字段,其余字段不是默认值时生效。<br>如果参数desc的所有字段都是默认值,则获取所有系统字体描述符。<br>如果匹配失败,返回NULL。不再需要[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)时,请使用[OH_Drawing_DestroyFontDescriptors](capi-drawing-text-font-descriptor-h.md#oh_drawing_destroyfontdescriptors)接口释放该对象的指针。 |
33| [void OH_Drawing_DestroyFontDescriptors(OH_Drawing_FontDescriptor* descriptors, size_t num)](#oh_drawing_destroyfontdescriptors) | 释放字体描述符[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)数组。 |
34| [OH_Drawing_FontDescriptor* OH_Drawing_GetFontDescriptorByFullName(const OH_Drawing_String* fullName,OH_Drawing_SystemFontType fontType)](#oh_drawing_getfontdescriptorbyfullname) | 根据字体名称和字体类型获取指定的字体描述符,支持系统字体、风格字体和用户已安装字体。<br>字体描述符是描述字体特征的一种数据结构,它包含了定义字体外观和属性的详细信息。 |
35| [OH_Drawing_Array* OH_Drawing_GetSystemFontFullNamesByType(OH_Drawing_SystemFontType fontType)](#oh_drawing_getsystemfontfullnamesbytype) | 根据字体类型获取对应字体的字体名称数组。 |
36| [const OH_Drawing_String* OH_Drawing_GetSystemFontFullNameByIndex(OH_Drawing_Array* fullNameArray, size_t index)](#oh_drawing_getsystemfontfullnamebyindex) | 在字体名称数组中通过索引获取对应位置的字体名称。 |
37| [void OH_Drawing_DestroySystemFontFullNames(OH_Drawing_Array* fullNameArray)](#oh_drawing_destroysystemfontfullnames) | 释放通过字体类型获取的对应字体的字体名称数组占用的内存。 |
38
39## 枚举类型说明
40
41### OH_Drawing_SystemFontType
42
43```
44enum OH_Drawing_SystemFontType
45```
46
47**描述**
48
49字体类型的枚举。
50
51**起始版本:** 14
52
53| 枚举项 | 描述 |
54| -- | -- |
55| ALL = 1 << 0 | 所有字体类型。 |
56| GENERIC = 1 << 1 | 系统字体类型。 |
57| STYLISH = 1 << 2 | 风格字体类型 |
58| INSTALLED = 1 << 3 | 用户已安装字体类型。 |
59| CUSTOMIZED = 1 << 4 | 自定义字体类型。<br/> **起始版本:** 18|
60
61
62## 函数说明
63
64### OH_Drawing_MatchFontDescriptors()
65
66```
67OH_Drawing_FontDescriptor* OH_Drawing_MatchFontDescriptors(OH_Drawing_FontDescriptor* desc, size_t* num)
68```
69
70**描述**
71
72获取与指定字体描述符匹配的所有系统字体描述符,其中[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)的path字段不作为有效的匹配字段,其余字段不是默认值时生效。<br>如果参数desc的所有字段都是默认值,则获取所有系统字体描述符。<br>如果匹配失败,返回NULL。不再需要[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)时,请使用[OH_Drawing_DestroyFontDescriptors](capi-drawing-text-font-descriptor-h.md#oh_drawing_destroyfontdescriptors)接口释放该对象的指针。
73
74**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing
75
76**起始版本:** 18
77
78
79**参数:**
80
81| 参数项 | 描述 |
82| -- | -- |
83| [OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)* desc | 指针。<br>建议使用[OH_Drawing_CreateFontDescriptor](capi-drawing-text-typography-h.md#oh_drawing_createfontdescriptor)获得有效的[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)实例。<br>如果自己创建[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)实例,请确保不用于匹配的字段是默认值。 |
84| size_t* num | 表示返回值数组的成员个数。 |
85
86**返回:**
87
88| 类型 | 说明 |
89| -- | -- |
90| [OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)* | [OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)数组,释放时请使用[OH_Drawing_DestroyFontDescriptors](capi-drawing-text-font-descriptor-h.md#oh_drawing_destroyfontdescriptors)。 |
91
92### OH_Drawing_DestroyFontDescriptors()
93
94```
95void OH_Drawing_DestroyFontDescriptors(OH_Drawing_FontDescriptor* descriptors, size_t num)
96```
97
98**描述**
99
100释放字体描述符[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)数组。
101
102**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing
103
104**起始版本:** 18
105
106
107**参数:**
108
109| 参数项 | 描述 |
110| -- | -- |
111| [OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)* descriptors | 数组。 |
112| size_t num | [OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)数组的成员个数。 |
113
114### OH_Drawing_GetFontDescriptorByFullName()
115
116```
117OH_Drawing_FontDescriptor* OH_Drawing_GetFontDescriptorByFullName(const OH_Drawing_String* fullName,OH_Drawing_SystemFontType fontType)
118```
119
120**描述**
121
122根据字体名称和字体类型获取指定的字体描述符,支持系统字体、风格字体和用户已安装字体。<br>字体描述符是描述字体特征的一种数据结构,它包含了定义字体外观和属性的详细信息。
123
124**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing
125
126**起始版本:** 14
127
128
129**参数:**
130
131| 参数项 | 描述 |
132| -- | -- |
133| const [OH_Drawing_String](capi-drawing-oh-drawing-string.md)* fullName | 表示指向字体名称字符串[OH_Drawing_String](capi-drawing-oh-drawing-string.md)的指针。 |
134| [OH_Drawing_SystemFontType](#oh_drawing_systemfonttype) fontType | 表示字体类型的枚举值[OH_Drawing_SystemFontType](capi-drawing-text-font-descriptor-h.md#oh_drawing_systemfonttype)。 |
135
136**返回:**
137
138| 类型 | 说明 |
139| -- | -- |
140| [OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)* | 指向字体描述符对象[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)的指针,不再需要[OH_Drawing_FontDescriptor](capi-drawing-oh-drawing-fontdescriptor.md)时,请使用[OH_Drawing_DestroyFontDescriptor](capi-drawing-text-typography-h.md#oh_drawing_destroyfontdescriptor)接口释放该对象的指针。 |
141
142### OH_Drawing_GetSystemFontFullNamesByType()
143
144```
145OH_Drawing_Array* OH_Drawing_GetSystemFontFullNamesByType(OH_Drawing_SystemFontType fontType)
146```
147
148**描述**
149
150根据字体类型获取对应字体的字体名称数组。
151
152**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing
153
154**起始版本:** 14
155
156
157**参数:**
158
159| 参数项 | 描述 |
160| -- | -- |
161| [OH_Drawing_SystemFontType](#oh_drawing_systemfonttype) fontType | 表示字体类型的枚举值[OH_Drawing_SystemFontType](capi-drawing-text-font-descriptor-h.md#oh_drawing_systemfonttype)。 |
162
163**返回:**
164
165| 类型 | 说明 |
166| -- | -- |
167| [OH_Drawing_Array](capi-drawing-oh-drawing-array.md)* | 返回对应字体类型的字体名称数组[OH_Drawing_Array](capi-drawing-oh-drawing-array.md)的指针,不再需要[OH_Drawing_Array](capi-drawing-oh-drawing-array.md)时,请使用[OH_Drawing_DestroySystemFontFullNames](capi-drawing-text-font-descriptor-h.md#oh_drawing_destroysystemfontfullnames)接口释放该对象的指针。 |
168
169### OH_Drawing_GetSystemFontFullNameByIndex()
170
171```
172const OH_Drawing_String* OH_Drawing_GetSystemFontFullNameByIndex(OH_Drawing_Array* fullNameArray, size_t index)
173```
174
175**描述**
176
177在字体名称数组中通过索引获取对应位置的字体名称。
178
179**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing
180
181**起始版本:** 14
182
183
184**参数:**
185
186| 参数项 | 描述 |
187| -- | -- |
188| [OH_Drawing_Array](capi-drawing-oh-drawing-array.md)* fullNameArray | 表示字体名称数组[OH_Drawing_Array](capi-drawing-oh-drawing-array.md)的指针。 |
189| size_t index | 数组的索引。 |
190
191**返回:**
192
193| 类型 | 说明 |
194| -- | -- |
195| const [OH_Drawing_String](capi-drawing-oh-drawing-string.md)* | 返回对应索引的字体名称[OH_Drawing_String](capi-drawing-oh-drawing-string.md)的指针。 |
196
197### OH_Drawing_DestroySystemFontFullNames()
198
199```
200void OH_Drawing_DestroySystemFontFullNames(OH_Drawing_Array* fullNameArray)
201```
202
203**描述**
204
205释放通过字体类型获取的对应字体的字体名称数组占用的内存。
206
207**系统能力:** SystemCapability.Graphic.Graphic2D.NativeDrawing
208
209**起始版本:** 14
210
211
212**参数:**
213
214| 参数项 | 描述 |
215| -- | -- |
216| [OH_Drawing_Array](capi-drawing-oh-drawing-array.md)* fullNameArray | 表示字体名称数组[OH_Drawing_Array](capi-drawing-oh-drawing-array.md)的指针。 |
217
218
219