1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 pub const DWRITE_ALPHA_MAX: u32 = 255u32;
3 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4 #[repr(transparent)]
5 pub struct DWRITE_AUTOMATIC_FONT_AXES(pub u32);
6 pub const DWRITE_AUTOMATIC_FONT_AXES_NONE: DWRITE_AUTOMATIC_FONT_AXES = DWRITE_AUTOMATIC_FONT_AXES(0u32);
7 pub const DWRITE_AUTOMATIC_FONT_AXES_OPTICAL_SIZE: DWRITE_AUTOMATIC_FONT_AXES = DWRITE_AUTOMATIC_FONT_AXES(1u32);
8 impl ::std::convert::From<u32> for DWRITE_AUTOMATIC_FONT_AXES {
from(value: u32) -> Self9 fn from(value: u32) -> Self {
10 Self(value)
11 }
12 }
13 unsafe impl ::windows::runtime::Abi for DWRITE_AUTOMATIC_FONT_AXES {
14 type Abi = Self;
15 type DefaultType = Self;
16 }
17 impl ::std::ops::BitOr for DWRITE_AUTOMATIC_FONT_AXES {
18 type Output = Self;
bitor(self, rhs: Self) -> Self19 fn bitor(self, rhs: Self) -> Self {
20 Self(self.0 | rhs.0)
21 }
22 }
23 impl ::std::ops::BitAnd for DWRITE_AUTOMATIC_FONT_AXES {
24 type Output = Self;
bitand(self, rhs: Self) -> Self25 fn bitand(self, rhs: Self) -> Self {
26 Self(self.0 & rhs.0)
27 }
28 }
29 impl ::std::ops::BitOrAssign for DWRITE_AUTOMATIC_FONT_AXES {
bitor_assign(&mut self, rhs: Self)30 fn bitor_assign(&mut self, rhs: Self) {
31 self.0.bitor_assign(rhs.0)
32 }
33 }
34 impl ::std::ops::BitAndAssign for DWRITE_AUTOMATIC_FONT_AXES {
bitand_assign(&mut self, rhs: Self)35 fn bitand_assign(&mut self, rhs: Self) {
36 self.0.bitand_assign(rhs.0)
37 }
38 }
39 impl ::std::ops::Not for DWRITE_AUTOMATIC_FONT_AXES {
40 type Output = Self;
not(self) -> Self41 fn not(self) -> Self {
42 Self(self.0.not())
43 }
44 }
45 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
46 #[repr(transparent)]
47 pub struct DWRITE_BASELINE(pub i32);
48 pub const DWRITE_BASELINE_DEFAULT: DWRITE_BASELINE = DWRITE_BASELINE(0i32);
49 pub const DWRITE_BASELINE_ROMAN: DWRITE_BASELINE = DWRITE_BASELINE(1i32);
50 pub const DWRITE_BASELINE_CENTRAL: DWRITE_BASELINE = DWRITE_BASELINE(2i32);
51 pub const DWRITE_BASELINE_MATH: DWRITE_BASELINE = DWRITE_BASELINE(3i32);
52 pub const DWRITE_BASELINE_HANGING: DWRITE_BASELINE = DWRITE_BASELINE(4i32);
53 pub const DWRITE_BASELINE_IDEOGRAPHIC_BOTTOM: DWRITE_BASELINE = DWRITE_BASELINE(5i32);
54 pub const DWRITE_BASELINE_IDEOGRAPHIC_TOP: DWRITE_BASELINE = DWRITE_BASELINE(6i32);
55 pub const DWRITE_BASELINE_MINIMUM: DWRITE_BASELINE = DWRITE_BASELINE(7i32);
56 pub const DWRITE_BASELINE_MAXIMUM: DWRITE_BASELINE = DWRITE_BASELINE(8i32);
57 impl ::std::convert::From<i32> for DWRITE_BASELINE {
from(value: i32) -> Self58 fn from(value: i32) -> Self {
59 Self(value)
60 }
61 }
62 unsafe impl ::windows::runtime::Abi for DWRITE_BASELINE {
63 type Abi = Self;
64 type DefaultType = Self;
65 }
66 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
67 #[repr(transparent)]
68 pub struct DWRITE_BREAK_CONDITION(pub i32);
69 pub const DWRITE_BREAK_CONDITION_NEUTRAL: DWRITE_BREAK_CONDITION = DWRITE_BREAK_CONDITION(0i32);
70 pub const DWRITE_BREAK_CONDITION_CAN_BREAK: DWRITE_BREAK_CONDITION = DWRITE_BREAK_CONDITION(1i32);
71 pub const DWRITE_BREAK_CONDITION_MAY_NOT_BREAK: DWRITE_BREAK_CONDITION = DWRITE_BREAK_CONDITION(2i32);
72 pub const DWRITE_BREAK_CONDITION_MUST_BREAK: DWRITE_BREAK_CONDITION = DWRITE_BREAK_CONDITION(3i32);
73 impl ::std::convert::From<i32> for DWRITE_BREAK_CONDITION {
from(value: i32) -> Self74 fn from(value: i32) -> Self {
75 Self(value)
76 }
77 }
78 unsafe impl ::windows::runtime::Abi for DWRITE_BREAK_CONDITION {
79 type Abi = Self;
80 type DefaultType = Self;
81 }
82 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
83 #[repr(C)]
84 pub struct DWRITE_CARET_METRICS {
85 pub slopeRise: i16,
86 pub slopeRun: i16,
87 pub offset: i16,
88 }
89 impl DWRITE_CARET_METRICS {}
90 impl ::std::default::Default for DWRITE_CARET_METRICS {
default() -> Self91 fn default() -> Self {
92 unsafe { ::std::mem::zeroed() }
93 }
94 }
95 impl ::std::fmt::Debug for DWRITE_CARET_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result96 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
97 fmt.debug_struct("DWRITE_CARET_METRICS").field("slopeRise", &self.slopeRise).field("slopeRun", &self.slopeRun).field("offset", &self.offset).finish()
98 }
99 }
100 impl ::std::cmp::PartialEq for DWRITE_CARET_METRICS {
eq(&self, other: &Self) -> bool101 fn eq(&self, other: &Self) -> bool {
102 self.slopeRise == other.slopeRise && self.slopeRun == other.slopeRun && self.offset == other.offset
103 }
104 }
105 impl ::std::cmp::Eq for DWRITE_CARET_METRICS {}
106 unsafe impl ::windows::runtime::Abi for DWRITE_CARET_METRICS {
107 type Abi = Self;
108 type DefaultType = Self;
109 }
110 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
111 #[repr(C)]
112 pub struct DWRITE_CLUSTER_METRICS {
113 pub width: f32,
114 pub length: u16,
115 pub _bitfield: u16,
116 }
117 impl DWRITE_CLUSTER_METRICS {}
118 impl ::std::default::Default for DWRITE_CLUSTER_METRICS {
default() -> Self119 fn default() -> Self {
120 unsafe { ::std::mem::zeroed() }
121 }
122 }
123 impl ::std::fmt::Debug for DWRITE_CLUSTER_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result124 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
125 fmt.debug_struct("DWRITE_CLUSTER_METRICS").field("width", &self.width).field("length", &self.length).field("_bitfield", &self._bitfield).finish()
126 }
127 }
128 impl ::std::cmp::PartialEq for DWRITE_CLUSTER_METRICS {
eq(&self, other: &Self) -> bool129 fn eq(&self, other: &Self) -> bool {
130 self.width == other.width && self.length == other.length && self._bitfield == other._bitfield
131 }
132 }
133 impl ::std::cmp::Eq for DWRITE_CLUSTER_METRICS {}
134 unsafe impl ::windows::runtime::Abi for DWRITE_CLUSTER_METRICS {
135 type Abi = Self;
136 type DefaultType = Self;
137 }
138 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
139 #[repr(C)]
140 pub struct DWRITE_COLOR_F {
141 pub r: f32,
142 pub g: f32,
143 pub b: f32,
144 pub a: f32,
145 }
146 impl DWRITE_COLOR_F {}
147 impl ::std::default::Default for DWRITE_COLOR_F {
default() -> Self148 fn default() -> Self {
149 unsafe { ::std::mem::zeroed() }
150 }
151 }
152 impl ::std::fmt::Debug for DWRITE_COLOR_F {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result153 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
154 fmt.debug_struct("DWRITE_COLOR_F").field("r", &self.r).field("g", &self.g).field("b", &self.b).field("a", &self.a).finish()
155 }
156 }
157 impl ::std::cmp::PartialEq for DWRITE_COLOR_F {
eq(&self, other: &Self) -> bool158 fn eq(&self, other: &Self) -> bool {
159 self.r == other.r && self.g == other.g && self.b == other.b && self.a == other.a
160 }
161 }
162 impl ::std::cmp::Eq for DWRITE_COLOR_F {}
163 unsafe impl ::windows::runtime::Abi for DWRITE_COLOR_F {
164 type Abi = Self;
165 type DefaultType = Self;
166 }
167 #[derive(:: std :: clone :: Clone)]
168 #[repr(C)]
169 #[cfg(feature = "Win32_Foundation")]
170 pub struct DWRITE_COLOR_GLYPH_RUN {
171 pub glyphRun: DWRITE_GLYPH_RUN,
172 pub glyphRunDescription: *mut DWRITE_GLYPH_RUN_DESCRIPTION,
173 pub baselineOriginX: f32,
174 pub baselineOriginY: f32,
175 pub runColor: DWRITE_COLOR_F,
176 pub paletteIndex: u16,
177 }
178 #[cfg(feature = "Win32_Foundation")]
179 impl DWRITE_COLOR_GLYPH_RUN {}
180 #[cfg(feature = "Win32_Foundation")]
181 impl ::std::default::Default for DWRITE_COLOR_GLYPH_RUN {
default() -> Self182 fn default() -> Self {
183 unsafe { ::std::mem::zeroed() }
184 }
185 }
186 #[cfg(feature = "Win32_Foundation")]
187 impl ::std::fmt::Debug for DWRITE_COLOR_GLYPH_RUN {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result188 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
189 fmt.debug_struct("DWRITE_COLOR_GLYPH_RUN")
190 .field("glyphRun", &self.glyphRun)
191 .field("glyphRunDescription", &self.glyphRunDescription)
192 .field("baselineOriginX", &self.baselineOriginX)
193 .field("baselineOriginY", &self.baselineOriginY)
194 .field("runColor", &self.runColor)
195 .field("paletteIndex", &self.paletteIndex)
196 .finish()
197 }
198 }
199 #[cfg(feature = "Win32_Foundation")]
200 impl ::std::cmp::PartialEq for DWRITE_COLOR_GLYPH_RUN {
eq(&self, other: &Self) -> bool201 fn eq(&self, other: &Self) -> bool {
202 self.glyphRun == other.glyphRun && self.glyphRunDescription == other.glyphRunDescription && self.baselineOriginX == other.baselineOriginX && self.baselineOriginY == other.baselineOriginY && self.runColor == other.runColor && self.paletteIndex == other.paletteIndex
203 }
204 }
205 #[cfg(feature = "Win32_Foundation")]
206 impl ::std::cmp::Eq for DWRITE_COLOR_GLYPH_RUN {}
207 #[cfg(feature = "Win32_Foundation")]
208 unsafe impl ::windows::runtime::Abi for DWRITE_COLOR_GLYPH_RUN {
209 type Abi = ::std::mem::ManuallyDrop<Self>;
210 type DefaultType = Self;
211 }
212 #[derive(:: std :: clone :: Clone)]
213 #[repr(C)]
214 #[cfg(feature = "Win32_Foundation")]
215 pub struct DWRITE_COLOR_GLYPH_RUN1 {
216 pub Base: DWRITE_COLOR_GLYPH_RUN,
217 pub glyphImageFormat: DWRITE_GLYPH_IMAGE_FORMATS,
218 pub measuringMode: DWRITE_MEASURING_MODE,
219 }
220 #[cfg(feature = "Win32_Foundation")]
221 impl DWRITE_COLOR_GLYPH_RUN1 {}
222 #[cfg(feature = "Win32_Foundation")]
223 impl ::std::default::Default for DWRITE_COLOR_GLYPH_RUN1 {
default() -> Self224 fn default() -> Self {
225 unsafe { ::std::mem::zeroed() }
226 }
227 }
228 #[cfg(feature = "Win32_Foundation")]
229 impl ::std::fmt::Debug for DWRITE_COLOR_GLYPH_RUN1 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result230 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
231 fmt.debug_struct("DWRITE_COLOR_GLYPH_RUN1").field("Base", &self.Base).field("glyphImageFormat", &self.glyphImageFormat).field("measuringMode", &self.measuringMode).finish()
232 }
233 }
234 #[cfg(feature = "Win32_Foundation")]
235 impl ::std::cmp::PartialEq for DWRITE_COLOR_GLYPH_RUN1 {
eq(&self, other: &Self) -> bool236 fn eq(&self, other: &Self) -> bool {
237 self.Base == other.Base && self.glyphImageFormat == other.glyphImageFormat && self.measuringMode == other.measuringMode
238 }
239 }
240 #[cfg(feature = "Win32_Foundation")]
241 impl ::std::cmp::Eq for DWRITE_COLOR_GLYPH_RUN1 {}
242 #[cfg(feature = "Win32_Foundation")]
243 unsafe impl ::windows::runtime::Abi for DWRITE_COLOR_GLYPH_RUN1 {
244 type Abi = ::std::mem::ManuallyDrop<Self>;
245 type DefaultType = Self;
246 }
247 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
248 #[repr(transparent)]
249 pub struct DWRITE_CONTAINER_TYPE(pub i32);
250 pub const DWRITE_CONTAINER_TYPE_UNKNOWN: DWRITE_CONTAINER_TYPE = DWRITE_CONTAINER_TYPE(0i32);
251 pub const DWRITE_CONTAINER_TYPE_WOFF: DWRITE_CONTAINER_TYPE = DWRITE_CONTAINER_TYPE(1i32);
252 pub const DWRITE_CONTAINER_TYPE_WOFF2: DWRITE_CONTAINER_TYPE = DWRITE_CONTAINER_TYPE(2i32);
253 impl ::std::convert::From<i32> for DWRITE_CONTAINER_TYPE {
from(value: i32) -> Self254 fn from(value: i32) -> Self {
255 Self(value)
256 }
257 }
258 unsafe impl ::windows::runtime::Abi for DWRITE_CONTAINER_TYPE {
259 type Abi = Self;
260 type DefaultType = Self;
261 }
262 pub const DWRITE_ERR_BASE: u32 = 20480u32;
263 pub const DWRITE_E_DOWNLOADCANCELLED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2003283954i32 as _);
264 pub const DWRITE_E_DOWNLOADFAILED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2003283953i32 as _);
265 pub const DWRITE_E_REMOTEFONT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2003283955i32 as _);
266 pub const DWRITE_E_TOOMANYDOWNLOADS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2003283952i32 as _);
267 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
268 #[repr(transparent)]
269 pub struct DWRITE_FACTORY_TYPE(pub i32);
270 pub const DWRITE_FACTORY_TYPE_SHARED: DWRITE_FACTORY_TYPE = DWRITE_FACTORY_TYPE(0i32);
271 pub const DWRITE_FACTORY_TYPE_ISOLATED: DWRITE_FACTORY_TYPE = DWRITE_FACTORY_TYPE(1i32);
272 impl ::std::convert::From<i32> for DWRITE_FACTORY_TYPE {
from(value: i32) -> Self273 fn from(value: i32) -> Self {
274 Self(value)
275 }
276 }
277 unsafe impl ::windows::runtime::Abi for DWRITE_FACTORY_TYPE {
278 type Abi = Self;
279 type DefaultType = Self;
280 }
281 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
282 #[repr(C)]
283 pub struct DWRITE_FILE_FRAGMENT {
284 pub fileOffset: u64,
285 pub fragmentSize: u64,
286 }
287 impl DWRITE_FILE_FRAGMENT {}
288 impl ::std::default::Default for DWRITE_FILE_FRAGMENT {
default() -> Self289 fn default() -> Self {
290 unsafe { ::std::mem::zeroed() }
291 }
292 }
293 impl ::std::fmt::Debug for DWRITE_FILE_FRAGMENT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result294 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
295 fmt.debug_struct("DWRITE_FILE_FRAGMENT").field("fileOffset", &self.fileOffset).field("fragmentSize", &self.fragmentSize).finish()
296 }
297 }
298 impl ::std::cmp::PartialEq for DWRITE_FILE_FRAGMENT {
eq(&self, other: &Self) -> bool299 fn eq(&self, other: &Self) -> bool {
300 self.fileOffset == other.fileOffset && self.fragmentSize == other.fragmentSize
301 }
302 }
303 impl ::std::cmp::Eq for DWRITE_FILE_FRAGMENT {}
304 unsafe impl ::windows::runtime::Abi for DWRITE_FILE_FRAGMENT {
305 type Abi = Self;
306 type DefaultType = Self;
307 }
308 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
309 #[repr(transparent)]
310 pub struct DWRITE_FLOW_DIRECTION(pub i32);
311 pub const DWRITE_FLOW_DIRECTION_TOP_TO_BOTTOM: DWRITE_FLOW_DIRECTION = DWRITE_FLOW_DIRECTION(0i32);
312 pub const DWRITE_FLOW_DIRECTION_BOTTOM_TO_TOP: DWRITE_FLOW_DIRECTION = DWRITE_FLOW_DIRECTION(1i32);
313 pub const DWRITE_FLOW_DIRECTION_LEFT_TO_RIGHT: DWRITE_FLOW_DIRECTION = DWRITE_FLOW_DIRECTION(2i32);
314 pub const DWRITE_FLOW_DIRECTION_RIGHT_TO_LEFT: DWRITE_FLOW_DIRECTION = DWRITE_FLOW_DIRECTION(3i32);
315 impl ::std::convert::From<i32> for DWRITE_FLOW_DIRECTION {
from(value: i32) -> Self316 fn from(value: i32) -> Self {
317 Self(value)
318 }
319 }
320 unsafe impl ::windows::runtime::Abi for DWRITE_FLOW_DIRECTION {
321 type Abi = Self;
322 type DefaultType = Self;
323 }
324 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
325 #[repr(transparent)]
326 pub struct DWRITE_FONT_AXIS_ATTRIBUTES(pub u32);
327 pub const DWRITE_FONT_AXIS_ATTRIBUTES_NONE: DWRITE_FONT_AXIS_ATTRIBUTES = DWRITE_FONT_AXIS_ATTRIBUTES(0u32);
328 pub const DWRITE_FONT_AXIS_ATTRIBUTES_VARIABLE: DWRITE_FONT_AXIS_ATTRIBUTES = DWRITE_FONT_AXIS_ATTRIBUTES(1u32);
329 pub const DWRITE_FONT_AXIS_ATTRIBUTES_HIDDEN: DWRITE_FONT_AXIS_ATTRIBUTES = DWRITE_FONT_AXIS_ATTRIBUTES(2u32);
330 impl ::std::convert::From<u32> for DWRITE_FONT_AXIS_ATTRIBUTES {
from(value: u32) -> Self331 fn from(value: u32) -> Self {
332 Self(value)
333 }
334 }
335 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_AXIS_ATTRIBUTES {
336 type Abi = Self;
337 type DefaultType = Self;
338 }
339 impl ::std::ops::BitOr for DWRITE_FONT_AXIS_ATTRIBUTES {
340 type Output = Self;
bitor(self, rhs: Self) -> Self341 fn bitor(self, rhs: Self) -> Self {
342 Self(self.0 | rhs.0)
343 }
344 }
345 impl ::std::ops::BitAnd for DWRITE_FONT_AXIS_ATTRIBUTES {
346 type Output = Self;
bitand(self, rhs: Self) -> Self347 fn bitand(self, rhs: Self) -> Self {
348 Self(self.0 & rhs.0)
349 }
350 }
351 impl ::std::ops::BitOrAssign for DWRITE_FONT_AXIS_ATTRIBUTES {
bitor_assign(&mut self, rhs: Self)352 fn bitor_assign(&mut self, rhs: Self) {
353 self.0.bitor_assign(rhs.0)
354 }
355 }
356 impl ::std::ops::BitAndAssign for DWRITE_FONT_AXIS_ATTRIBUTES {
bitand_assign(&mut self, rhs: Self)357 fn bitand_assign(&mut self, rhs: Self) {
358 self.0.bitand_assign(rhs.0)
359 }
360 }
361 impl ::std::ops::Not for DWRITE_FONT_AXIS_ATTRIBUTES {
362 type Output = Self;
not(self) -> Self363 fn not(self) -> Self {
364 Self(self.0.not())
365 }
366 }
367 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
368 #[repr(C)]
369 pub struct DWRITE_FONT_AXIS_RANGE {
370 pub axisTag: DWRITE_FONT_AXIS_TAG,
371 pub minValue: f32,
372 pub maxValue: f32,
373 }
374 impl DWRITE_FONT_AXIS_RANGE {}
375 impl ::std::default::Default for DWRITE_FONT_AXIS_RANGE {
default() -> Self376 fn default() -> Self {
377 unsafe { ::std::mem::zeroed() }
378 }
379 }
380 impl ::std::fmt::Debug for DWRITE_FONT_AXIS_RANGE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result381 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
382 fmt.debug_struct("DWRITE_FONT_AXIS_RANGE").field("axisTag", &self.axisTag).field("minValue", &self.minValue).field("maxValue", &self.maxValue).finish()
383 }
384 }
385 impl ::std::cmp::PartialEq for DWRITE_FONT_AXIS_RANGE {
eq(&self, other: &Self) -> bool386 fn eq(&self, other: &Self) -> bool {
387 self.axisTag == other.axisTag && self.minValue == other.minValue && self.maxValue == other.maxValue
388 }
389 }
390 impl ::std::cmp::Eq for DWRITE_FONT_AXIS_RANGE {}
391 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_AXIS_RANGE {
392 type Abi = Self;
393 type DefaultType = Self;
394 }
395 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
396 #[repr(transparent)]
397 pub struct DWRITE_FONT_AXIS_TAG(pub u32);
398 pub const DWRITE_FONT_AXIS_TAG_WEIGHT: DWRITE_FONT_AXIS_TAG = DWRITE_FONT_AXIS_TAG(1952999287u32);
399 pub const DWRITE_FONT_AXIS_TAG_WIDTH: DWRITE_FONT_AXIS_TAG = DWRITE_FONT_AXIS_TAG(1752458359u32);
400 pub const DWRITE_FONT_AXIS_TAG_SLANT: DWRITE_FONT_AXIS_TAG = DWRITE_FONT_AXIS_TAG(1953393779u32);
401 pub const DWRITE_FONT_AXIS_TAG_OPTICAL_SIZE: DWRITE_FONT_AXIS_TAG = DWRITE_FONT_AXIS_TAG(2054385775u32);
402 pub const DWRITE_FONT_AXIS_TAG_ITALIC: DWRITE_FONT_AXIS_TAG = DWRITE_FONT_AXIS_TAG(1818326121u32);
403 impl ::std::convert::From<u32> for DWRITE_FONT_AXIS_TAG {
from(value: u32) -> Self404 fn from(value: u32) -> Self {
405 Self(value)
406 }
407 }
408 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_AXIS_TAG {
409 type Abi = Self;
410 type DefaultType = Self;
411 }
412 impl ::std::ops::BitOr for DWRITE_FONT_AXIS_TAG {
413 type Output = Self;
bitor(self, rhs: Self) -> Self414 fn bitor(self, rhs: Self) -> Self {
415 Self(self.0 | rhs.0)
416 }
417 }
418 impl ::std::ops::BitAnd for DWRITE_FONT_AXIS_TAG {
419 type Output = Self;
bitand(self, rhs: Self) -> Self420 fn bitand(self, rhs: Self) -> Self {
421 Self(self.0 & rhs.0)
422 }
423 }
424 impl ::std::ops::BitOrAssign for DWRITE_FONT_AXIS_TAG {
bitor_assign(&mut self, rhs: Self)425 fn bitor_assign(&mut self, rhs: Self) {
426 self.0.bitor_assign(rhs.0)
427 }
428 }
429 impl ::std::ops::BitAndAssign for DWRITE_FONT_AXIS_TAG {
bitand_assign(&mut self, rhs: Self)430 fn bitand_assign(&mut self, rhs: Self) {
431 self.0.bitand_assign(rhs.0)
432 }
433 }
434 impl ::std::ops::Not for DWRITE_FONT_AXIS_TAG {
435 type Output = Self;
not(self) -> Self436 fn not(self) -> Self {
437 Self(self.0.not())
438 }
439 }
440 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
441 #[repr(C)]
442 pub struct DWRITE_FONT_AXIS_VALUE {
443 pub axisTag: DWRITE_FONT_AXIS_TAG,
444 pub value: f32,
445 }
446 impl DWRITE_FONT_AXIS_VALUE {}
447 impl ::std::default::Default for DWRITE_FONT_AXIS_VALUE {
default() -> Self448 fn default() -> Self {
449 unsafe { ::std::mem::zeroed() }
450 }
451 }
452 impl ::std::fmt::Debug for DWRITE_FONT_AXIS_VALUE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result453 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
454 fmt.debug_struct("DWRITE_FONT_AXIS_VALUE").field("axisTag", &self.axisTag).field("value", &self.value).finish()
455 }
456 }
457 impl ::std::cmp::PartialEq for DWRITE_FONT_AXIS_VALUE {
eq(&self, other: &Self) -> bool458 fn eq(&self, other: &Self) -> bool {
459 self.axisTag == other.axisTag && self.value == other.value
460 }
461 }
462 impl ::std::cmp::Eq for DWRITE_FONT_AXIS_VALUE {}
463 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_AXIS_VALUE {
464 type Abi = Self;
465 type DefaultType = Self;
466 }
467 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
468 #[repr(transparent)]
469 pub struct DWRITE_FONT_FACE_TYPE(pub i32);
470 pub const DWRITE_FONT_FACE_TYPE_CFF: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(0i32);
471 pub const DWRITE_FONT_FACE_TYPE_TRUETYPE: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(1i32);
472 pub const DWRITE_FONT_FACE_TYPE_OPENTYPE_COLLECTION: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(2i32);
473 pub const DWRITE_FONT_FACE_TYPE_TYPE1: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(3i32);
474 pub const DWRITE_FONT_FACE_TYPE_VECTOR: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(4i32);
475 pub const DWRITE_FONT_FACE_TYPE_BITMAP: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(5i32);
476 pub const DWRITE_FONT_FACE_TYPE_UNKNOWN: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(6i32);
477 pub const DWRITE_FONT_FACE_TYPE_RAW_CFF: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(7i32);
478 pub const DWRITE_FONT_FACE_TYPE_TRUETYPE_COLLECTION: DWRITE_FONT_FACE_TYPE = DWRITE_FONT_FACE_TYPE(2i32);
479 impl ::std::convert::From<i32> for DWRITE_FONT_FACE_TYPE {
from(value: i32) -> Self480 fn from(value: i32) -> Self {
481 Self(value)
482 }
483 }
484 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_FACE_TYPE {
485 type Abi = Self;
486 type DefaultType = Self;
487 }
488 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
489 #[repr(transparent)]
490 pub struct DWRITE_FONT_FAMILY_MODEL(pub i32);
491 pub const DWRITE_FONT_FAMILY_MODEL_TYPOGRAPHIC: DWRITE_FONT_FAMILY_MODEL = DWRITE_FONT_FAMILY_MODEL(0i32);
492 pub const DWRITE_FONT_FAMILY_MODEL_WEIGHT_STRETCH_STYLE: DWRITE_FONT_FAMILY_MODEL = DWRITE_FONT_FAMILY_MODEL(1i32);
493 impl ::std::convert::From<i32> for DWRITE_FONT_FAMILY_MODEL {
from(value: i32) -> Self494 fn from(value: i32) -> Self {
495 Self(value)
496 }
497 }
498 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_FAMILY_MODEL {
499 type Abi = Self;
500 type DefaultType = Self;
501 }
502 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
503 #[repr(C)]
504 pub struct DWRITE_FONT_FEATURE {
505 pub nameTag: DWRITE_FONT_FEATURE_TAG,
506 pub parameter: u32,
507 }
508 impl DWRITE_FONT_FEATURE {}
509 impl ::std::default::Default for DWRITE_FONT_FEATURE {
default() -> Self510 fn default() -> Self {
511 unsafe { ::std::mem::zeroed() }
512 }
513 }
514 impl ::std::fmt::Debug for DWRITE_FONT_FEATURE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result515 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
516 fmt.debug_struct("DWRITE_FONT_FEATURE").field("nameTag", &self.nameTag).field("parameter", &self.parameter).finish()
517 }
518 }
519 impl ::std::cmp::PartialEq for DWRITE_FONT_FEATURE {
eq(&self, other: &Self) -> bool520 fn eq(&self, other: &Self) -> bool {
521 self.nameTag == other.nameTag && self.parameter == other.parameter
522 }
523 }
524 impl ::std::cmp::Eq for DWRITE_FONT_FEATURE {}
525 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_FEATURE {
526 type Abi = Self;
527 type DefaultType = Self;
528 }
529 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
530 #[repr(transparent)]
531 pub struct DWRITE_FONT_FEATURE_TAG(pub u32);
532 pub const DWRITE_FONT_FEATURE_TAG_ALTERNATIVE_FRACTIONS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1668441697u32);
533 pub const DWRITE_FONT_FEATURE_TAG_PETITE_CAPITALS_FROM_CAPITALS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1668297315u32);
534 pub const DWRITE_FONT_FEATURE_TAG_SMALL_CAPITALS_FROM_CAPITALS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1668493923u32);
535 pub const DWRITE_FONT_FEATURE_TAG_CONTEXTUAL_ALTERNATES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953259875u32);
536 pub const DWRITE_FONT_FEATURE_TAG_CASE_SENSITIVE_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1702060387u32);
537 pub const DWRITE_FONT_FEATURE_TAG_GLYPH_COMPOSITION_DECOMPOSITION: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1886217059u32);
538 pub const DWRITE_FONT_FEATURE_TAG_CONTEXTUAL_LIGATURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1734962275u32);
539 pub const DWRITE_FONT_FEATURE_TAG_CAPITAL_SPACING: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1886613603u32);
540 pub const DWRITE_FONT_FEATURE_TAG_CONTEXTUAL_SWASH: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1752658787u32);
541 pub const DWRITE_FONT_FEATURE_TAG_CURSIVE_POSITIONING: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1936880995u32);
542 pub const DWRITE_FONT_FEATURE_TAG_DEFAULT: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953261156u32);
543 pub const DWRITE_FONT_FEATURE_TAG_DISCRETIONARY_LIGATURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1734962276u32);
544 pub const DWRITE_FONT_FEATURE_TAG_EXPERT_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953527909u32);
545 pub const DWRITE_FONT_FEATURE_TAG_FRACTIONS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1667330662u32);
546 pub const DWRITE_FONT_FEATURE_TAG_FULL_WIDTH: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1684633446u32);
547 pub const DWRITE_FONT_FEATURE_TAG_HALF_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1718378856u32);
548 pub const DWRITE_FONT_FEATURE_TAG_HALANT_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1852596584u32);
549 pub const DWRITE_FONT_FEATURE_TAG_ALTERNATE_HALF_WIDTH: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953259880u32);
550 pub const DWRITE_FONT_FEATURE_TAG_HISTORICAL_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953720680u32);
551 pub const DWRITE_FONT_FEATURE_TAG_HORIZONTAL_KANA_ALTERNATES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1634626408u32);
552 pub const DWRITE_FONT_FEATURE_TAG_HISTORICAL_LIGATURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1734962280u32);
553 pub const DWRITE_FONT_FEATURE_TAG_HALF_WIDTH: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1684633448u32);
554 pub const DWRITE_FONT_FEATURE_TAG_HOJO_KANJI_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1869246312u32);
555 pub const DWRITE_FONT_FEATURE_TAG_JIS04_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(875589738u32);
556 pub const DWRITE_FONT_FEATURE_TAG_JIS78_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(943157354u32);
557 pub const DWRITE_FONT_FEATURE_TAG_JIS83_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(859336810u32);
558 pub const DWRITE_FONT_FEATURE_TAG_JIS90_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(809070698u32);
559 pub const DWRITE_FONT_FEATURE_TAG_KERNING: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1852990827u32);
560 pub const DWRITE_FONT_FEATURE_TAG_STANDARD_LIGATURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1634167148u32);
561 pub const DWRITE_FONT_FEATURE_TAG_LINING_FIGURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1836412524u32);
562 pub const DWRITE_FONT_FEATURE_TAG_LOCALIZED_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1818455916u32);
563 pub const DWRITE_FONT_FEATURE_TAG_MARK_POSITIONING: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1802658157u32);
564 pub const DWRITE_FONT_FEATURE_TAG_MATHEMATICAL_GREEK: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1802659693u32);
565 pub const DWRITE_FONT_FEATURE_TAG_MARK_TO_MARK_POSITIONING: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1802333037u32);
566 pub const DWRITE_FONT_FEATURE_TAG_ALTERNATE_ANNOTATION_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953259886u32);
567 pub const DWRITE_FONT_FEATURE_TAG_NLC_KANJI_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1801677934u32);
568 pub const DWRITE_FONT_FEATURE_TAG_OLD_STYLE_FIGURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1836412527u32);
569 pub const DWRITE_FONT_FEATURE_TAG_ORDINALS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1852076655u32);
570 pub const DWRITE_FONT_FEATURE_TAG_PROPORTIONAL_ALTERNATE_WIDTH: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953259888u32);
571 pub const DWRITE_FONT_FEATURE_TAG_PETITE_CAPITALS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1885430640u32);
572 pub const DWRITE_FONT_FEATURE_TAG_PROPORTIONAL_FIGURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1836412528u32);
573 pub const DWRITE_FONT_FEATURE_TAG_PROPORTIONAL_WIDTHS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1684633456u32);
574 pub const DWRITE_FONT_FEATURE_TAG_QUARTER_WIDTHS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1684633457u32);
575 pub const DWRITE_FONT_FEATURE_TAG_REQUIRED_LIGATURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1734962290u32);
576 pub const DWRITE_FONT_FEATURE_TAG_RUBY_NOTATION_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(2036495730u32);
577 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_ALTERNATES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953259891u32);
578 pub const DWRITE_FONT_FEATURE_TAG_SCIENTIFIC_INFERIORS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1718511987u32);
579 pub const DWRITE_FONT_FEATURE_TAG_SMALL_CAPITALS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1885564275u32);
580 pub const DWRITE_FONT_FEATURE_TAG_SIMPLIFIED_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1819307379u32);
581 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_1: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(825258867u32);
582 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_2: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(842036083u32);
583 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_3: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(858813299u32);
584 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_4: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(875590515u32);
585 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_5: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(892367731u32);
586 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_6: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(909144947u32);
587 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_7: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(925922163u32);
588 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_8: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(942699379u32);
589 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_9: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(959476595u32);
590 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_10: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(808547187u32);
591 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_11: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(825324403u32);
592 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_12: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(842101619u32);
593 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_13: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(858878835u32);
594 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_14: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(875656051u32);
595 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_15: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(892433267u32);
596 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_16: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(909210483u32);
597 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_17: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(925987699u32);
598 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_18: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(942764915u32);
599 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_19: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(959542131u32);
600 pub const DWRITE_FONT_FEATURE_TAG_STYLISTIC_SET_20: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(808612723u32);
601 pub const DWRITE_FONT_FEATURE_TAG_SUBSCRIPT: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1935832435u32);
602 pub const DWRITE_FONT_FEATURE_TAG_SUPERSCRIPT: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1936749939u32);
603 pub const DWRITE_FONT_FEATURE_TAG_SWASH: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1752397683u32);
604 pub const DWRITE_FONT_FEATURE_TAG_TITLING: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1819568500u32);
605 pub const DWRITE_FONT_FEATURE_TAG_TRADITIONAL_NAME_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1835101812u32);
606 pub const DWRITE_FONT_FEATURE_TAG_TABULAR_FIGURES: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1836412532u32);
607 pub const DWRITE_FONT_FEATURE_TAG_TRADITIONAL_FORMS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1684107892u32);
608 pub const DWRITE_FONT_FEATURE_TAG_THIRD_WIDTHS: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1684633460u32);
609 pub const DWRITE_FONT_FEATURE_TAG_UNICASE: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1667853941u32);
610 pub const DWRITE_FONT_FEATURE_TAG_VERTICAL_WRITING: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1953654134u32);
611 pub const DWRITE_FONT_FEATURE_TAG_VERTICAL_ALTERNATES_AND_ROTATION: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(846492278u32);
612 pub const DWRITE_FONT_FEATURE_TAG_SLASHED_ZERO: DWRITE_FONT_FEATURE_TAG = DWRITE_FONT_FEATURE_TAG(1869768058u32);
613 impl ::std::convert::From<u32> for DWRITE_FONT_FEATURE_TAG {
from(value: u32) -> Self614 fn from(value: u32) -> Self {
615 Self(value)
616 }
617 }
618 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_FEATURE_TAG {
619 type Abi = Self;
620 type DefaultType = Self;
621 }
622 impl ::std::ops::BitOr for DWRITE_FONT_FEATURE_TAG {
623 type Output = Self;
bitor(self, rhs: Self) -> Self624 fn bitor(self, rhs: Self) -> Self {
625 Self(self.0 | rhs.0)
626 }
627 }
628 impl ::std::ops::BitAnd for DWRITE_FONT_FEATURE_TAG {
629 type Output = Self;
bitand(self, rhs: Self) -> Self630 fn bitand(self, rhs: Self) -> Self {
631 Self(self.0 & rhs.0)
632 }
633 }
634 impl ::std::ops::BitOrAssign for DWRITE_FONT_FEATURE_TAG {
bitor_assign(&mut self, rhs: Self)635 fn bitor_assign(&mut self, rhs: Self) {
636 self.0.bitor_assign(rhs.0)
637 }
638 }
639 impl ::std::ops::BitAndAssign for DWRITE_FONT_FEATURE_TAG {
bitand_assign(&mut self, rhs: Self)640 fn bitand_assign(&mut self, rhs: Self) {
641 self.0.bitand_assign(rhs.0)
642 }
643 }
644 impl ::std::ops::Not for DWRITE_FONT_FEATURE_TAG {
645 type Output = Self;
not(self) -> Self646 fn not(self) -> Self {
647 Self(self.0.not())
648 }
649 }
650 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
651 #[repr(transparent)]
652 pub struct DWRITE_FONT_FILE_TYPE(pub i32);
653 pub const DWRITE_FONT_FILE_TYPE_UNKNOWN: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(0i32);
654 pub const DWRITE_FONT_FILE_TYPE_CFF: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(1i32);
655 pub const DWRITE_FONT_FILE_TYPE_TRUETYPE: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(2i32);
656 pub const DWRITE_FONT_FILE_TYPE_OPENTYPE_COLLECTION: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(3i32);
657 pub const DWRITE_FONT_FILE_TYPE_TYPE1_PFM: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(4i32);
658 pub const DWRITE_FONT_FILE_TYPE_TYPE1_PFB: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(5i32);
659 pub const DWRITE_FONT_FILE_TYPE_VECTOR: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(6i32);
660 pub const DWRITE_FONT_FILE_TYPE_BITMAP: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(7i32);
661 pub const DWRITE_FONT_FILE_TYPE_TRUETYPE_COLLECTION: DWRITE_FONT_FILE_TYPE = DWRITE_FONT_FILE_TYPE(3i32);
662 impl ::std::convert::From<i32> for DWRITE_FONT_FILE_TYPE {
from(value: i32) -> Self663 fn from(value: i32) -> Self {
664 Self(value)
665 }
666 }
667 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_FILE_TYPE {
668 type Abi = Self;
669 type DefaultType = Self;
670 }
671 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
672 #[repr(transparent)]
673 pub struct DWRITE_FONT_LINE_GAP_USAGE(pub i32);
674 pub const DWRITE_FONT_LINE_GAP_USAGE_DEFAULT: DWRITE_FONT_LINE_GAP_USAGE = DWRITE_FONT_LINE_GAP_USAGE(0i32);
675 pub const DWRITE_FONT_LINE_GAP_USAGE_DISABLED: DWRITE_FONT_LINE_GAP_USAGE = DWRITE_FONT_LINE_GAP_USAGE(1i32);
676 pub const DWRITE_FONT_LINE_GAP_USAGE_ENABLED: DWRITE_FONT_LINE_GAP_USAGE = DWRITE_FONT_LINE_GAP_USAGE(2i32);
677 impl ::std::convert::From<i32> for DWRITE_FONT_LINE_GAP_USAGE {
from(value: i32) -> Self678 fn from(value: i32) -> Self {
679 Self(value)
680 }
681 }
682 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_LINE_GAP_USAGE {
683 type Abi = Self;
684 type DefaultType = Self;
685 }
686 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
687 #[repr(C)]
688 pub struct DWRITE_FONT_METRICS {
689 pub designUnitsPerEm: u16,
690 pub ascent: u16,
691 pub descent: u16,
692 pub lineGap: i16,
693 pub capHeight: u16,
694 pub xHeight: u16,
695 pub underlinePosition: i16,
696 pub underlineThickness: u16,
697 pub strikethroughPosition: i16,
698 pub strikethroughThickness: u16,
699 }
700 impl DWRITE_FONT_METRICS {}
701 impl ::std::default::Default for DWRITE_FONT_METRICS {
default() -> Self702 fn default() -> Self {
703 unsafe { ::std::mem::zeroed() }
704 }
705 }
706 impl ::std::fmt::Debug for DWRITE_FONT_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result707 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
708 fmt.debug_struct("DWRITE_FONT_METRICS")
709 .field("designUnitsPerEm", &self.designUnitsPerEm)
710 .field("ascent", &self.ascent)
711 .field("descent", &self.descent)
712 .field("lineGap", &self.lineGap)
713 .field("capHeight", &self.capHeight)
714 .field("xHeight", &self.xHeight)
715 .field("underlinePosition", &self.underlinePosition)
716 .field("underlineThickness", &self.underlineThickness)
717 .field("strikethroughPosition", &self.strikethroughPosition)
718 .field("strikethroughThickness", &self.strikethroughThickness)
719 .finish()
720 }
721 }
722 impl ::std::cmp::PartialEq for DWRITE_FONT_METRICS {
eq(&self, other: &Self) -> bool723 fn eq(&self, other: &Self) -> bool {
724 self.designUnitsPerEm == other.designUnitsPerEm && self.ascent == other.ascent && self.descent == other.descent && self.lineGap == other.lineGap && self.capHeight == other.capHeight && self.xHeight == other.xHeight && self.underlinePosition == other.underlinePosition && self.underlineThickness == other.underlineThickness && self.strikethroughPosition == other.strikethroughPosition && self.strikethroughThickness == other.strikethroughThickness
725 }
726 }
727 impl ::std::cmp::Eq for DWRITE_FONT_METRICS {}
728 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_METRICS {
729 type Abi = Self;
730 type DefaultType = Self;
731 }
732 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
733 #[repr(C)]
734 #[cfg(feature = "Win32_Foundation")]
735 pub struct DWRITE_FONT_METRICS1 {
736 pub __AnonymousBase_DWrite_1_L627_C38: DWRITE_FONT_METRICS,
737 pub glyphBoxLeft: i16,
738 pub glyphBoxTop: i16,
739 pub glyphBoxRight: i16,
740 pub glyphBoxBottom: i16,
741 pub subscriptPositionX: i16,
742 pub subscriptPositionY: i16,
743 pub subscriptSizeX: i16,
744 pub subscriptSizeY: i16,
745 pub superscriptPositionX: i16,
746 pub superscriptPositionY: i16,
747 pub superscriptSizeX: i16,
748 pub superscriptSizeY: i16,
749 pub hasTypographicMetrics: super::super::Foundation::BOOL,
750 }
751 #[cfg(feature = "Win32_Foundation")]
752 impl DWRITE_FONT_METRICS1 {}
753 #[cfg(feature = "Win32_Foundation")]
754 impl ::std::default::Default for DWRITE_FONT_METRICS1 {
default() -> Self755 fn default() -> Self {
756 unsafe { ::std::mem::zeroed() }
757 }
758 }
759 #[cfg(feature = "Win32_Foundation")]
760 impl ::std::fmt::Debug for DWRITE_FONT_METRICS1 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result761 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
762 fmt.debug_struct("DWRITE_FONT_METRICS1")
763 .field("__AnonymousBase_DWrite_1_L627_C38", &self.__AnonymousBase_DWrite_1_L627_C38)
764 .field("glyphBoxLeft", &self.glyphBoxLeft)
765 .field("glyphBoxTop", &self.glyphBoxTop)
766 .field("glyphBoxRight", &self.glyphBoxRight)
767 .field("glyphBoxBottom", &self.glyphBoxBottom)
768 .field("subscriptPositionX", &self.subscriptPositionX)
769 .field("subscriptPositionY", &self.subscriptPositionY)
770 .field("subscriptSizeX", &self.subscriptSizeX)
771 .field("subscriptSizeY", &self.subscriptSizeY)
772 .field("superscriptPositionX", &self.superscriptPositionX)
773 .field("superscriptPositionY", &self.superscriptPositionY)
774 .field("superscriptSizeX", &self.superscriptSizeX)
775 .field("superscriptSizeY", &self.superscriptSizeY)
776 .field("hasTypographicMetrics", &self.hasTypographicMetrics)
777 .finish()
778 }
779 }
780 #[cfg(feature = "Win32_Foundation")]
781 impl ::std::cmp::PartialEq for DWRITE_FONT_METRICS1 {
eq(&self, other: &Self) -> bool782 fn eq(&self, other: &Self) -> bool {
783 self.__AnonymousBase_DWrite_1_L627_C38 == other.__AnonymousBase_DWrite_1_L627_C38
784 && self.glyphBoxLeft == other.glyphBoxLeft
785 && self.glyphBoxTop == other.glyphBoxTop
786 && self.glyphBoxRight == other.glyphBoxRight
787 && self.glyphBoxBottom == other.glyphBoxBottom
788 && self.subscriptPositionX == other.subscriptPositionX
789 && self.subscriptPositionY == other.subscriptPositionY
790 && self.subscriptSizeX == other.subscriptSizeX
791 && self.subscriptSizeY == other.subscriptSizeY
792 && self.superscriptPositionX == other.superscriptPositionX
793 && self.superscriptPositionY == other.superscriptPositionY
794 && self.superscriptSizeX == other.superscriptSizeX
795 && self.superscriptSizeY == other.superscriptSizeY
796 && self.hasTypographicMetrics == other.hasTypographicMetrics
797 }
798 }
799 #[cfg(feature = "Win32_Foundation")]
800 impl ::std::cmp::Eq for DWRITE_FONT_METRICS1 {}
801 #[cfg(feature = "Win32_Foundation")]
802 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_METRICS1 {
803 type Abi = Self;
804 type DefaultType = Self;
805 }
806 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
807 #[repr(C)]
808 #[cfg(feature = "Win32_Foundation")]
809 pub struct DWRITE_FONT_PROPERTY {
810 pub propertyId: DWRITE_FONT_PROPERTY_ID,
811 pub propertyValue: super::super::Foundation::PWSTR,
812 pub localeName: super::super::Foundation::PWSTR,
813 }
814 #[cfg(feature = "Win32_Foundation")]
815 impl DWRITE_FONT_PROPERTY {}
816 #[cfg(feature = "Win32_Foundation")]
817 impl ::std::default::Default for DWRITE_FONT_PROPERTY {
default() -> Self818 fn default() -> Self {
819 unsafe { ::std::mem::zeroed() }
820 }
821 }
822 #[cfg(feature = "Win32_Foundation")]
823 impl ::std::fmt::Debug for DWRITE_FONT_PROPERTY {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result824 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
825 fmt.debug_struct("DWRITE_FONT_PROPERTY").field("propertyId", &self.propertyId).field("propertyValue", &self.propertyValue).field("localeName", &self.localeName).finish()
826 }
827 }
828 #[cfg(feature = "Win32_Foundation")]
829 impl ::std::cmp::PartialEq for DWRITE_FONT_PROPERTY {
eq(&self, other: &Self) -> bool830 fn eq(&self, other: &Self) -> bool {
831 self.propertyId == other.propertyId && self.propertyValue == other.propertyValue && self.localeName == other.localeName
832 }
833 }
834 #[cfg(feature = "Win32_Foundation")]
835 impl ::std::cmp::Eq for DWRITE_FONT_PROPERTY {}
836 #[cfg(feature = "Win32_Foundation")]
837 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_PROPERTY {
838 type Abi = Self;
839 type DefaultType = Self;
840 }
841 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
842 #[repr(transparent)]
843 pub struct DWRITE_FONT_PROPERTY_ID(pub i32);
844 pub const DWRITE_FONT_PROPERTY_ID_NONE: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(0i32);
845 pub const DWRITE_FONT_PROPERTY_ID_WEIGHT_STRETCH_STYLE_FAMILY_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(1i32);
846 pub const DWRITE_FONT_PROPERTY_ID_TYPOGRAPHIC_FAMILY_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(2i32);
847 pub const DWRITE_FONT_PROPERTY_ID_WEIGHT_STRETCH_STYLE_FACE_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(3i32);
848 pub const DWRITE_FONT_PROPERTY_ID_FULL_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(4i32);
849 pub const DWRITE_FONT_PROPERTY_ID_WIN32_FAMILY_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(5i32);
850 pub const DWRITE_FONT_PROPERTY_ID_POSTSCRIPT_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(6i32);
851 pub const DWRITE_FONT_PROPERTY_ID_DESIGN_SCRIPT_LANGUAGE_TAG: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(7i32);
852 pub const DWRITE_FONT_PROPERTY_ID_SUPPORTED_SCRIPT_LANGUAGE_TAG: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(8i32);
853 pub const DWRITE_FONT_PROPERTY_ID_SEMANTIC_TAG: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(9i32);
854 pub const DWRITE_FONT_PROPERTY_ID_WEIGHT: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(10i32);
855 pub const DWRITE_FONT_PROPERTY_ID_STRETCH: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(11i32);
856 pub const DWRITE_FONT_PROPERTY_ID_STYLE: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(12i32);
857 pub const DWRITE_FONT_PROPERTY_ID_TYPOGRAPHIC_FACE_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(13i32);
858 pub const DWRITE_FONT_PROPERTY_ID_TOTAL: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(13i32);
859 pub const DWRITE_FONT_PROPERTY_ID_TOTAL_RS3: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(14i32);
860 pub const DWRITE_FONT_PROPERTY_ID_PREFERRED_FAMILY_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(2i32);
861 pub const DWRITE_FONT_PROPERTY_ID_FAMILY_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(1i32);
862 pub const DWRITE_FONT_PROPERTY_ID_FACE_NAME: DWRITE_FONT_PROPERTY_ID = DWRITE_FONT_PROPERTY_ID(3i32);
863 impl ::std::convert::From<i32> for DWRITE_FONT_PROPERTY_ID {
from(value: i32) -> Self864 fn from(value: i32) -> Self {
865 Self(value)
866 }
867 }
868 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_PROPERTY_ID {
869 type Abi = Self;
870 type DefaultType = Self;
871 }
872 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
873 #[repr(transparent)]
874 pub struct DWRITE_FONT_SIMULATIONS(pub u32);
875 pub const DWRITE_FONT_SIMULATIONS_NONE: DWRITE_FONT_SIMULATIONS = DWRITE_FONT_SIMULATIONS(0u32);
876 pub const DWRITE_FONT_SIMULATIONS_BOLD: DWRITE_FONT_SIMULATIONS = DWRITE_FONT_SIMULATIONS(1u32);
877 pub const DWRITE_FONT_SIMULATIONS_OBLIQUE: DWRITE_FONT_SIMULATIONS = DWRITE_FONT_SIMULATIONS(2u32);
878 impl ::std::convert::From<u32> for DWRITE_FONT_SIMULATIONS {
from(value: u32) -> Self879 fn from(value: u32) -> Self {
880 Self(value)
881 }
882 }
883 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_SIMULATIONS {
884 type Abi = Self;
885 type DefaultType = Self;
886 }
887 impl ::std::ops::BitOr for DWRITE_FONT_SIMULATIONS {
888 type Output = Self;
bitor(self, rhs: Self) -> Self889 fn bitor(self, rhs: Self) -> Self {
890 Self(self.0 | rhs.0)
891 }
892 }
893 impl ::std::ops::BitAnd for DWRITE_FONT_SIMULATIONS {
894 type Output = Self;
bitand(self, rhs: Self) -> Self895 fn bitand(self, rhs: Self) -> Self {
896 Self(self.0 & rhs.0)
897 }
898 }
899 impl ::std::ops::BitOrAssign for DWRITE_FONT_SIMULATIONS {
bitor_assign(&mut self, rhs: Self)900 fn bitor_assign(&mut self, rhs: Self) {
901 self.0.bitor_assign(rhs.0)
902 }
903 }
904 impl ::std::ops::BitAndAssign for DWRITE_FONT_SIMULATIONS {
bitand_assign(&mut self, rhs: Self)905 fn bitand_assign(&mut self, rhs: Self) {
906 self.0.bitand_assign(rhs.0)
907 }
908 }
909 impl ::std::ops::Not for DWRITE_FONT_SIMULATIONS {
910 type Output = Self;
not(self) -> Self911 fn not(self) -> Self {
912 Self(self.0.not())
913 }
914 }
915 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
916 #[repr(transparent)]
917 pub struct DWRITE_FONT_SOURCE_TYPE(pub i32);
918 pub const DWRITE_FONT_SOURCE_TYPE_UNKNOWN: DWRITE_FONT_SOURCE_TYPE = DWRITE_FONT_SOURCE_TYPE(0i32);
919 pub const DWRITE_FONT_SOURCE_TYPE_PER_MACHINE: DWRITE_FONT_SOURCE_TYPE = DWRITE_FONT_SOURCE_TYPE(1i32);
920 pub const DWRITE_FONT_SOURCE_TYPE_PER_USER: DWRITE_FONT_SOURCE_TYPE = DWRITE_FONT_SOURCE_TYPE(2i32);
921 pub const DWRITE_FONT_SOURCE_TYPE_APPX_PACKAGE: DWRITE_FONT_SOURCE_TYPE = DWRITE_FONT_SOURCE_TYPE(3i32);
922 pub const DWRITE_FONT_SOURCE_TYPE_REMOTE_FONT_PROVIDER: DWRITE_FONT_SOURCE_TYPE = DWRITE_FONT_SOURCE_TYPE(4i32);
923 impl ::std::convert::From<i32> for DWRITE_FONT_SOURCE_TYPE {
from(value: i32) -> Self924 fn from(value: i32) -> Self {
925 Self(value)
926 }
927 }
928 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_SOURCE_TYPE {
929 type Abi = Self;
930 type DefaultType = Self;
931 }
932 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
933 #[repr(transparent)]
934 pub struct DWRITE_FONT_STRETCH(pub i32);
935 pub const DWRITE_FONT_STRETCH_UNDEFINED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(0i32);
936 pub const DWRITE_FONT_STRETCH_ULTRA_CONDENSED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(1i32);
937 pub const DWRITE_FONT_STRETCH_EXTRA_CONDENSED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(2i32);
938 pub const DWRITE_FONT_STRETCH_CONDENSED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(3i32);
939 pub const DWRITE_FONT_STRETCH_SEMI_CONDENSED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(4i32);
940 pub const DWRITE_FONT_STRETCH_NORMAL: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(5i32);
941 pub const DWRITE_FONT_STRETCH_MEDIUM: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(5i32);
942 pub const DWRITE_FONT_STRETCH_SEMI_EXPANDED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(6i32);
943 pub const DWRITE_FONT_STRETCH_EXPANDED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(7i32);
944 pub const DWRITE_FONT_STRETCH_EXTRA_EXPANDED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(8i32);
945 pub const DWRITE_FONT_STRETCH_ULTRA_EXPANDED: DWRITE_FONT_STRETCH = DWRITE_FONT_STRETCH(9i32);
946 impl ::std::convert::From<i32> for DWRITE_FONT_STRETCH {
from(value: i32) -> Self947 fn from(value: i32) -> Self {
948 Self(value)
949 }
950 }
951 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_STRETCH {
952 type Abi = Self;
953 type DefaultType = Self;
954 }
955 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
956 #[repr(transparent)]
957 pub struct DWRITE_FONT_STYLE(pub i32);
958 pub const DWRITE_FONT_STYLE_NORMAL: DWRITE_FONT_STYLE = DWRITE_FONT_STYLE(0i32);
959 pub const DWRITE_FONT_STYLE_OBLIQUE: DWRITE_FONT_STYLE = DWRITE_FONT_STYLE(1i32);
960 pub const DWRITE_FONT_STYLE_ITALIC: DWRITE_FONT_STYLE = DWRITE_FONT_STYLE(2i32);
961 impl ::std::convert::From<i32> for DWRITE_FONT_STYLE {
from(value: i32) -> Self962 fn from(value: i32) -> Self {
963 Self(value)
964 }
965 }
966 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_STYLE {
967 type Abi = Self;
968 type DefaultType = Self;
969 }
970 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
971 #[repr(transparent)]
972 pub struct DWRITE_FONT_WEIGHT(pub i32);
973 pub const DWRITE_FONT_WEIGHT_THIN: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(100i32);
974 pub const DWRITE_FONT_WEIGHT_EXTRA_LIGHT: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(200i32);
975 pub const DWRITE_FONT_WEIGHT_ULTRA_LIGHT: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(200i32);
976 pub const DWRITE_FONT_WEIGHT_LIGHT: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(300i32);
977 pub const DWRITE_FONT_WEIGHT_SEMI_LIGHT: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(350i32);
978 pub const DWRITE_FONT_WEIGHT_NORMAL: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(400i32);
979 pub const DWRITE_FONT_WEIGHT_REGULAR: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(400i32);
980 pub const DWRITE_FONT_WEIGHT_MEDIUM: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(500i32);
981 pub const DWRITE_FONT_WEIGHT_DEMI_BOLD: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(600i32);
982 pub const DWRITE_FONT_WEIGHT_SEMI_BOLD: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(600i32);
983 pub const DWRITE_FONT_WEIGHT_BOLD: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(700i32);
984 pub const DWRITE_FONT_WEIGHT_EXTRA_BOLD: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(800i32);
985 pub const DWRITE_FONT_WEIGHT_ULTRA_BOLD: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(800i32);
986 pub const DWRITE_FONT_WEIGHT_BLACK: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(900i32);
987 pub const DWRITE_FONT_WEIGHT_HEAVY: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(900i32);
988 pub const DWRITE_FONT_WEIGHT_EXTRA_BLACK: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(950i32);
989 pub const DWRITE_FONT_WEIGHT_ULTRA_BLACK: DWRITE_FONT_WEIGHT = DWRITE_FONT_WEIGHT(950i32);
990 impl ::std::convert::From<i32> for DWRITE_FONT_WEIGHT {
from(value: i32) -> Self991 fn from(value: i32) -> Self {
992 Self(value)
993 }
994 }
995 unsafe impl ::windows::runtime::Abi for DWRITE_FONT_WEIGHT {
996 type Abi = Self;
997 type DefaultType = Self;
998 }
999 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1000 #[repr(C)]
1001 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
1002 pub struct DWRITE_GLYPH_IMAGE_DATA {
1003 pub imageData: *mut ::std::ffi::c_void,
1004 pub imageDataSize: u32,
1005 pub uniqueDataId: u32,
1006 pub pixelsPerEm: u32,
1007 pub pixelSize: super::Direct2D::D2D_SIZE_U,
1008 pub horizontalLeftOrigin: super::super::Foundation::POINT,
1009 pub horizontalRightOrigin: super::super::Foundation::POINT,
1010 pub verticalTopOrigin: super::super::Foundation::POINT,
1011 pub verticalBottomOrigin: super::super::Foundation::POINT,
1012 }
1013 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
1014 impl DWRITE_GLYPH_IMAGE_DATA {}
1015 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
1016 impl ::std::default::Default for DWRITE_GLYPH_IMAGE_DATA {
default() -> Self1017 fn default() -> Self {
1018 unsafe { ::std::mem::zeroed() }
1019 }
1020 }
1021 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
1022 impl ::std::fmt::Debug for DWRITE_GLYPH_IMAGE_DATA {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1023 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1024 fmt.debug_struct("DWRITE_GLYPH_IMAGE_DATA")
1025 .field("imageData", &self.imageData)
1026 .field("imageDataSize", &self.imageDataSize)
1027 .field("uniqueDataId", &self.uniqueDataId)
1028 .field("pixelsPerEm", &self.pixelsPerEm)
1029 .field("pixelSize", &self.pixelSize)
1030 .field("horizontalLeftOrigin", &self.horizontalLeftOrigin)
1031 .field("horizontalRightOrigin", &self.horizontalRightOrigin)
1032 .field("verticalTopOrigin", &self.verticalTopOrigin)
1033 .field("verticalBottomOrigin", &self.verticalBottomOrigin)
1034 .finish()
1035 }
1036 }
1037 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
1038 impl ::std::cmp::PartialEq for DWRITE_GLYPH_IMAGE_DATA {
eq(&self, other: &Self) -> bool1039 fn eq(&self, other: &Self) -> bool {
1040 self.imageData == other.imageData && self.imageDataSize == other.imageDataSize && self.uniqueDataId == other.uniqueDataId && self.pixelsPerEm == other.pixelsPerEm && self.pixelSize == other.pixelSize && self.horizontalLeftOrigin == other.horizontalLeftOrigin && self.horizontalRightOrigin == other.horizontalRightOrigin && self.verticalTopOrigin == other.verticalTopOrigin && self.verticalBottomOrigin == other.verticalBottomOrigin
1041 }
1042 }
1043 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
1044 impl ::std::cmp::Eq for DWRITE_GLYPH_IMAGE_DATA {}
1045 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
1046 unsafe impl ::windows::runtime::Abi for DWRITE_GLYPH_IMAGE_DATA {
1047 type Abi = Self;
1048 type DefaultType = Self;
1049 }
1050 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1051 #[repr(transparent)]
1052 pub struct DWRITE_GLYPH_IMAGE_FORMATS(pub u32);
1053 pub const DWRITE_GLYPH_IMAGE_FORMATS_NONE: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(0u32);
1054 pub const DWRITE_GLYPH_IMAGE_FORMATS_TRUETYPE: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(1u32);
1055 pub const DWRITE_GLYPH_IMAGE_FORMATS_CFF: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(2u32);
1056 pub const DWRITE_GLYPH_IMAGE_FORMATS_COLR: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(4u32);
1057 pub const DWRITE_GLYPH_IMAGE_FORMATS_SVG: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(8u32);
1058 pub const DWRITE_GLYPH_IMAGE_FORMATS_PNG: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(16u32);
1059 pub const DWRITE_GLYPH_IMAGE_FORMATS_JPEG: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(32u32);
1060 pub const DWRITE_GLYPH_IMAGE_FORMATS_TIFF: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(64u32);
1061 pub const DWRITE_GLYPH_IMAGE_FORMATS_PREMULTIPLIED_B8G8R8A8: DWRITE_GLYPH_IMAGE_FORMATS = DWRITE_GLYPH_IMAGE_FORMATS(128u32);
1062 impl ::std::convert::From<u32> for DWRITE_GLYPH_IMAGE_FORMATS {
from(value: u32) -> Self1063 fn from(value: u32) -> Self {
1064 Self(value)
1065 }
1066 }
1067 unsafe impl ::windows::runtime::Abi for DWRITE_GLYPH_IMAGE_FORMATS {
1068 type Abi = Self;
1069 type DefaultType = Self;
1070 }
1071 impl ::std::ops::BitOr for DWRITE_GLYPH_IMAGE_FORMATS {
1072 type Output = Self;
bitor(self, rhs: Self) -> Self1073 fn bitor(self, rhs: Self) -> Self {
1074 Self(self.0 | rhs.0)
1075 }
1076 }
1077 impl ::std::ops::BitAnd for DWRITE_GLYPH_IMAGE_FORMATS {
1078 type Output = Self;
bitand(self, rhs: Self) -> Self1079 fn bitand(self, rhs: Self) -> Self {
1080 Self(self.0 & rhs.0)
1081 }
1082 }
1083 impl ::std::ops::BitOrAssign for DWRITE_GLYPH_IMAGE_FORMATS {
bitor_assign(&mut self, rhs: Self)1084 fn bitor_assign(&mut self, rhs: Self) {
1085 self.0.bitor_assign(rhs.0)
1086 }
1087 }
1088 impl ::std::ops::BitAndAssign for DWRITE_GLYPH_IMAGE_FORMATS {
bitand_assign(&mut self, rhs: Self)1089 fn bitand_assign(&mut self, rhs: Self) {
1090 self.0.bitand_assign(rhs.0)
1091 }
1092 }
1093 impl ::std::ops::Not for DWRITE_GLYPH_IMAGE_FORMATS {
1094 type Output = Self;
not(self) -> Self1095 fn not(self) -> Self {
1096 Self(self.0.not())
1097 }
1098 }
1099 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1100 #[repr(C)]
1101 pub struct DWRITE_GLYPH_METRICS {
1102 pub leftSideBearing: i32,
1103 pub advanceWidth: u32,
1104 pub rightSideBearing: i32,
1105 pub topSideBearing: i32,
1106 pub advanceHeight: u32,
1107 pub bottomSideBearing: i32,
1108 pub verticalOriginY: i32,
1109 }
1110 impl DWRITE_GLYPH_METRICS {}
1111 impl ::std::default::Default for DWRITE_GLYPH_METRICS {
default() -> Self1112 fn default() -> Self {
1113 unsafe { ::std::mem::zeroed() }
1114 }
1115 }
1116 impl ::std::fmt::Debug for DWRITE_GLYPH_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1117 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1118 fmt.debug_struct("DWRITE_GLYPH_METRICS")
1119 .field("leftSideBearing", &self.leftSideBearing)
1120 .field("advanceWidth", &self.advanceWidth)
1121 .field("rightSideBearing", &self.rightSideBearing)
1122 .field("topSideBearing", &self.topSideBearing)
1123 .field("advanceHeight", &self.advanceHeight)
1124 .field("bottomSideBearing", &self.bottomSideBearing)
1125 .field("verticalOriginY", &self.verticalOriginY)
1126 .finish()
1127 }
1128 }
1129 impl ::std::cmp::PartialEq for DWRITE_GLYPH_METRICS {
eq(&self, other: &Self) -> bool1130 fn eq(&self, other: &Self) -> bool {
1131 self.leftSideBearing == other.leftSideBearing && self.advanceWidth == other.advanceWidth && self.rightSideBearing == other.rightSideBearing && self.topSideBearing == other.topSideBearing && self.advanceHeight == other.advanceHeight && self.bottomSideBearing == other.bottomSideBearing && self.verticalOriginY == other.verticalOriginY
1132 }
1133 }
1134 impl ::std::cmp::Eq for DWRITE_GLYPH_METRICS {}
1135 unsafe impl ::windows::runtime::Abi for DWRITE_GLYPH_METRICS {
1136 type Abi = Self;
1137 type DefaultType = Self;
1138 }
1139 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1140 #[repr(C)]
1141 pub struct DWRITE_GLYPH_OFFSET {
1142 pub advanceOffset: f32,
1143 pub ascenderOffset: f32,
1144 }
1145 impl DWRITE_GLYPH_OFFSET {}
1146 impl ::std::default::Default for DWRITE_GLYPH_OFFSET {
default() -> Self1147 fn default() -> Self {
1148 unsafe { ::std::mem::zeroed() }
1149 }
1150 }
1151 impl ::std::fmt::Debug for DWRITE_GLYPH_OFFSET {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1152 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1153 fmt.debug_struct("DWRITE_GLYPH_OFFSET").field("advanceOffset", &self.advanceOffset).field("ascenderOffset", &self.ascenderOffset).finish()
1154 }
1155 }
1156 impl ::std::cmp::PartialEq for DWRITE_GLYPH_OFFSET {
eq(&self, other: &Self) -> bool1157 fn eq(&self, other: &Self) -> bool {
1158 self.advanceOffset == other.advanceOffset && self.ascenderOffset == other.ascenderOffset
1159 }
1160 }
1161 impl ::std::cmp::Eq for DWRITE_GLYPH_OFFSET {}
1162 unsafe impl ::windows::runtime::Abi for DWRITE_GLYPH_OFFSET {
1163 type Abi = Self;
1164 type DefaultType = Self;
1165 }
1166 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1167 #[repr(transparent)]
1168 pub struct DWRITE_GLYPH_ORIENTATION_ANGLE(pub i32);
1169 pub const DWRITE_GLYPH_ORIENTATION_ANGLE_0_DEGREES: DWRITE_GLYPH_ORIENTATION_ANGLE = DWRITE_GLYPH_ORIENTATION_ANGLE(0i32);
1170 pub const DWRITE_GLYPH_ORIENTATION_ANGLE_90_DEGREES: DWRITE_GLYPH_ORIENTATION_ANGLE = DWRITE_GLYPH_ORIENTATION_ANGLE(1i32);
1171 pub const DWRITE_GLYPH_ORIENTATION_ANGLE_180_DEGREES: DWRITE_GLYPH_ORIENTATION_ANGLE = DWRITE_GLYPH_ORIENTATION_ANGLE(2i32);
1172 pub const DWRITE_GLYPH_ORIENTATION_ANGLE_270_DEGREES: DWRITE_GLYPH_ORIENTATION_ANGLE = DWRITE_GLYPH_ORIENTATION_ANGLE(3i32);
1173 impl ::std::convert::From<i32> for DWRITE_GLYPH_ORIENTATION_ANGLE {
from(value: i32) -> Self1174 fn from(value: i32) -> Self {
1175 Self(value)
1176 }
1177 }
1178 unsafe impl ::windows::runtime::Abi for DWRITE_GLYPH_ORIENTATION_ANGLE {
1179 type Abi = Self;
1180 type DefaultType = Self;
1181 }
1182 #[derive(:: std :: clone :: Clone)]
1183 #[repr(C)]
1184 #[cfg(feature = "Win32_Foundation")]
1185 pub struct DWRITE_GLYPH_RUN {
1186 pub fontFace: ::std::option::Option<IDWriteFontFace>,
1187 pub fontEmSize: f32,
1188 pub glyphCount: u32,
1189 pub glyphIndices: *mut u16,
1190 pub glyphAdvances: *mut f32,
1191 pub glyphOffsets: *mut DWRITE_GLYPH_OFFSET,
1192 pub isSideways: super::super::Foundation::BOOL,
1193 pub bidiLevel: u32,
1194 }
1195 #[cfg(feature = "Win32_Foundation")]
1196 impl DWRITE_GLYPH_RUN {}
1197 #[cfg(feature = "Win32_Foundation")]
1198 impl ::std::default::Default for DWRITE_GLYPH_RUN {
default() -> Self1199 fn default() -> Self {
1200 unsafe { ::std::mem::zeroed() }
1201 }
1202 }
1203 #[cfg(feature = "Win32_Foundation")]
1204 impl ::std::fmt::Debug for DWRITE_GLYPH_RUN {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1205 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1206 fmt.debug_struct("DWRITE_GLYPH_RUN")
1207 .field("fontFace", &self.fontFace)
1208 .field("fontEmSize", &self.fontEmSize)
1209 .field("glyphCount", &self.glyphCount)
1210 .field("glyphIndices", &self.glyphIndices)
1211 .field("glyphAdvances", &self.glyphAdvances)
1212 .field("glyphOffsets", &self.glyphOffsets)
1213 .field("isSideways", &self.isSideways)
1214 .field("bidiLevel", &self.bidiLevel)
1215 .finish()
1216 }
1217 }
1218 #[cfg(feature = "Win32_Foundation")]
1219 impl ::std::cmp::PartialEq for DWRITE_GLYPH_RUN {
eq(&self, other: &Self) -> bool1220 fn eq(&self, other: &Self) -> bool {
1221 self.fontFace == other.fontFace && self.fontEmSize == other.fontEmSize && self.glyphCount == other.glyphCount && self.glyphIndices == other.glyphIndices && self.glyphAdvances == other.glyphAdvances && self.glyphOffsets == other.glyphOffsets && self.isSideways == other.isSideways && self.bidiLevel == other.bidiLevel
1222 }
1223 }
1224 #[cfg(feature = "Win32_Foundation")]
1225 impl ::std::cmp::Eq for DWRITE_GLYPH_RUN {}
1226 #[cfg(feature = "Win32_Foundation")]
1227 unsafe impl ::windows::runtime::Abi for DWRITE_GLYPH_RUN {
1228 type Abi = ::std::mem::ManuallyDrop<Self>;
1229 type DefaultType = Self;
1230 }
1231 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1232 #[repr(C)]
1233 #[cfg(feature = "Win32_Foundation")]
1234 pub struct DWRITE_GLYPH_RUN_DESCRIPTION {
1235 pub localeName: super::super::Foundation::PWSTR,
1236 pub string: super::super::Foundation::PWSTR,
1237 pub stringLength: u32,
1238 pub clusterMap: *mut u16,
1239 pub textPosition: u32,
1240 }
1241 #[cfg(feature = "Win32_Foundation")]
1242 impl DWRITE_GLYPH_RUN_DESCRIPTION {}
1243 #[cfg(feature = "Win32_Foundation")]
1244 impl ::std::default::Default for DWRITE_GLYPH_RUN_DESCRIPTION {
default() -> Self1245 fn default() -> Self {
1246 unsafe { ::std::mem::zeroed() }
1247 }
1248 }
1249 #[cfg(feature = "Win32_Foundation")]
1250 impl ::std::fmt::Debug for DWRITE_GLYPH_RUN_DESCRIPTION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1251 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1252 fmt.debug_struct("DWRITE_GLYPH_RUN_DESCRIPTION").field("localeName", &self.localeName).field("string", &self.string).field("stringLength", &self.stringLength).field("clusterMap", &self.clusterMap).field("textPosition", &self.textPosition).finish()
1253 }
1254 }
1255 #[cfg(feature = "Win32_Foundation")]
1256 impl ::std::cmp::PartialEq for DWRITE_GLYPH_RUN_DESCRIPTION {
eq(&self, other: &Self) -> bool1257 fn eq(&self, other: &Self) -> bool {
1258 self.localeName == other.localeName && self.string == other.string && self.stringLength == other.stringLength && self.clusterMap == other.clusterMap && self.textPosition == other.textPosition
1259 }
1260 }
1261 #[cfg(feature = "Win32_Foundation")]
1262 impl ::std::cmp::Eq for DWRITE_GLYPH_RUN_DESCRIPTION {}
1263 #[cfg(feature = "Win32_Foundation")]
1264 unsafe impl ::windows::runtime::Abi for DWRITE_GLYPH_RUN_DESCRIPTION {
1265 type Abi = Self;
1266 type DefaultType = Self;
1267 }
1268 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1269 #[repr(transparent)]
1270 pub struct DWRITE_GRID_FIT_MODE(pub i32);
1271 pub const DWRITE_GRID_FIT_MODE_DEFAULT: DWRITE_GRID_FIT_MODE = DWRITE_GRID_FIT_MODE(0i32);
1272 pub const DWRITE_GRID_FIT_MODE_DISABLED: DWRITE_GRID_FIT_MODE = DWRITE_GRID_FIT_MODE(1i32);
1273 pub const DWRITE_GRID_FIT_MODE_ENABLED: DWRITE_GRID_FIT_MODE = DWRITE_GRID_FIT_MODE(2i32);
1274 impl ::std::convert::From<i32> for DWRITE_GRID_FIT_MODE {
from(value: i32) -> Self1275 fn from(value: i32) -> Self {
1276 Self(value)
1277 }
1278 }
1279 unsafe impl ::windows::runtime::Abi for DWRITE_GRID_FIT_MODE {
1280 type Abi = Self;
1281 type DefaultType = Self;
1282 }
1283 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1284 #[repr(C)]
1285 #[cfg(feature = "Win32_Foundation")]
1286 pub struct DWRITE_HIT_TEST_METRICS {
1287 pub textPosition: u32,
1288 pub length: u32,
1289 pub left: f32,
1290 pub top: f32,
1291 pub width: f32,
1292 pub height: f32,
1293 pub bidiLevel: u32,
1294 pub isText: super::super::Foundation::BOOL,
1295 pub isTrimmed: super::super::Foundation::BOOL,
1296 }
1297 #[cfg(feature = "Win32_Foundation")]
1298 impl DWRITE_HIT_TEST_METRICS {}
1299 #[cfg(feature = "Win32_Foundation")]
1300 impl ::std::default::Default for DWRITE_HIT_TEST_METRICS {
default() -> Self1301 fn default() -> Self {
1302 unsafe { ::std::mem::zeroed() }
1303 }
1304 }
1305 #[cfg(feature = "Win32_Foundation")]
1306 impl ::std::fmt::Debug for DWRITE_HIT_TEST_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1307 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1308 fmt.debug_struct("DWRITE_HIT_TEST_METRICS")
1309 .field("textPosition", &self.textPosition)
1310 .field("length", &self.length)
1311 .field("left", &self.left)
1312 .field("top", &self.top)
1313 .field("width", &self.width)
1314 .field("height", &self.height)
1315 .field("bidiLevel", &self.bidiLevel)
1316 .field("isText", &self.isText)
1317 .field("isTrimmed", &self.isTrimmed)
1318 .finish()
1319 }
1320 }
1321 #[cfg(feature = "Win32_Foundation")]
1322 impl ::std::cmp::PartialEq for DWRITE_HIT_TEST_METRICS {
eq(&self, other: &Self) -> bool1323 fn eq(&self, other: &Self) -> bool {
1324 self.textPosition == other.textPosition && self.length == other.length && self.left == other.left && self.top == other.top && self.width == other.width && self.height == other.height && self.bidiLevel == other.bidiLevel && self.isText == other.isText && self.isTrimmed == other.isTrimmed
1325 }
1326 }
1327 #[cfg(feature = "Win32_Foundation")]
1328 impl ::std::cmp::Eq for DWRITE_HIT_TEST_METRICS {}
1329 #[cfg(feature = "Win32_Foundation")]
1330 unsafe impl ::windows::runtime::Abi for DWRITE_HIT_TEST_METRICS {
1331 type Abi = Self;
1332 type DefaultType = Self;
1333 }
1334 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1335 #[repr(transparent)]
1336 pub struct DWRITE_INFORMATIONAL_STRING_ID(pub i32);
1337 pub const DWRITE_INFORMATIONAL_STRING_NONE: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(0i32);
1338 pub const DWRITE_INFORMATIONAL_STRING_COPYRIGHT_NOTICE: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(1i32);
1339 pub const DWRITE_INFORMATIONAL_STRING_VERSION_STRINGS: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(2i32);
1340 pub const DWRITE_INFORMATIONAL_STRING_TRADEMARK: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(3i32);
1341 pub const DWRITE_INFORMATIONAL_STRING_MANUFACTURER: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(4i32);
1342 pub const DWRITE_INFORMATIONAL_STRING_DESIGNER: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(5i32);
1343 pub const DWRITE_INFORMATIONAL_STRING_DESIGNER_URL: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(6i32);
1344 pub const DWRITE_INFORMATIONAL_STRING_DESCRIPTION: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(7i32);
1345 pub const DWRITE_INFORMATIONAL_STRING_FONT_VENDOR_URL: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(8i32);
1346 pub const DWRITE_INFORMATIONAL_STRING_LICENSE_DESCRIPTION: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(9i32);
1347 pub const DWRITE_INFORMATIONAL_STRING_LICENSE_INFO_URL: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(10i32);
1348 pub const DWRITE_INFORMATIONAL_STRING_WIN32_FAMILY_NAMES: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(11i32);
1349 pub const DWRITE_INFORMATIONAL_STRING_WIN32_SUBFAMILY_NAMES: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(12i32);
1350 pub const DWRITE_INFORMATIONAL_STRING_TYPOGRAPHIC_FAMILY_NAMES: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(13i32);
1351 pub const DWRITE_INFORMATIONAL_STRING_TYPOGRAPHIC_SUBFAMILY_NAMES: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(14i32);
1352 pub const DWRITE_INFORMATIONAL_STRING_SAMPLE_TEXT: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(15i32);
1353 pub const DWRITE_INFORMATIONAL_STRING_FULL_NAME: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(16i32);
1354 pub const DWRITE_INFORMATIONAL_STRING_POSTSCRIPT_NAME: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(17i32);
1355 pub const DWRITE_INFORMATIONAL_STRING_POSTSCRIPT_CID_NAME: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(18i32);
1356 pub const DWRITE_INFORMATIONAL_STRING_WEIGHT_STRETCH_STYLE_FAMILY_NAME: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(19i32);
1357 pub const DWRITE_INFORMATIONAL_STRING_DESIGN_SCRIPT_LANGUAGE_TAG: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(20i32);
1358 pub const DWRITE_INFORMATIONAL_STRING_SUPPORTED_SCRIPT_LANGUAGE_TAG: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(21i32);
1359 pub const DWRITE_INFORMATIONAL_STRING_PREFERRED_FAMILY_NAMES: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(13i32);
1360 pub const DWRITE_INFORMATIONAL_STRING_PREFERRED_SUBFAMILY_NAMES: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(14i32);
1361 pub const DWRITE_INFORMATIONAL_STRING_WWS_FAMILY_NAME: DWRITE_INFORMATIONAL_STRING_ID = DWRITE_INFORMATIONAL_STRING_ID(19i32);
1362 impl ::std::convert::From<i32> for DWRITE_INFORMATIONAL_STRING_ID {
from(value: i32) -> Self1363 fn from(value: i32) -> Self {
1364 Self(value)
1365 }
1366 }
1367 unsafe impl ::windows::runtime::Abi for DWRITE_INFORMATIONAL_STRING_ID {
1368 type Abi = Self;
1369 type DefaultType = Self;
1370 }
1371 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1372 #[repr(C)]
1373 #[cfg(feature = "Win32_Foundation")]
1374 pub struct DWRITE_INLINE_OBJECT_METRICS {
1375 pub width: f32,
1376 pub height: f32,
1377 pub baseline: f32,
1378 pub supportsSideways: super::super::Foundation::BOOL,
1379 }
1380 #[cfg(feature = "Win32_Foundation")]
1381 impl DWRITE_INLINE_OBJECT_METRICS {}
1382 #[cfg(feature = "Win32_Foundation")]
1383 impl ::std::default::Default for DWRITE_INLINE_OBJECT_METRICS {
default() -> Self1384 fn default() -> Self {
1385 unsafe { ::std::mem::zeroed() }
1386 }
1387 }
1388 #[cfg(feature = "Win32_Foundation")]
1389 impl ::std::fmt::Debug for DWRITE_INLINE_OBJECT_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1390 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1391 fmt.debug_struct("DWRITE_INLINE_OBJECT_METRICS").field("width", &self.width).field("height", &self.height).field("baseline", &self.baseline).field("supportsSideways", &self.supportsSideways).finish()
1392 }
1393 }
1394 #[cfg(feature = "Win32_Foundation")]
1395 impl ::std::cmp::PartialEq for DWRITE_INLINE_OBJECT_METRICS {
eq(&self, other: &Self) -> bool1396 fn eq(&self, other: &Self) -> bool {
1397 self.width == other.width && self.height == other.height && self.baseline == other.baseline && self.supportsSideways == other.supportsSideways
1398 }
1399 }
1400 #[cfg(feature = "Win32_Foundation")]
1401 impl ::std::cmp::Eq for DWRITE_INLINE_OBJECT_METRICS {}
1402 #[cfg(feature = "Win32_Foundation")]
1403 unsafe impl ::windows::runtime::Abi for DWRITE_INLINE_OBJECT_METRICS {
1404 type Abi = Self;
1405 type DefaultType = Self;
1406 }
1407 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1408 #[repr(C)]
1409 pub struct DWRITE_JUSTIFICATION_OPPORTUNITY {
1410 pub expansionMinimum: f32,
1411 pub expansionMaximum: f32,
1412 pub compressionMaximum: f32,
1413 pub _bitfield: u32,
1414 }
1415 impl DWRITE_JUSTIFICATION_OPPORTUNITY {}
1416 impl ::std::default::Default for DWRITE_JUSTIFICATION_OPPORTUNITY {
default() -> Self1417 fn default() -> Self {
1418 unsafe { ::std::mem::zeroed() }
1419 }
1420 }
1421 impl ::std::fmt::Debug for DWRITE_JUSTIFICATION_OPPORTUNITY {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1422 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1423 fmt.debug_struct("DWRITE_JUSTIFICATION_OPPORTUNITY").field("expansionMinimum", &self.expansionMinimum).field("expansionMaximum", &self.expansionMaximum).field("compressionMaximum", &self.compressionMaximum).field("_bitfield", &self._bitfield).finish()
1424 }
1425 }
1426 impl ::std::cmp::PartialEq for DWRITE_JUSTIFICATION_OPPORTUNITY {
eq(&self, other: &Self) -> bool1427 fn eq(&self, other: &Self) -> bool {
1428 self.expansionMinimum == other.expansionMinimum && self.expansionMaximum == other.expansionMaximum && self.compressionMaximum == other.compressionMaximum && self._bitfield == other._bitfield
1429 }
1430 }
1431 impl ::std::cmp::Eq for DWRITE_JUSTIFICATION_OPPORTUNITY {}
1432 unsafe impl ::windows::runtime::Abi for DWRITE_JUSTIFICATION_OPPORTUNITY {
1433 type Abi = Self;
1434 type DefaultType = Self;
1435 }
1436 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1437 #[repr(C)]
1438 pub struct DWRITE_LINE_BREAKPOINT {
1439 pub _bitfield: u8,
1440 }
1441 impl DWRITE_LINE_BREAKPOINT {}
1442 impl ::std::default::Default for DWRITE_LINE_BREAKPOINT {
default() -> Self1443 fn default() -> Self {
1444 unsafe { ::std::mem::zeroed() }
1445 }
1446 }
1447 impl ::std::fmt::Debug for DWRITE_LINE_BREAKPOINT {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1448 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1449 fmt.debug_struct("DWRITE_LINE_BREAKPOINT").field("_bitfield", &self._bitfield).finish()
1450 }
1451 }
1452 impl ::std::cmp::PartialEq for DWRITE_LINE_BREAKPOINT {
eq(&self, other: &Self) -> bool1453 fn eq(&self, other: &Self) -> bool {
1454 self._bitfield == other._bitfield
1455 }
1456 }
1457 impl ::std::cmp::Eq for DWRITE_LINE_BREAKPOINT {}
1458 unsafe impl ::windows::runtime::Abi for DWRITE_LINE_BREAKPOINT {
1459 type Abi = Self;
1460 type DefaultType = Self;
1461 }
1462 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1463 #[repr(C)]
1464 #[cfg(feature = "Win32_Foundation")]
1465 pub struct DWRITE_LINE_METRICS {
1466 pub length: u32,
1467 pub trailingWhitespaceLength: u32,
1468 pub newlineLength: u32,
1469 pub height: f32,
1470 pub baseline: f32,
1471 pub isTrimmed: super::super::Foundation::BOOL,
1472 }
1473 #[cfg(feature = "Win32_Foundation")]
1474 impl DWRITE_LINE_METRICS {}
1475 #[cfg(feature = "Win32_Foundation")]
1476 impl ::std::default::Default for DWRITE_LINE_METRICS {
default() -> Self1477 fn default() -> Self {
1478 unsafe { ::std::mem::zeroed() }
1479 }
1480 }
1481 #[cfg(feature = "Win32_Foundation")]
1482 impl ::std::fmt::Debug for DWRITE_LINE_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1483 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1484 fmt.debug_struct("DWRITE_LINE_METRICS").field("length", &self.length).field("trailingWhitespaceLength", &self.trailingWhitespaceLength).field("newlineLength", &self.newlineLength).field("height", &self.height).field("baseline", &self.baseline).field("isTrimmed", &self.isTrimmed).finish()
1485 }
1486 }
1487 #[cfg(feature = "Win32_Foundation")]
1488 impl ::std::cmp::PartialEq for DWRITE_LINE_METRICS {
eq(&self, other: &Self) -> bool1489 fn eq(&self, other: &Self) -> bool {
1490 self.length == other.length && self.trailingWhitespaceLength == other.trailingWhitespaceLength && self.newlineLength == other.newlineLength && self.height == other.height && self.baseline == other.baseline && self.isTrimmed == other.isTrimmed
1491 }
1492 }
1493 #[cfg(feature = "Win32_Foundation")]
1494 impl ::std::cmp::Eq for DWRITE_LINE_METRICS {}
1495 #[cfg(feature = "Win32_Foundation")]
1496 unsafe impl ::windows::runtime::Abi for DWRITE_LINE_METRICS {
1497 type Abi = Self;
1498 type DefaultType = Self;
1499 }
1500 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1501 #[repr(C)]
1502 #[cfg(feature = "Win32_Foundation")]
1503 pub struct DWRITE_LINE_METRICS1 {
1504 pub Base: DWRITE_LINE_METRICS,
1505 pub leadingBefore: f32,
1506 pub leadingAfter: f32,
1507 }
1508 #[cfg(feature = "Win32_Foundation")]
1509 impl DWRITE_LINE_METRICS1 {}
1510 #[cfg(feature = "Win32_Foundation")]
1511 impl ::std::default::Default for DWRITE_LINE_METRICS1 {
default() -> Self1512 fn default() -> Self {
1513 unsafe { ::std::mem::zeroed() }
1514 }
1515 }
1516 #[cfg(feature = "Win32_Foundation")]
1517 impl ::std::fmt::Debug for DWRITE_LINE_METRICS1 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1518 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1519 fmt.debug_struct("DWRITE_LINE_METRICS1").field("Base", &self.Base).field("leadingBefore", &self.leadingBefore).field("leadingAfter", &self.leadingAfter).finish()
1520 }
1521 }
1522 #[cfg(feature = "Win32_Foundation")]
1523 impl ::std::cmp::PartialEq for DWRITE_LINE_METRICS1 {
eq(&self, other: &Self) -> bool1524 fn eq(&self, other: &Self) -> bool {
1525 self.Base == other.Base && self.leadingBefore == other.leadingBefore && self.leadingAfter == other.leadingAfter
1526 }
1527 }
1528 #[cfg(feature = "Win32_Foundation")]
1529 impl ::std::cmp::Eq for DWRITE_LINE_METRICS1 {}
1530 #[cfg(feature = "Win32_Foundation")]
1531 unsafe impl ::windows::runtime::Abi for DWRITE_LINE_METRICS1 {
1532 type Abi = Self;
1533 type DefaultType = Self;
1534 }
1535 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1536 #[repr(C)]
1537 pub struct DWRITE_LINE_SPACING {
1538 pub method: DWRITE_LINE_SPACING_METHOD,
1539 pub height: f32,
1540 pub baseline: f32,
1541 pub leadingBefore: f32,
1542 pub fontLineGapUsage: DWRITE_FONT_LINE_GAP_USAGE,
1543 }
1544 impl DWRITE_LINE_SPACING {}
1545 impl ::std::default::Default for DWRITE_LINE_SPACING {
default() -> Self1546 fn default() -> Self {
1547 unsafe { ::std::mem::zeroed() }
1548 }
1549 }
1550 impl ::std::fmt::Debug for DWRITE_LINE_SPACING {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1551 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1552 fmt.debug_struct("DWRITE_LINE_SPACING").field("method", &self.method).field("height", &self.height).field("baseline", &self.baseline).field("leadingBefore", &self.leadingBefore).field("fontLineGapUsage", &self.fontLineGapUsage).finish()
1553 }
1554 }
1555 impl ::std::cmp::PartialEq for DWRITE_LINE_SPACING {
eq(&self, other: &Self) -> bool1556 fn eq(&self, other: &Self) -> bool {
1557 self.method == other.method && self.height == other.height && self.baseline == other.baseline && self.leadingBefore == other.leadingBefore && self.fontLineGapUsage == other.fontLineGapUsage
1558 }
1559 }
1560 impl ::std::cmp::Eq for DWRITE_LINE_SPACING {}
1561 unsafe impl ::windows::runtime::Abi for DWRITE_LINE_SPACING {
1562 type Abi = Self;
1563 type DefaultType = Self;
1564 }
1565 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1566 #[repr(transparent)]
1567 pub struct DWRITE_LINE_SPACING_METHOD(pub i32);
1568 pub const DWRITE_LINE_SPACING_METHOD_DEFAULT: DWRITE_LINE_SPACING_METHOD = DWRITE_LINE_SPACING_METHOD(0i32);
1569 pub const DWRITE_LINE_SPACING_METHOD_UNIFORM: DWRITE_LINE_SPACING_METHOD = DWRITE_LINE_SPACING_METHOD(1i32);
1570 pub const DWRITE_LINE_SPACING_METHOD_PROPORTIONAL: DWRITE_LINE_SPACING_METHOD = DWRITE_LINE_SPACING_METHOD(2i32);
1571 impl ::std::convert::From<i32> for DWRITE_LINE_SPACING_METHOD {
from(value: i32) -> Self1572 fn from(value: i32) -> Self {
1573 Self(value)
1574 }
1575 }
1576 unsafe impl ::windows::runtime::Abi for DWRITE_LINE_SPACING_METHOD {
1577 type Abi = Self;
1578 type DefaultType = Self;
1579 }
1580 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1581 #[repr(transparent)]
1582 pub struct DWRITE_LOCALITY(pub i32);
1583 pub const DWRITE_LOCALITY_REMOTE: DWRITE_LOCALITY = DWRITE_LOCALITY(0i32);
1584 pub const DWRITE_LOCALITY_PARTIAL: DWRITE_LOCALITY = DWRITE_LOCALITY(1i32);
1585 pub const DWRITE_LOCALITY_LOCAL: DWRITE_LOCALITY = DWRITE_LOCALITY(2i32);
1586 impl ::std::convert::From<i32> for DWRITE_LOCALITY {
from(value: i32) -> Self1587 fn from(value: i32) -> Self {
1588 Self(value)
1589 }
1590 }
1591 unsafe impl ::windows::runtime::Abi for DWRITE_LOCALITY {
1592 type Abi = Self;
1593 type DefaultType = Self;
1594 }
1595 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1596 #[repr(C)]
1597 pub struct DWRITE_MATRIX {
1598 pub m11: f32,
1599 pub m12: f32,
1600 pub m21: f32,
1601 pub m22: f32,
1602 pub dx: f32,
1603 pub dy: f32,
1604 }
1605 impl DWRITE_MATRIX {}
1606 impl ::std::default::Default for DWRITE_MATRIX {
default() -> Self1607 fn default() -> Self {
1608 unsafe { ::std::mem::zeroed() }
1609 }
1610 }
1611 impl ::std::fmt::Debug for DWRITE_MATRIX {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1612 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1613 fmt.debug_struct("DWRITE_MATRIX").field("m11", &self.m11).field("m12", &self.m12).field("m21", &self.m21).field("m22", &self.m22).field("dx", &self.dx).field("dy", &self.dy).finish()
1614 }
1615 }
1616 impl ::std::cmp::PartialEq for DWRITE_MATRIX {
eq(&self, other: &Self) -> bool1617 fn eq(&self, other: &Self) -> bool {
1618 self.m11 == other.m11 && self.m12 == other.m12 && self.m21 == other.m21 && self.m22 == other.m22 && self.dx == other.dx && self.dy == other.dy
1619 }
1620 }
1621 impl ::std::cmp::Eq for DWRITE_MATRIX {}
1622 unsafe impl ::windows::runtime::Abi for DWRITE_MATRIX {
1623 type Abi = Self;
1624 type DefaultType = Self;
1625 }
1626 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1627 #[repr(transparent)]
1628 pub struct DWRITE_MEASURING_MODE(pub i32);
1629 pub const DWRITE_MEASURING_MODE_NATURAL: DWRITE_MEASURING_MODE = DWRITE_MEASURING_MODE(0i32);
1630 pub const DWRITE_MEASURING_MODE_GDI_CLASSIC: DWRITE_MEASURING_MODE = DWRITE_MEASURING_MODE(1i32);
1631 pub const DWRITE_MEASURING_MODE_GDI_NATURAL: DWRITE_MEASURING_MODE = DWRITE_MEASURING_MODE(2i32);
1632 impl ::std::convert::From<i32> for DWRITE_MEASURING_MODE {
from(value: i32) -> Self1633 fn from(value: i32) -> Self {
1634 Self(value)
1635 }
1636 }
1637 unsafe impl ::windows::runtime::Abi for DWRITE_MEASURING_MODE {
1638 type Abi = Self;
1639 type DefaultType = Self;
1640 }
1641 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1642 #[repr(transparent)]
1643 pub struct DWRITE_NUMBER_SUBSTITUTION_METHOD(pub i32);
1644 pub const DWRITE_NUMBER_SUBSTITUTION_METHOD_FROM_CULTURE: DWRITE_NUMBER_SUBSTITUTION_METHOD = DWRITE_NUMBER_SUBSTITUTION_METHOD(0i32);
1645 pub const DWRITE_NUMBER_SUBSTITUTION_METHOD_CONTEXTUAL: DWRITE_NUMBER_SUBSTITUTION_METHOD = DWRITE_NUMBER_SUBSTITUTION_METHOD(1i32);
1646 pub const DWRITE_NUMBER_SUBSTITUTION_METHOD_NONE: DWRITE_NUMBER_SUBSTITUTION_METHOD = DWRITE_NUMBER_SUBSTITUTION_METHOD(2i32);
1647 pub const DWRITE_NUMBER_SUBSTITUTION_METHOD_NATIONAL: DWRITE_NUMBER_SUBSTITUTION_METHOD = DWRITE_NUMBER_SUBSTITUTION_METHOD(3i32);
1648 pub const DWRITE_NUMBER_SUBSTITUTION_METHOD_TRADITIONAL: DWRITE_NUMBER_SUBSTITUTION_METHOD = DWRITE_NUMBER_SUBSTITUTION_METHOD(4i32);
1649 impl ::std::convert::From<i32> for DWRITE_NUMBER_SUBSTITUTION_METHOD {
from(value: i32) -> Self1650 fn from(value: i32) -> Self {
1651 Self(value)
1652 }
1653 }
1654 unsafe impl ::windows::runtime::Abi for DWRITE_NUMBER_SUBSTITUTION_METHOD {
1655 type Abi = Self;
1656 type DefaultType = Self;
1657 }
1658 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1659 #[repr(transparent)]
1660 pub struct DWRITE_OPTICAL_ALIGNMENT(pub i32);
1661 pub const DWRITE_OPTICAL_ALIGNMENT_NONE: DWRITE_OPTICAL_ALIGNMENT = DWRITE_OPTICAL_ALIGNMENT(0i32);
1662 pub const DWRITE_OPTICAL_ALIGNMENT_NO_SIDE_BEARINGS: DWRITE_OPTICAL_ALIGNMENT = DWRITE_OPTICAL_ALIGNMENT(1i32);
1663 impl ::std::convert::From<i32> for DWRITE_OPTICAL_ALIGNMENT {
from(value: i32) -> Self1664 fn from(value: i32) -> Self {
1665 Self(value)
1666 }
1667 }
1668 unsafe impl ::windows::runtime::Abi for DWRITE_OPTICAL_ALIGNMENT {
1669 type Abi = Self;
1670 type DefaultType = Self;
1671 }
1672 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1673 #[repr(transparent)]
1674 pub struct DWRITE_OUTLINE_THRESHOLD(pub i32);
1675 pub const DWRITE_OUTLINE_THRESHOLD_ANTIALIASED: DWRITE_OUTLINE_THRESHOLD = DWRITE_OUTLINE_THRESHOLD(0i32);
1676 pub const DWRITE_OUTLINE_THRESHOLD_ALIASED: DWRITE_OUTLINE_THRESHOLD = DWRITE_OUTLINE_THRESHOLD(1i32);
1677 impl ::std::convert::From<i32> for DWRITE_OUTLINE_THRESHOLD {
from(value: i32) -> Self1678 fn from(value: i32) -> Self {
1679 Self(value)
1680 }
1681 }
1682 unsafe impl ::windows::runtime::Abi for DWRITE_OUTLINE_THRESHOLD {
1683 type Abi = Self;
1684 type DefaultType = Self;
1685 }
1686 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1687 #[repr(C)]
1688 pub struct DWRITE_OVERHANG_METRICS {
1689 pub left: f32,
1690 pub top: f32,
1691 pub right: f32,
1692 pub bottom: f32,
1693 }
1694 impl DWRITE_OVERHANG_METRICS {}
1695 impl ::std::default::Default for DWRITE_OVERHANG_METRICS {
default() -> Self1696 fn default() -> Self {
1697 unsafe { ::std::mem::zeroed() }
1698 }
1699 }
1700 impl ::std::fmt::Debug for DWRITE_OVERHANG_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1701 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1702 fmt.debug_struct("DWRITE_OVERHANG_METRICS").field("left", &self.left).field("top", &self.top).field("right", &self.right).field("bottom", &self.bottom).finish()
1703 }
1704 }
1705 impl ::std::cmp::PartialEq for DWRITE_OVERHANG_METRICS {
eq(&self, other: &Self) -> bool1706 fn eq(&self, other: &Self) -> bool {
1707 self.left == other.left && self.top == other.top && self.right == other.right && self.bottom == other.bottom
1708 }
1709 }
1710 impl ::std::cmp::Eq for DWRITE_OVERHANG_METRICS {}
1711 unsafe impl ::windows::runtime::Abi for DWRITE_OVERHANG_METRICS {
1712 type Abi = Self;
1713 type DefaultType = Self;
1714 }
1715 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1716 #[repr(C)]
1717 pub union DWRITE_PANOSE {
1718 pub values: [u8; 10],
1719 pub familyKind: u8,
1720 pub text: DWRITE_PANOSE_3,
1721 pub script: DWRITE_PANOSE_1,
1722 pub decorative: DWRITE_PANOSE_0,
1723 pub symbol: DWRITE_PANOSE_2,
1724 }
1725 impl DWRITE_PANOSE {}
1726 impl ::std::default::Default for DWRITE_PANOSE {
default() -> Self1727 fn default() -> Self {
1728 unsafe { ::std::mem::zeroed() }
1729 }
1730 }
1731 impl ::std::cmp::PartialEq for DWRITE_PANOSE {
eq(&self, _other: &Self) -> bool1732 fn eq(&self, _other: &Self) -> bool {
1733 unimplemented!()
1734 }
1735 }
1736 impl ::std::cmp::Eq for DWRITE_PANOSE {}
1737 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE {
1738 type Abi = Self;
1739 type DefaultType = Self;
1740 }
1741 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1742 #[repr(C)]
1743 pub struct DWRITE_PANOSE_0 {
1744 pub familyKind: u8,
1745 pub decorativeClass: u8,
1746 pub weight: u8,
1747 pub aspect: u8,
1748 pub contrast: u8,
1749 pub serifVariant: u8,
1750 pub fill: u8,
1751 pub lining: u8,
1752 pub decorativeTopology: u8,
1753 pub characterRange: u8,
1754 }
1755 impl DWRITE_PANOSE_0 {}
1756 impl ::std::default::Default for DWRITE_PANOSE_0 {
default() -> Self1757 fn default() -> Self {
1758 unsafe { ::std::mem::zeroed() }
1759 }
1760 }
1761 impl ::std::fmt::Debug for DWRITE_PANOSE_0 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1762 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1763 fmt.debug_struct("_decorative_e__Struct")
1764 .field("familyKind", &self.familyKind)
1765 .field("decorativeClass", &self.decorativeClass)
1766 .field("weight", &self.weight)
1767 .field("aspect", &self.aspect)
1768 .field("contrast", &self.contrast)
1769 .field("serifVariant", &self.serifVariant)
1770 .field("fill", &self.fill)
1771 .field("lining", &self.lining)
1772 .field("decorativeTopology", &self.decorativeTopology)
1773 .field("characterRange", &self.characterRange)
1774 .finish()
1775 }
1776 }
1777 impl ::std::cmp::PartialEq for DWRITE_PANOSE_0 {
eq(&self, other: &Self) -> bool1778 fn eq(&self, other: &Self) -> bool {
1779 self.familyKind == other.familyKind && self.decorativeClass == other.decorativeClass && self.weight == other.weight && self.aspect == other.aspect && self.contrast == other.contrast && self.serifVariant == other.serifVariant && self.fill == other.fill && self.lining == other.lining && self.decorativeTopology == other.decorativeTopology && self.characterRange == other.characterRange
1780 }
1781 }
1782 impl ::std::cmp::Eq for DWRITE_PANOSE_0 {}
1783 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_0 {
1784 type Abi = Self;
1785 type DefaultType = Self;
1786 }
1787 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1788 #[repr(C)]
1789 pub struct DWRITE_PANOSE_1 {
1790 pub familyKind: u8,
1791 pub toolKind: u8,
1792 pub weight: u8,
1793 pub spacing: u8,
1794 pub aspectRatio: u8,
1795 pub contrast: u8,
1796 pub scriptTopology: u8,
1797 pub scriptForm: u8,
1798 pub finials: u8,
1799 pub xAscent: u8,
1800 }
1801 impl DWRITE_PANOSE_1 {}
1802 impl ::std::default::Default for DWRITE_PANOSE_1 {
default() -> Self1803 fn default() -> Self {
1804 unsafe { ::std::mem::zeroed() }
1805 }
1806 }
1807 impl ::std::fmt::Debug for DWRITE_PANOSE_1 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1808 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1809 fmt.debug_struct("_script_e__Struct")
1810 .field("familyKind", &self.familyKind)
1811 .field("toolKind", &self.toolKind)
1812 .field("weight", &self.weight)
1813 .field("spacing", &self.spacing)
1814 .field("aspectRatio", &self.aspectRatio)
1815 .field("contrast", &self.contrast)
1816 .field("scriptTopology", &self.scriptTopology)
1817 .field("scriptForm", &self.scriptForm)
1818 .field("finials", &self.finials)
1819 .field("xAscent", &self.xAscent)
1820 .finish()
1821 }
1822 }
1823 impl ::std::cmp::PartialEq for DWRITE_PANOSE_1 {
eq(&self, other: &Self) -> bool1824 fn eq(&self, other: &Self) -> bool {
1825 self.familyKind == other.familyKind && self.toolKind == other.toolKind && self.weight == other.weight && self.spacing == other.spacing && self.aspectRatio == other.aspectRatio && self.contrast == other.contrast && self.scriptTopology == other.scriptTopology && self.scriptForm == other.scriptForm && self.finials == other.finials && self.xAscent == other.xAscent
1826 }
1827 }
1828 impl ::std::cmp::Eq for DWRITE_PANOSE_1 {}
1829 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_1 {
1830 type Abi = Self;
1831 type DefaultType = Self;
1832 }
1833 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1834 #[repr(C)]
1835 pub struct DWRITE_PANOSE_2 {
1836 pub familyKind: u8,
1837 pub symbolKind: u8,
1838 pub weight: u8,
1839 pub spacing: u8,
1840 pub aspectRatioAndContrast: u8,
1841 pub aspectRatio94: u8,
1842 pub aspectRatio119: u8,
1843 pub aspectRatio157: u8,
1844 pub aspectRatio163: u8,
1845 pub aspectRatio211: u8,
1846 }
1847 impl DWRITE_PANOSE_2 {}
1848 impl ::std::default::Default for DWRITE_PANOSE_2 {
default() -> Self1849 fn default() -> Self {
1850 unsafe { ::std::mem::zeroed() }
1851 }
1852 }
1853 impl ::std::fmt::Debug for DWRITE_PANOSE_2 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1854 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1855 fmt.debug_struct("_symbol_e__Struct")
1856 .field("familyKind", &self.familyKind)
1857 .field("symbolKind", &self.symbolKind)
1858 .field("weight", &self.weight)
1859 .field("spacing", &self.spacing)
1860 .field("aspectRatioAndContrast", &self.aspectRatioAndContrast)
1861 .field("aspectRatio94", &self.aspectRatio94)
1862 .field("aspectRatio119", &self.aspectRatio119)
1863 .field("aspectRatio157", &self.aspectRatio157)
1864 .field("aspectRatio163", &self.aspectRatio163)
1865 .field("aspectRatio211", &self.aspectRatio211)
1866 .finish()
1867 }
1868 }
1869 impl ::std::cmp::PartialEq for DWRITE_PANOSE_2 {
eq(&self, other: &Self) -> bool1870 fn eq(&self, other: &Self) -> bool {
1871 self.familyKind == other.familyKind && self.symbolKind == other.symbolKind && self.weight == other.weight && self.spacing == other.spacing && self.aspectRatioAndContrast == other.aspectRatioAndContrast && self.aspectRatio94 == other.aspectRatio94 && self.aspectRatio119 == other.aspectRatio119 && self.aspectRatio157 == other.aspectRatio157 && self.aspectRatio163 == other.aspectRatio163 && self.aspectRatio211 == other.aspectRatio211
1872 }
1873 }
1874 impl ::std::cmp::Eq for DWRITE_PANOSE_2 {}
1875 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_2 {
1876 type Abi = Self;
1877 type DefaultType = Self;
1878 }
1879 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
1880 #[repr(C)]
1881 pub struct DWRITE_PANOSE_3 {
1882 pub familyKind: u8,
1883 pub serifStyle: u8,
1884 pub weight: u8,
1885 pub proportion: u8,
1886 pub contrast: u8,
1887 pub strokeVariation: u8,
1888 pub armStyle: u8,
1889 pub letterform: u8,
1890 pub midline: u8,
1891 pub xHeight: u8,
1892 }
1893 impl DWRITE_PANOSE_3 {}
1894 impl ::std::default::Default for DWRITE_PANOSE_3 {
default() -> Self1895 fn default() -> Self {
1896 unsafe { ::std::mem::zeroed() }
1897 }
1898 }
1899 impl ::std::fmt::Debug for DWRITE_PANOSE_3 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1900 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1901 fmt.debug_struct("_text_e__Struct")
1902 .field("familyKind", &self.familyKind)
1903 .field("serifStyle", &self.serifStyle)
1904 .field("weight", &self.weight)
1905 .field("proportion", &self.proportion)
1906 .field("contrast", &self.contrast)
1907 .field("strokeVariation", &self.strokeVariation)
1908 .field("armStyle", &self.armStyle)
1909 .field("letterform", &self.letterform)
1910 .field("midline", &self.midline)
1911 .field("xHeight", &self.xHeight)
1912 .finish()
1913 }
1914 }
1915 impl ::std::cmp::PartialEq for DWRITE_PANOSE_3 {
eq(&self, other: &Self) -> bool1916 fn eq(&self, other: &Self) -> bool {
1917 self.familyKind == other.familyKind && self.serifStyle == other.serifStyle && self.weight == other.weight && self.proportion == other.proportion && self.contrast == other.contrast && self.strokeVariation == other.strokeVariation && self.armStyle == other.armStyle && self.letterform == other.letterform && self.midline == other.midline && self.xHeight == other.xHeight
1918 }
1919 }
1920 impl ::std::cmp::Eq for DWRITE_PANOSE_3 {}
1921 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_3 {
1922 type Abi = Self;
1923 type DefaultType = Self;
1924 }
1925 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1926 #[repr(transparent)]
1927 pub struct DWRITE_PANOSE_ARM_STYLE(pub i32);
1928 pub const DWRITE_PANOSE_ARM_STYLE_ANY: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(0i32);
1929 pub const DWRITE_PANOSE_ARM_STYLE_NO_FIT: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(1i32);
1930 pub const DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_HORIZONTAL: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(2i32);
1931 pub const DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_WEDGE: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(3i32);
1932 pub const DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_VERTICAL: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(4i32);
1933 pub const DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_SINGLE_SERIF: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(5i32);
1934 pub const DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_DOUBLE_SERIF: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(6i32);
1935 pub const DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_HORIZONTAL: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(7i32);
1936 pub const DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_WEDGE: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(8i32);
1937 pub const DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_VERTICAL: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(9i32);
1938 pub const DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_SINGLE_SERIF: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(10i32);
1939 pub const DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_DOUBLE_SERIF: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(11i32);
1940 pub const DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_HORZ: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(2i32);
1941 pub const DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_VERT: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(4i32);
1942 pub const DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_HORZ: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(7i32);
1943 pub const DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_WEDGE: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(8i32);
1944 pub const DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_VERT: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(9i32);
1945 pub const DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_SINGLE_SERIF: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(10i32);
1946 pub const DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_DOUBLE_SERIF: DWRITE_PANOSE_ARM_STYLE = DWRITE_PANOSE_ARM_STYLE(11i32);
1947 impl ::std::convert::From<i32> for DWRITE_PANOSE_ARM_STYLE {
from(value: i32) -> Self1948 fn from(value: i32) -> Self {
1949 Self(value)
1950 }
1951 }
1952 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_ARM_STYLE {
1953 type Abi = Self;
1954 type DefaultType = Self;
1955 }
1956 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1957 #[repr(transparent)]
1958 pub struct DWRITE_PANOSE_ASPECT(pub i32);
1959 pub const DWRITE_PANOSE_ASPECT_ANY: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(0i32);
1960 pub const DWRITE_PANOSE_ASPECT_NO_FIT: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(1i32);
1961 pub const DWRITE_PANOSE_ASPECT_SUPER_CONDENSED: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(2i32);
1962 pub const DWRITE_PANOSE_ASPECT_VERY_CONDENSED: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(3i32);
1963 pub const DWRITE_PANOSE_ASPECT_CONDENSED: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(4i32);
1964 pub const DWRITE_PANOSE_ASPECT_NORMAL: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(5i32);
1965 pub const DWRITE_PANOSE_ASPECT_EXTENDED: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(6i32);
1966 pub const DWRITE_PANOSE_ASPECT_VERY_EXTENDED: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(7i32);
1967 pub const DWRITE_PANOSE_ASPECT_SUPER_EXTENDED: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(8i32);
1968 pub const DWRITE_PANOSE_ASPECT_MONOSPACED: DWRITE_PANOSE_ASPECT = DWRITE_PANOSE_ASPECT(9i32);
1969 impl ::std::convert::From<i32> for DWRITE_PANOSE_ASPECT {
from(value: i32) -> Self1970 fn from(value: i32) -> Self {
1971 Self(value)
1972 }
1973 }
1974 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_ASPECT {
1975 type Abi = Self;
1976 type DefaultType = Self;
1977 }
1978 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1979 #[repr(transparent)]
1980 pub struct DWRITE_PANOSE_ASPECT_RATIO(pub i32);
1981 pub const DWRITE_PANOSE_ASPECT_RATIO_ANY: DWRITE_PANOSE_ASPECT_RATIO = DWRITE_PANOSE_ASPECT_RATIO(0i32);
1982 pub const DWRITE_PANOSE_ASPECT_RATIO_NO_FIT: DWRITE_PANOSE_ASPECT_RATIO = DWRITE_PANOSE_ASPECT_RATIO(1i32);
1983 pub const DWRITE_PANOSE_ASPECT_RATIO_VERY_CONDENSED: DWRITE_PANOSE_ASPECT_RATIO = DWRITE_PANOSE_ASPECT_RATIO(2i32);
1984 pub const DWRITE_PANOSE_ASPECT_RATIO_CONDENSED: DWRITE_PANOSE_ASPECT_RATIO = DWRITE_PANOSE_ASPECT_RATIO(3i32);
1985 pub const DWRITE_PANOSE_ASPECT_RATIO_NORMAL: DWRITE_PANOSE_ASPECT_RATIO = DWRITE_PANOSE_ASPECT_RATIO(4i32);
1986 pub const DWRITE_PANOSE_ASPECT_RATIO_EXPANDED: DWRITE_PANOSE_ASPECT_RATIO = DWRITE_PANOSE_ASPECT_RATIO(5i32);
1987 pub const DWRITE_PANOSE_ASPECT_RATIO_VERY_EXPANDED: DWRITE_PANOSE_ASPECT_RATIO = DWRITE_PANOSE_ASPECT_RATIO(6i32);
1988 impl ::std::convert::From<i32> for DWRITE_PANOSE_ASPECT_RATIO {
from(value: i32) -> Self1989 fn from(value: i32) -> Self {
1990 Self(value)
1991 }
1992 }
1993 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_ASPECT_RATIO {
1994 type Abi = Self;
1995 type DefaultType = Self;
1996 }
1997 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1998 #[repr(transparent)]
1999 pub struct DWRITE_PANOSE_CHARACTER_RANGES(pub i32);
2000 pub const DWRITE_PANOSE_CHARACTER_RANGES_ANY: DWRITE_PANOSE_CHARACTER_RANGES = DWRITE_PANOSE_CHARACTER_RANGES(0i32);
2001 pub const DWRITE_PANOSE_CHARACTER_RANGES_NO_FIT: DWRITE_PANOSE_CHARACTER_RANGES = DWRITE_PANOSE_CHARACTER_RANGES(1i32);
2002 pub const DWRITE_PANOSE_CHARACTER_RANGES_EXTENDED_COLLECTION: DWRITE_PANOSE_CHARACTER_RANGES = DWRITE_PANOSE_CHARACTER_RANGES(2i32);
2003 pub const DWRITE_PANOSE_CHARACTER_RANGES_LITERALS: DWRITE_PANOSE_CHARACTER_RANGES = DWRITE_PANOSE_CHARACTER_RANGES(3i32);
2004 pub const DWRITE_PANOSE_CHARACTER_RANGES_NO_LOWER_CASE: DWRITE_PANOSE_CHARACTER_RANGES = DWRITE_PANOSE_CHARACTER_RANGES(4i32);
2005 pub const DWRITE_PANOSE_CHARACTER_RANGES_SMALL_CAPS: DWRITE_PANOSE_CHARACTER_RANGES = DWRITE_PANOSE_CHARACTER_RANGES(5i32);
2006 impl ::std::convert::From<i32> for DWRITE_PANOSE_CHARACTER_RANGES {
from(value: i32) -> Self2007 fn from(value: i32) -> Self {
2008 Self(value)
2009 }
2010 }
2011 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_CHARACTER_RANGES {
2012 type Abi = Self;
2013 type DefaultType = Self;
2014 }
2015 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2016 #[repr(transparent)]
2017 pub struct DWRITE_PANOSE_CONTRAST(pub i32);
2018 pub const DWRITE_PANOSE_CONTRAST_ANY: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(0i32);
2019 pub const DWRITE_PANOSE_CONTRAST_NO_FIT: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(1i32);
2020 pub const DWRITE_PANOSE_CONTRAST_NONE: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(2i32);
2021 pub const DWRITE_PANOSE_CONTRAST_VERY_LOW: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(3i32);
2022 pub const DWRITE_PANOSE_CONTRAST_LOW: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(4i32);
2023 pub const DWRITE_PANOSE_CONTRAST_MEDIUM_LOW: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(5i32);
2024 pub const DWRITE_PANOSE_CONTRAST_MEDIUM: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(6i32);
2025 pub const DWRITE_PANOSE_CONTRAST_MEDIUM_HIGH: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(7i32);
2026 pub const DWRITE_PANOSE_CONTRAST_HIGH: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(8i32);
2027 pub const DWRITE_PANOSE_CONTRAST_VERY_HIGH: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(9i32);
2028 pub const DWRITE_PANOSE_CONTRAST_HORIZONTAL_LOW: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(10i32);
2029 pub const DWRITE_PANOSE_CONTRAST_HORIZONTAL_MEDIUM: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(11i32);
2030 pub const DWRITE_PANOSE_CONTRAST_HORIZONTAL_HIGH: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(12i32);
2031 pub const DWRITE_PANOSE_CONTRAST_BROKEN: DWRITE_PANOSE_CONTRAST = DWRITE_PANOSE_CONTRAST(13i32);
2032 impl ::std::convert::From<i32> for DWRITE_PANOSE_CONTRAST {
from(value: i32) -> Self2033 fn from(value: i32) -> Self {
2034 Self(value)
2035 }
2036 }
2037 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_CONTRAST {
2038 type Abi = Self;
2039 type DefaultType = Self;
2040 }
2041 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2042 #[repr(transparent)]
2043 pub struct DWRITE_PANOSE_DECORATIVE_CLASS(pub i32);
2044 pub const DWRITE_PANOSE_DECORATIVE_CLASS_ANY: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(0i32);
2045 pub const DWRITE_PANOSE_DECORATIVE_CLASS_NO_FIT: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(1i32);
2046 pub const DWRITE_PANOSE_DECORATIVE_CLASS_DERIVATIVE: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(2i32);
2047 pub const DWRITE_PANOSE_DECORATIVE_CLASS_NONSTANDARD_TOPOLOGY: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(3i32);
2048 pub const DWRITE_PANOSE_DECORATIVE_CLASS_NONSTANDARD_ELEMENTS: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(4i32);
2049 pub const DWRITE_PANOSE_DECORATIVE_CLASS_NONSTANDARD_ASPECT: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(5i32);
2050 pub const DWRITE_PANOSE_DECORATIVE_CLASS_INITIALS: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(6i32);
2051 pub const DWRITE_PANOSE_DECORATIVE_CLASS_CARTOON: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(7i32);
2052 pub const DWRITE_PANOSE_DECORATIVE_CLASS_PICTURE_STEMS: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(8i32);
2053 pub const DWRITE_PANOSE_DECORATIVE_CLASS_ORNAMENTED: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(9i32);
2054 pub const DWRITE_PANOSE_DECORATIVE_CLASS_TEXT_AND_BACKGROUND: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(10i32);
2055 pub const DWRITE_PANOSE_DECORATIVE_CLASS_COLLAGE: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(11i32);
2056 pub const DWRITE_PANOSE_DECORATIVE_CLASS_MONTAGE: DWRITE_PANOSE_DECORATIVE_CLASS = DWRITE_PANOSE_DECORATIVE_CLASS(12i32);
2057 impl ::std::convert::From<i32> for DWRITE_PANOSE_DECORATIVE_CLASS {
from(value: i32) -> Self2058 fn from(value: i32) -> Self {
2059 Self(value)
2060 }
2061 }
2062 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_DECORATIVE_CLASS {
2063 type Abi = Self;
2064 type DefaultType = Self;
2065 }
2066 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2067 #[repr(transparent)]
2068 pub struct DWRITE_PANOSE_DECORATIVE_TOPOLOGY(pub i32);
2069 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_ANY: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(0i32);
2070 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_NO_FIT: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(1i32);
2071 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_STANDARD: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(2i32);
2072 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_SQUARE: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(3i32);
2073 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_MULTIPLE_SEGMENT: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(4i32);
2074 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_ART_DECO: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(5i32);
2075 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_UNEVEN_WEIGHTING: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(6i32);
2076 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_DIVERSE_ARMS: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(7i32);
2077 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_DIVERSE_FORMS: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(8i32);
2078 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_LOMBARDIC_FORMS: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(9i32);
2079 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_UPPER_CASE_IN_LOWER_CASE: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(10i32);
2080 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_IMPLIED_TOPOLOGY: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(11i32);
2081 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_HORSESHOE_E_AND_A: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(12i32);
2082 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_CURSIVE: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(13i32);
2083 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_BLACKLETTER: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(14i32);
2084 pub const DWRITE_PANOSE_DECORATIVE_TOPOLOGY_SWASH_VARIANCE: DWRITE_PANOSE_DECORATIVE_TOPOLOGY = DWRITE_PANOSE_DECORATIVE_TOPOLOGY(15i32);
2085 impl ::std::convert::From<i32> for DWRITE_PANOSE_DECORATIVE_TOPOLOGY {
from(value: i32) -> Self2086 fn from(value: i32) -> Self {
2087 Self(value)
2088 }
2089 }
2090 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_DECORATIVE_TOPOLOGY {
2091 type Abi = Self;
2092 type DefaultType = Self;
2093 }
2094 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2095 #[repr(transparent)]
2096 pub struct DWRITE_PANOSE_FAMILY(pub i32);
2097 pub const DWRITE_PANOSE_FAMILY_ANY: DWRITE_PANOSE_FAMILY = DWRITE_PANOSE_FAMILY(0i32);
2098 pub const DWRITE_PANOSE_FAMILY_NO_FIT: DWRITE_PANOSE_FAMILY = DWRITE_PANOSE_FAMILY(1i32);
2099 pub const DWRITE_PANOSE_FAMILY_TEXT_DISPLAY: DWRITE_PANOSE_FAMILY = DWRITE_PANOSE_FAMILY(2i32);
2100 pub const DWRITE_PANOSE_FAMILY_SCRIPT: DWRITE_PANOSE_FAMILY = DWRITE_PANOSE_FAMILY(3i32);
2101 pub const DWRITE_PANOSE_FAMILY_DECORATIVE: DWRITE_PANOSE_FAMILY = DWRITE_PANOSE_FAMILY(4i32);
2102 pub const DWRITE_PANOSE_FAMILY_SYMBOL: DWRITE_PANOSE_FAMILY = DWRITE_PANOSE_FAMILY(5i32);
2103 pub const DWRITE_PANOSE_FAMILY_PICTORIAL: DWRITE_PANOSE_FAMILY = DWRITE_PANOSE_FAMILY(5i32);
2104 impl ::std::convert::From<i32> for DWRITE_PANOSE_FAMILY {
from(value: i32) -> Self2105 fn from(value: i32) -> Self {
2106 Self(value)
2107 }
2108 }
2109 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_FAMILY {
2110 type Abi = Self;
2111 type DefaultType = Self;
2112 }
2113 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2114 #[repr(transparent)]
2115 pub struct DWRITE_PANOSE_FILL(pub i32);
2116 pub const DWRITE_PANOSE_FILL_ANY: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(0i32);
2117 pub const DWRITE_PANOSE_FILL_NO_FIT: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(1i32);
2118 pub const DWRITE_PANOSE_FILL_STANDARD_SOLID_FILL: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(2i32);
2119 pub const DWRITE_PANOSE_FILL_NO_FILL: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(3i32);
2120 pub const DWRITE_PANOSE_FILL_PATTERNED_FILL: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(4i32);
2121 pub const DWRITE_PANOSE_FILL_COMPLEX_FILL: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(5i32);
2122 pub const DWRITE_PANOSE_FILL_SHAPED_FILL: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(6i32);
2123 pub const DWRITE_PANOSE_FILL_DRAWN_DISTRESSED: DWRITE_PANOSE_FILL = DWRITE_PANOSE_FILL(7i32);
2124 impl ::std::convert::From<i32> for DWRITE_PANOSE_FILL {
from(value: i32) -> Self2125 fn from(value: i32) -> Self {
2126 Self(value)
2127 }
2128 }
2129 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_FILL {
2130 type Abi = Self;
2131 type DefaultType = Self;
2132 }
2133 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2134 #[repr(transparent)]
2135 pub struct DWRITE_PANOSE_FINIALS(pub i32);
2136 pub const DWRITE_PANOSE_FINIALS_ANY: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(0i32);
2137 pub const DWRITE_PANOSE_FINIALS_NO_FIT: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(1i32);
2138 pub const DWRITE_PANOSE_FINIALS_NONE_NO_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(2i32);
2139 pub const DWRITE_PANOSE_FINIALS_NONE_CLOSED_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(3i32);
2140 pub const DWRITE_PANOSE_FINIALS_NONE_OPEN_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(4i32);
2141 pub const DWRITE_PANOSE_FINIALS_SHARP_NO_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(5i32);
2142 pub const DWRITE_PANOSE_FINIALS_SHARP_CLOSED_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(6i32);
2143 pub const DWRITE_PANOSE_FINIALS_SHARP_OPEN_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(7i32);
2144 pub const DWRITE_PANOSE_FINIALS_TAPERED_NO_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(8i32);
2145 pub const DWRITE_PANOSE_FINIALS_TAPERED_CLOSED_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(9i32);
2146 pub const DWRITE_PANOSE_FINIALS_TAPERED_OPEN_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(10i32);
2147 pub const DWRITE_PANOSE_FINIALS_ROUND_NO_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(11i32);
2148 pub const DWRITE_PANOSE_FINIALS_ROUND_CLOSED_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(12i32);
2149 pub const DWRITE_PANOSE_FINIALS_ROUND_OPEN_LOOPS: DWRITE_PANOSE_FINIALS = DWRITE_PANOSE_FINIALS(13i32);
2150 impl ::std::convert::From<i32> for DWRITE_PANOSE_FINIALS {
from(value: i32) -> Self2151 fn from(value: i32) -> Self {
2152 Self(value)
2153 }
2154 }
2155 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_FINIALS {
2156 type Abi = Self;
2157 type DefaultType = Self;
2158 }
2159 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2160 #[repr(transparent)]
2161 pub struct DWRITE_PANOSE_LETTERFORM(pub i32);
2162 pub const DWRITE_PANOSE_LETTERFORM_ANY: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(0i32);
2163 pub const DWRITE_PANOSE_LETTERFORM_NO_FIT: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(1i32);
2164 pub const DWRITE_PANOSE_LETTERFORM_NORMAL_CONTACT: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(2i32);
2165 pub const DWRITE_PANOSE_LETTERFORM_NORMAL_WEIGHTED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(3i32);
2166 pub const DWRITE_PANOSE_LETTERFORM_NORMAL_BOXED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(4i32);
2167 pub const DWRITE_PANOSE_LETTERFORM_NORMAL_FLATTENED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(5i32);
2168 pub const DWRITE_PANOSE_LETTERFORM_NORMAL_ROUNDED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(6i32);
2169 pub const DWRITE_PANOSE_LETTERFORM_NORMAL_OFF_CENTER: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(7i32);
2170 pub const DWRITE_PANOSE_LETTERFORM_NORMAL_SQUARE: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(8i32);
2171 pub const DWRITE_PANOSE_LETTERFORM_OBLIQUE_CONTACT: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(9i32);
2172 pub const DWRITE_PANOSE_LETTERFORM_OBLIQUE_WEIGHTED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(10i32);
2173 pub const DWRITE_PANOSE_LETTERFORM_OBLIQUE_BOXED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(11i32);
2174 pub const DWRITE_PANOSE_LETTERFORM_OBLIQUE_FLATTENED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(12i32);
2175 pub const DWRITE_PANOSE_LETTERFORM_OBLIQUE_ROUNDED: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(13i32);
2176 pub const DWRITE_PANOSE_LETTERFORM_OBLIQUE_OFF_CENTER: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(14i32);
2177 pub const DWRITE_PANOSE_LETTERFORM_OBLIQUE_SQUARE: DWRITE_PANOSE_LETTERFORM = DWRITE_PANOSE_LETTERFORM(15i32);
2178 impl ::std::convert::From<i32> for DWRITE_PANOSE_LETTERFORM {
from(value: i32) -> Self2179 fn from(value: i32) -> Self {
2180 Self(value)
2181 }
2182 }
2183 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_LETTERFORM {
2184 type Abi = Self;
2185 type DefaultType = Self;
2186 }
2187 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2188 #[repr(transparent)]
2189 pub struct DWRITE_PANOSE_LINING(pub i32);
2190 pub const DWRITE_PANOSE_LINING_ANY: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(0i32);
2191 pub const DWRITE_PANOSE_LINING_NO_FIT: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(1i32);
2192 pub const DWRITE_PANOSE_LINING_NONE: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(2i32);
2193 pub const DWRITE_PANOSE_LINING_INLINE: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(3i32);
2194 pub const DWRITE_PANOSE_LINING_OUTLINE: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(4i32);
2195 pub const DWRITE_PANOSE_LINING_ENGRAVED: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(5i32);
2196 pub const DWRITE_PANOSE_LINING_SHADOW: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(6i32);
2197 pub const DWRITE_PANOSE_LINING_RELIEF: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(7i32);
2198 pub const DWRITE_PANOSE_LINING_BACKDROP: DWRITE_PANOSE_LINING = DWRITE_PANOSE_LINING(8i32);
2199 impl ::std::convert::From<i32> for DWRITE_PANOSE_LINING {
from(value: i32) -> Self2200 fn from(value: i32) -> Self {
2201 Self(value)
2202 }
2203 }
2204 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_LINING {
2205 type Abi = Self;
2206 type DefaultType = Self;
2207 }
2208 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2209 #[repr(transparent)]
2210 pub struct DWRITE_PANOSE_MIDLINE(pub i32);
2211 pub const DWRITE_PANOSE_MIDLINE_ANY: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(0i32);
2212 pub const DWRITE_PANOSE_MIDLINE_NO_FIT: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(1i32);
2213 pub const DWRITE_PANOSE_MIDLINE_STANDARD_TRIMMED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(2i32);
2214 pub const DWRITE_PANOSE_MIDLINE_STANDARD_POINTED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(3i32);
2215 pub const DWRITE_PANOSE_MIDLINE_STANDARD_SERIFED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(4i32);
2216 pub const DWRITE_PANOSE_MIDLINE_HIGH_TRIMMED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(5i32);
2217 pub const DWRITE_PANOSE_MIDLINE_HIGH_POINTED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(6i32);
2218 pub const DWRITE_PANOSE_MIDLINE_HIGH_SERIFED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(7i32);
2219 pub const DWRITE_PANOSE_MIDLINE_CONSTANT_TRIMMED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(8i32);
2220 pub const DWRITE_PANOSE_MIDLINE_CONSTANT_POINTED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(9i32);
2221 pub const DWRITE_PANOSE_MIDLINE_CONSTANT_SERIFED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(10i32);
2222 pub const DWRITE_PANOSE_MIDLINE_LOW_TRIMMED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(11i32);
2223 pub const DWRITE_PANOSE_MIDLINE_LOW_POINTED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(12i32);
2224 pub const DWRITE_PANOSE_MIDLINE_LOW_SERIFED: DWRITE_PANOSE_MIDLINE = DWRITE_PANOSE_MIDLINE(13i32);
2225 impl ::std::convert::From<i32> for DWRITE_PANOSE_MIDLINE {
from(value: i32) -> Self2226 fn from(value: i32) -> Self {
2227 Self(value)
2228 }
2229 }
2230 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_MIDLINE {
2231 type Abi = Self;
2232 type DefaultType = Self;
2233 }
2234 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2235 #[repr(transparent)]
2236 pub struct DWRITE_PANOSE_PROPORTION(pub i32);
2237 pub const DWRITE_PANOSE_PROPORTION_ANY: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(0i32);
2238 pub const DWRITE_PANOSE_PROPORTION_NO_FIT: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(1i32);
2239 pub const DWRITE_PANOSE_PROPORTION_OLD_STYLE: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(2i32);
2240 pub const DWRITE_PANOSE_PROPORTION_MODERN: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(3i32);
2241 pub const DWRITE_PANOSE_PROPORTION_EVEN_WIDTH: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(4i32);
2242 pub const DWRITE_PANOSE_PROPORTION_EXPANDED: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(5i32);
2243 pub const DWRITE_PANOSE_PROPORTION_CONDENSED: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(6i32);
2244 pub const DWRITE_PANOSE_PROPORTION_VERY_EXPANDED: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(7i32);
2245 pub const DWRITE_PANOSE_PROPORTION_VERY_CONDENSED: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(8i32);
2246 pub const DWRITE_PANOSE_PROPORTION_MONOSPACED: DWRITE_PANOSE_PROPORTION = DWRITE_PANOSE_PROPORTION(9i32);
2247 impl ::std::convert::From<i32> for DWRITE_PANOSE_PROPORTION {
from(value: i32) -> Self2248 fn from(value: i32) -> Self {
2249 Self(value)
2250 }
2251 }
2252 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_PROPORTION {
2253 type Abi = Self;
2254 type DefaultType = Self;
2255 }
2256 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2257 #[repr(transparent)]
2258 pub struct DWRITE_PANOSE_SCRIPT_FORM(pub i32);
2259 pub const DWRITE_PANOSE_SCRIPT_FORM_ANY: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(0i32);
2260 pub const DWRITE_PANOSE_SCRIPT_FORM_NO_FIT: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(1i32);
2261 pub const DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_NO_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(2i32);
2262 pub const DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_SOME_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(3i32);
2263 pub const DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_MORE_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(4i32);
2264 pub const DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_EXTREME_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(5i32);
2265 pub const DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_NO_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(6i32);
2266 pub const DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_SOME_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(7i32);
2267 pub const DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_MORE_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(8i32);
2268 pub const DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_EXTREME_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(9i32);
2269 pub const DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_NO_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(10i32);
2270 pub const DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_SOME_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(11i32);
2271 pub const DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_MORE_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(12i32);
2272 pub const DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_EXTREME_WRAPPING: DWRITE_PANOSE_SCRIPT_FORM = DWRITE_PANOSE_SCRIPT_FORM(13i32);
2273 impl ::std::convert::From<i32> for DWRITE_PANOSE_SCRIPT_FORM {
from(value: i32) -> Self2274 fn from(value: i32) -> Self {
2275 Self(value)
2276 }
2277 }
2278 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_SCRIPT_FORM {
2279 type Abi = Self;
2280 type DefaultType = Self;
2281 }
2282 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2283 #[repr(transparent)]
2284 pub struct DWRITE_PANOSE_SCRIPT_TOPOLOGY(pub i32);
2285 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_ANY: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(0i32);
2286 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_NO_FIT: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(1i32);
2287 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_ROMAN_DISCONNECTED: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(2i32);
2288 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_ROMAN_TRAILING: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(3i32);
2289 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_ROMAN_CONNECTED: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(4i32);
2290 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_CURSIVE_DISCONNECTED: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(5i32);
2291 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_CURSIVE_TRAILING: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(6i32);
2292 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_CURSIVE_CONNECTED: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(7i32);
2293 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_BLACKLETTER_DISCONNECTED: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(8i32);
2294 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_BLACKLETTER_TRAILING: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(9i32);
2295 pub const DWRITE_PANOSE_SCRIPT_TOPOLOGY_BLACKLETTER_CONNECTED: DWRITE_PANOSE_SCRIPT_TOPOLOGY = DWRITE_PANOSE_SCRIPT_TOPOLOGY(10i32);
2296 impl ::std::convert::From<i32> for DWRITE_PANOSE_SCRIPT_TOPOLOGY {
from(value: i32) -> Self2297 fn from(value: i32) -> Self {
2298 Self(value)
2299 }
2300 }
2301 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_SCRIPT_TOPOLOGY {
2302 type Abi = Self;
2303 type DefaultType = Self;
2304 }
2305 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2306 #[repr(transparent)]
2307 pub struct DWRITE_PANOSE_SERIF_STYLE(pub i32);
2308 pub const DWRITE_PANOSE_SERIF_STYLE_ANY: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(0i32);
2309 pub const DWRITE_PANOSE_SERIF_STYLE_NO_FIT: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(1i32);
2310 pub const DWRITE_PANOSE_SERIF_STYLE_COVE: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(2i32);
2311 pub const DWRITE_PANOSE_SERIF_STYLE_OBTUSE_COVE: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(3i32);
2312 pub const DWRITE_PANOSE_SERIF_STYLE_SQUARE_COVE: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(4i32);
2313 pub const DWRITE_PANOSE_SERIF_STYLE_OBTUSE_SQUARE_COVE: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(5i32);
2314 pub const DWRITE_PANOSE_SERIF_STYLE_SQUARE: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(6i32);
2315 pub const DWRITE_PANOSE_SERIF_STYLE_THIN: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(7i32);
2316 pub const DWRITE_PANOSE_SERIF_STYLE_OVAL: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(8i32);
2317 pub const DWRITE_PANOSE_SERIF_STYLE_EXAGGERATED: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(9i32);
2318 pub const DWRITE_PANOSE_SERIF_STYLE_TRIANGLE: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(10i32);
2319 pub const DWRITE_PANOSE_SERIF_STYLE_NORMAL_SANS: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(11i32);
2320 pub const DWRITE_PANOSE_SERIF_STYLE_OBTUSE_SANS: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(12i32);
2321 pub const DWRITE_PANOSE_SERIF_STYLE_PERPENDICULAR_SANS: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(13i32);
2322 pub const DWRITE_PANOSE_SERIF_STYLE_FLARED: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(14i32);
2323 pub const DWRITE_PANOSE_SERIF_STYLE_ROUNDED: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(15i32);
2324 pub const DWRITE_PANOSE_SERIF_STYLE_SCRIPT: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(16i32);
2325 pub const DWRITE_PANOSE_SERIF_STYLE_PERP_SANS: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(13i32);
2326 pub const DWRITE_PANOSE_SERIF_STYLE_BONE: DWRITE_PANOSE_SERIF_STYLE = DWRITE_PANOSE_SERIF_STYLE(8i32);
2327 impl ::std::convert::From<i32> for DWRITE_PANOSE_SERIF_STYLE {
from(value: i32) -> Self2328 fn from(value: i32) -> Self {
2329 Self(value)
2330 }
2331 }
2332 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_SERIF_STYLE {
2333 type Abi = Self;
2334 type DefaultType = Self;
2335 }
2336 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2337 #[repr(transparent)]
2338 pub struct DWRITE_PANOSE_SPACING(pub i32);
2339 pub const DWRITE_PANOSE_SPACING_ANY: DWRITE_PANOSE_SPACING = DWRITE_PANOSE_SPACING(0i32);
2340 pub const DWRITE_PANOSE_SPACING_NO_FIT: DWRITE_PANOSE_SPACING = DWRITE_PANOSE_SPACING(1i32);
2341 pub const DWRITE_PANOSE_SPACING_PROPORTIONAL_SPACED: DWRITE_PANOSE_SPACING = DWRITE_PANOSE_SPACING(2i32);
2342 pub const DWRITE_PANOSE_SPACING_MONOSPACED: DWRITE_PANOSE_SPACING = DWRITE_PANOSE_SPACING(3i32);
2343 impl ::std::convert::From<i32> for DWRITE_PANOSE_SPACING {
from(value: i32) -> Self2344 fn from(value: i32) -> Self {
2345 Self(value)
2346 }
2347 }
2348 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_SPACING {
2349 type Abi = Self;
2350 type DefaultType = Self;
2351 }
2352 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2353 #[repr(transparent)]
2354 pub struct DWRITE_PANOSE_STROKE_VARIATION(pub i32);
2355 pub const DWRITE_PANOSE_STROKE_VARIATION_ANY: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(0i32);
2356 pub const DWRITE_PANOSE_STROKE_VARIATION_NO_FIT: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(1i32);
2357 pub const DWRITE_PANOSE_STROKE_VARIATION_NO_VARIATION: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(2i32);
2358 pub const DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_DIAGONAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(3i32);
2359 pub const DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_TRANSITIONAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(4i32);
2360 pub const DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_VERTICAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(5i32);
2361 pub const DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_HORIZONTAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(6i32);
2362 pub const DWRITE_PANOSE_STROKE_VARIATION_RAPID_VERTICAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(7i32);
2363 pub const DWRITE_PANOSE_STROKE_VARIATION_RAPID_HORIZONTAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(8i32);
2364 pub const DWRITE_PANOSE_STROKE_VARIATION_INSTANT_VERTICAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(9i32);
2365 pub const DWRITE_PANOSE_STROKE_VARIATION_INSTANT_HORIZONTAL: DWRITE_PANOSE_STROKE_VARIATION = DWRITE_PANOSE_STROKE_VARIATION(10i32);
2366 impl ::std::convert::From<i32> for DWRITE_PANOSE_STROKE_VARIATION {
from(value: i32) -> Self2367 fn from(value: i32) -> Self {
2368 Self(value)
2369 }
2370 }
2371 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_STROKE_VARIATION {
2372 type Abi = Self;
2373 type DefaultType = Self;
2374 }
2375 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2376 #[repr(transparent)]
2377 pub struct DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(pub i32);
2378 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_ANY: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(0i32);
2379 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NO_FIT: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(1i32);
2380 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NO_WIDTH: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(2i32);
2381 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_EXCEPTIONALLY_WIDE: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(3i32);
2382 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_SUPER_WIDE: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(4i32);
2383 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_VERY_WIDE: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(5i32);
2384 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_WIDE: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(6i32);
2385 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NORMAL: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(7i32);
2386 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NARROW: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(8i32);
2387 pub const DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_VERY_NARROW: DWRITE_PANOSE_SYMBOL_ASPECT_RATIO = DWRITE_PANOSE_SYMBOL_ASPECT_RATIO(9i32);
2388 impl ::std::convert::From<i32> for DWRITE_PANOSE_SYMBOL_ASPECT_RATIO {
from(value: i32) -> Self2389 fn from(value: i32) -> Self {
2390 Self(value)
2391 }
2392 }
2393 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_SYMBOL_ASPECT_RATIO {
2394 type Abi = Self;
2395 type DefaultType = Self;
2396 }
2397 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2398 #[repr(transparent)]
2399 pub struct DWRITE_PANOSE_SYMBOL_KIND(pub i32);
2400 pub const DWRITE_PANOSE_SYMBOL_KIND_ANY: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(0i32);
2401 pub const DWRITE_PANOSE_SYMBOL_KIND_NO_FIT: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(1i32);
2402 pub const DWRITE_PANOSE_SYMBOL_KIND_MONTAGES: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(2i32);
2403 pub const DWRITE_PANOSE_SYMBOL_KIND_PICTURES: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(3i32);
2404 pub const DWRITE_PANOSE_SYMBOL_KIND_SHAPES: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(4i32);
2405 pub const DWRITE_PANOSE_SYMBOL_KIND_SCIENTIFIC: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(5i32);
2406 pub const DWRITE_PANOSE_SYMBOL_KIND_MUSIC: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(6i32);
2407 pub const DWRITE_PANOSE_SYMBOL_KIND_EXPERT: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(7i32);
2408 pub const DWRITE_PANOSE_SYMBOL_KIND_PATTERNS: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(8i32);
2409 pub const DWRITE_PANOSE_SYMBOL_KIND_BOARDERS: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(9i32);
2410 pub const DWRITE_PANOSE_SYMBOL_KIND_ICONS: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(10i32);
2411 pub const DWRITE_PANOSE_SYMBOL_KIND_LOGOS: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(11i32);
2412 pub const DWRITE_PANOSE_SYMBOL_KIND_INDUSTRY_SPECIFIC: DWRITE_PANOSE_SYMBOL_KIND = DWRITE_PANOSE_SYMBOL_KIND(12i32);
2413 impl ::std::convert::From<i32> for DWRITE_PANOSE_SYMBOL_KIND {
from(value: i32) -> Self2414 fn from(value: i32) -> Self {
2415 Self(value)
2416 }
2417 }
2418 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_SYMBOL_KIND {
2419 type Abi = Self;
2420 type DefaultType = Self;
2421 }
2422 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2423 #[repr(transparent)]
2424 pub struct DWRITE_PANOSE_TOOL_KIND(pub i32);
2425 pub const DWRITE_PANOSE_TOOL_KIND_ANY: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(0i32);
2426 pub const DWRITE_PANOSE_TOOL_KIND_NO_FIT: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(1i32);
2427 pub const DWRITE_PANOSE_TOOL_KIND_FLAT_NIB: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(2i32);
2428 pub const DWRITE_PANOSE_TOOL_KIND_PRESSURE_POINT: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(3i32);
2429 pub const DWRITE_PANOSE_TOOL_KIND_ENGRAVED: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(4i32);
2430 pub const DWRITE_PANOSE_TOOL_KIND_BALL: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(5i32);
2431 pub const DWRITE_PANOSE_TOOL_KIND_BRUSH: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(6i32);
2432 pub const DWRITE_PANOSE_TOOL_KIND_ROUGH: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(7i32);
2433 pub const DWRITE_PANOSE_TOOL_KIND_FELT_PEN_BRUSH_TIP: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(8i32);
2434 pub const DWRITE_PANOSE_TOOL_KIND_WILD_BRUSH: DWRITE_PANOSE_TOOL_KIND = DWRITE_PANOSE_TOOL_KIND(9i32);
2435 impl ::std::convert::From<i32> for DWRITE_PANOSE_TOOL_KIND {
from(value: i32) -> Self2436 fn from(value: i32) -> Self {
2437 Self(value)
2438 }
2439 }
2440 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_TOOL_KIND {
2441 type Abi = Self;
2442 type DefaultType = Self;
2443 }
2444 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2445 #[repr(transparent)]
2446 pub struct DWRITE_PANOSE_WEIGHT(pub i32);
2447 pub const DWRITE_PANOSE_WEIGHT_ANY: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(0i32);
2448 pub const DWRITE_PANOSE_WEIGHT_NO_FIT: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(1i32);
2449 pub const DWRITE_PANOSE_WEIGHT_VERY_LIGHT: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(2i32);
2450 pub const DWRITE_PANOSE_WEIGHT_LIGHT: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(3i32);
2451 pub const DWRITE_PANOSE_WEIGHT_THIN: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(4i32);
2452 pub const DWRITE_PANOSE_WEIGHT_BOOK: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(5i32);
2453 pub const DWRITE_PANOSE_WEIGHT_MEDIUM: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(6i32);
2454 pub const DWRITE_PANOSE_WEIGHT_DEMI: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(7i32);
2455 pub const DWRITE_PANOSE_WEIGHT_BOLD: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(8i32);
2456 pub const DWRITE_PANOSE_WEIGHT_HEAVY: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(9i32);
2457 pub const DWRITE_PANOSE_WEIGHT_BLACK: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(10i32);
2458 pub const DWRITE_PANOSE_WEIGHT_EXTRA_BLACK: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(11i32);
2459 pub const DWRITE_PANOSE_WEIGHT_NORD: DWRITE_PANOSE_WEIGHT = DWRITE_PANOSE_WEIGHT(11i32);
2460 impl ::std::convert::From<i32> for DWRITE_PANOSE_WEIGHT {
from(value: i32) -> Self2461 fn from(value: i32) -> Self {
2462 Self(value)
2463 }
2464 }
2465 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_WEIGHT {
2466 type Abi = Self;
2467 type DefaultType = Self;
2468 }
2469 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2470 #[repr(transparent)]
2471 pub struct DWRITE_PANOSE_XASCENT(pub i32);
2472 pub const DWRITE_PANOSE_XASCENT_ANY: DWRITE_PANOSE_XASCENT = DWRITE_PANOSE_XASCENT(0i32);
2473 pub const DWRITE_PANOSE_XASCENT_NO_FIT: DWRITE_PANOSE_XASCENT = DWRITE_PANOSE_XASCENT(1i32);
2474 pub const DWRITE_PANOSE_XASCENT_VERY_LOW: DWRITE_PANOSE_XASCENT = DWRITE_PANOSE_XASCENT(2i32);
2475 pub const DWRITE_PANOSE_XASCENT_LOW: DWRITE_PANOSE_XASCENT = DWRITE_PANOSE_XASCENT(3i32);
2476 pub const DWRITE_PANOSE_XASCENT_MEDIUM: DWRITE_PANOSE_XASCENT = DWRITE_PANOSE_XASCENT(4i32);
2477 pub const DWRITE_PANOSE_XASCENT_HIGH: DWRITE_PANOSE_XASCENT = DWRITE_PANOSE_XASCENT(5i32);
2478 pub const DWRITE_PANOSE_XASCENT_VERY_HIGH: DWRITE_PANOSE_XASCENT = DWRITE_PANOSE_XASCENT(6i32);
2479 impl ::std::convert::From<i32> for DWRITE_PANOSE_XASCENT {
from(value: i32) -> Self2480 fn from(value: i32) -> Self {
2481 Self(value)
2482 }
2483 }
2484 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_XASCENT {
2485 type Abi = Self;
2486 type DefaultType = Self;
2487 }
2488 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2489 #[repr(transparent)]
2490 pub struct DWRITE_PANOSE_XHEIGHT(pub i32);
2491 pub const DWRITE_PANOSE_XHEIGHT_ANY: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(0i32);
2492 pub const DWRITE_PANOSE_XHEIGHT_NO_FIT: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(1i32);
2493 pub const DWRITE_PANOSE_XHEIGHT_CONSTANT_SMALL: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(2i32);
2494 pub const DWRITE_PANOSE_XHEIGHT_CONSTANT_STANDARD: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(3i32);
2495 pub const DWRITE_PANOSE_XHEIGHT_CONSTANT_LARGE: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(4i32);
2496 pub const DWRITE_PANOSE_XHEIGHT_DUCKING_SMALL: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(5i32);
2497 pub const DWRITE_PANOSE_XHEIGHT_DUCKING_STANDARD: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(6i32);
2498 pub const DWRITE_PANOSE_XHEIGHT_DUCKING_LARGE: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(7i32);
2499 pub const DWRITE_PANOSE_XHEIGHT_CONSTANT_STD: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(3i32);
2500 pub const DWRITE_PANOSE_XHEIGHT_DUCKING_STD: DWRITE_PANOSE_XHEIGHT = DWRITE_PANOSE_XHEIGHT(6i32);
2501 impl ::std::convert::From<i32> for DWRITE_PANOSE_XHEIGHT {
from(value: i32) -> Self2502 fn from(value: i32) -> Self {
2503 Self(value)
2504 }
2505 }
2506 unsafe impl ::windows::runtime::Abi for DWRITE_PANOSE_XHEIGHT {
2507 type Abi = Self;
2508 type DefaultType = Self;
2509 }
2510 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2511 #[repr(transparent)]
2512 pub struct DWRITE_PARAGRAPH_ALIGNMENT(pub i32);
2513 pub const DWRITE_PARAGRAPH_ALIGNMENT_NEAR: DWRITE_PARAGRAPH_ALIGNMENT = DWRITE_PARAGRAPH_ALIGNMENT(0i32);
2514 pub const DWRITE_PARAGRAPH_ALIGNMENT_FAR: DWRITE_PARAGRAPH_ALIGNMENT = DWRITE_PARAGRAPH_ALIGNMENT(1i32);
2515 pub const DWRITE_PARAGRAPH_ALIGNMENT_CENTER: DWRITE_PARAGRAPH_ALIGNMENT = DWRITE_PARAGRAPH_ALIGNMENT(2i32);
2516 impl ::std::convert::From<i32> for DWRITE_PARAGRAPH_ALIGNMENT {
from(value: i32) -> Self2517 fn from(value: i32) -> Self {
2518 Self(value)
2519 }
2520 }
2521 unsafe impl ::windows::runtime::Abi for DWRITE_PARAGRAPH_ALIGNMENT {
2522 type Abi = Self;
2523 type DefaultType = Self;
2524 }
2525 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2526 #[repr(transparent)]
2527 pub struct DWRITE_PIXEL_GEOMETRY(pub i32);
2528 pub const DWRITE_PIXEL_GEOMETRY_FLAT: DWRITE_PIXEL_GEOMETRY = DWRITE_PIXEL_GEOMETRY(0i32);
2529 pub const DWRITE_PIXEL_GEOMETRY_RGB: DWRITE_PIXEL_GEOMETRY = DWRITE_PIXEL_GEOMETRY(1i32);
2530 pub const DWRITE_PIXEL_GEOMETRY_BGR: DWRITE_PIXEL_GEOMETRY = DWRITE_PIXEL_GEOMETRY(2i32);
2531 impl ::std::convert::From<i32> for DWRITE_PIXEL_GEOMETRY {
from(value: i32) -> Self2532 fn from(value: i32) -> Self {
2533 Self(value)
2534 }
2535 }
2536 unsafe impl ::windows::runtime::Abi for DWRITE_PIXEL_GEOMETRY {
2537 type Abi = Self;
2538 type DefaultType = Self;
2539 }
2540 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2541 #[repr(transparent)]
2542 pub struct DWRITE_READING_DIRECTION(pub i32);
2543 pub const DWRITE_READING_DIRECTION_LEFT_TO_RIGHT: DWRITE_READING_DIRECTION = DWRITE_READING_DIRECTION(0i32);
2544 pub const DWRITE_READING_DIRECTION_RIGHT_TO_LEFT: DWRITE_READING_DIRECTION = DWRITE_READING_DIRECTION(1i32);
2545 pub const DWRITE_READING_DIRECTION_TOP_TO_BOTTOM: DWRITE_READING_DIRECTION = DWRITE_READING_DIRECTION(2i32);
2546 pub const DWRITE_READING_DIRECTION_BOTTOM_TO_TOP: DWRITE_READING_DIRECTION = DWRITE_READING_DIRECTION(3i32);
2547 impl ::std::convert::From<i32> for DWRITE_READING_DIRECTION {
from(value: i32) -> Self2548 fn from(value: i32) -> Self {
2549 Self(value)
2550 }
2551 }
2552 unsafe impl ::windows::runtime::Abi for DWRITE_READING_DIRECTION {
2553 type Abi = Self;
2554 type DefaultType = Self;
2555 }
2556 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2557 #[repr(transparent)]
2558 pub struct DWRITE_RENDERING_MODE(pub i32);
2559 pub const DWRITE_RENDERING_MODE_DEFAULT: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(0i32);
2560 pub const DWRITE_RENDERING_MODE_ALIASED: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(1i32);
2561 pub const DWRITE_RENDERING_MODE_GDI_CLASSIC: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(2i32);
2562 pub const DWRITE_RENDERING_MODE_GDI_NATURAL: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(3i32);
2563 pub const DWRITE_RENDERING_MODE_NATURAL: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(4i32);
2564 pub const DWRITE_RENDERING_MODE_NATURAL_SYMMETRIC: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(5i32);
2565 pub const DWRITE_RENDERING_MODE_OUTLINE: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(6i32);
2566 pub const DWRITE_RENDERING_MODE_CLEARTYPE_GDI_CLASSIC: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(2i32);
2567 pub const DWRITE_RENDERING_MODE_CLEARTYPE_GDI_NATURAL: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(3i32);
2568 pub const DWRITE_RENDERING_MODE_CLEARTYPE_NATURAL: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(4i32);
2569 pub const DWRITE_RENDERING_MODE_CLEARTYPE_NATURAL_SYMMETRIC: DWRITE_RENDERING_MODE = DWRITE_RENDERING_MODE(5i32);
2570 impl ::std::convert::From<i32> for DWRITE_RENDERING_MODE {
from(value: i32) -> Self2571 fn from(value: i32) -> Self {
2572 Self(value)
2573 }
2574 }
2575 unsafe impl ::windows::runtime::Abi for DWRITE_RENDERING_MODE {
2576 type Abi = Self;
2577 type DefaultType = Self;
2578 }
2579 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2580 #[repr(transparent)]
2581 pub struct DWRITE_RENDERING_MODE1(pub i32);
2582 pub const DWRITE_RENDERING_MODE1_DEFAULT: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(0i32);
2583 pub const DWRITE_RENDERING_MODE1_ALIASED: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(1i32);
2584 pub const DWRITE_RENDERING_MODE1_GDI_CLASSIC: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(2i32);
2585 pub const DWRITE_RENDERING_MODE1_GDI_NATURAL: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(3i32);
2586 pub const DWRITE_RENDERING_MODE1_NATURAL: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(4i32);
2587 pub const DWRITE_RENDERING_MODE1_NATURAL_SYMMETRIC: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(5i32);
2588 pub const DWRITE_RENDERING_MODE1_OUTLINE: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(6i32);
2589 pub const DWRITE_RENDERING_MODE1_NATURAL_SYMMETRIC_DOWNSAMPLED: DWRITE_RENDERING_MODE1 = DWRITE_RENDERING_MODE1(7i32);
2590 impl ::std::convert::From<i32> for DWRITE_RENDERING_MODE1 {
from(value: i32) -> Self2591 fn from(value: i32) -> Self {
2592 Self(value)
2593 }
2594 }
2595 unsafe impl ::windows::runtime::Abi for DWRITE_RENDERING_MODE1 {
2596 type Abi = Self;
2597 type DefaultType = Self;
2598 }
2599 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2600 #[repr(C)]
2601 pub struct DWRITE_SCRIPT_ANALYSIS {
2602 pub script: u16,
2603 pub shapes: DWRITE_SCRIPT_SHAPES,
2604 }
2605 impl DWRITE_SCRIPT_ANALYSIS {}
2606 impl ::std::default::Default for DWRITE_SCRIPT_ANALYSIS {
default() -> Self2607 fn default() -> Self {
2608 unsafe { ::std::mem::zeroed() }
2609 }
2610 }
2611 impl ::std::fmt::Debug for DWRITE_SCRIPT_ANALYSIS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2612 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2613 fmt.debug_struct("DWRITE_SCRIPT_ANALYSIS").field("script", &self.script).field("shapes", &self.shapes).finish()
2614 }
2615 }
2616 impl ::std::cmp::PartialEq for DWRITE_SCRIPT_ANALYSIS {
eq(&self, other: &Self) -> bool2617 fn eq(&self, other: &Self) -> bool {
2618 self.script == other.script && self.shapes == other.shapes
2619 }
2620 }
2621 impl ::std::cmp::Eq for DWRITE_SCRIPT_ANALYSIS {}
2622 unsafe impl ::windows::runtime::Abi for DWRITE_SCRIPT_ANALYSIS {
2623 type Abi = Self;
2624 type DefaultType = Self;
2625 }
2626 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2627 #[repr(C)]
2628 pub struct DWRITE_SCRIPT_PROPERTIES {
2629 pub isoScriptCode: u32,
2630 pub isoScriptNumber: u32,
2631 pub clusterLookahead: u32,
2632 pub justificationCharacter: u32,
2633 pub _bitfield: u32,
2634 }
2635 impl DWRITE_SCRIPT_PROPERTIES {}
2636 impl ::std::default::Default for DWRITE_SCRIPT_PROPERTIES {
default() -> Self2637 fn default() -> Self {
2638 unsafe { ::std::mem::zeroed() }
2639 }
2640 }
2641 impl ::std::fmt::Debug for DWRITE_SCRIPT_PROPERTIES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2642 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2643 fmt.debug_struct("DWRITE_SCRIPT_PROPERTIES").field("isoScriptCode", &self.isoScriptCode).field("isoScriptNumber", &self.isoScriptNumber).field("clusterLookahead", &self.clusterLookahead).field("justificationCharacter", &self.justificationCharacter).field("_bitfield", &self._bitfield).finish()
2644 }
2645 }
2646 impl ::std::cmp::PartialEq for DWRITE_SCRIPT_PROPERTIES {
eq(&self, other: &Self) -> bool2647 fn eq(&self, other: &Self) -> bool {
2648 self.isoScriptCode == other.isoScriptCode && self.isoScriptNumber == other.isoScriptNumber && self.clusterLookahead == other.clusterLookahead && self.justificationCharacter == other.justificationCharacter && self._bitfield == other._bitfield
2649 }
2650 }
2651 impl ::std::cmp::Eq for DWRITE_SCRIPT_PROPERTIES {}
2652 unsafe impl ::windows::runtime::Abi for DWRITE_SCRIPT_PROPERTIES {
2653 type Abi = Self;
2654 type DefaultType = Self;
2655 }
2656 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2657 #[repr(transparent)]
2658 pub struct DWRITE_SCRIPT_SHAPES(pub u32);
2659 pub const DWRITE_SCRIPT_SHAPES_DEFAULT: DWRITE_SCRIPT_SHAPES = DWRITE_SCRIPT_SHAPES(0u32);
2660 pub const DWRITE_SCRIPT_SHAPES_NO_VISUAL: DWRITE_SCRIPT_SHAPES = DWRITE_SCRIPT_SHAPES(1u32);
2661 impl ::std::convert::From<u32> for DWRITE_SCRIPT_SHAPES {
from(value: u32) -> Self2662 fn from(value: u32) -> Self {
2663 Self(value)
2664 }
2665 }
2666 unsafe impl ::windows::runtime::Abi for DWRITE_SCRIPT_SHAPES {
2667 type Abi = Self;
2668 type DefaultType = Self;
2669 }
2670 impl ::std::ops::BitOr for DWRITE_SCRIPT_SHAPES {
2671 type Output = Self;
bitor(self, rhs: Self) -> Self2672 fn bitor(self, rhs: Self) -> Self {
2673 Self(self.0 | rhs.0)
2674 }
2675 }
2676 impl ::std::ops::BitAnd for DWRITE_SCRIPT_SHAPES {
2677 type Output = Self;
bitand(self, rhs: Self) -> Self2678 fn bitand(self, rhs: Self) -> Self {
2679 Self(self.0 & rhs.0)
2680 }
2681 }
2682 impl ::std::ops::BitOrAssign for DWRITE_SCRIPT_SHAPES {
bitor_assign(&mut self, rhs: Self)2683 fn bitor_assign(&mut self, rhs: Self) {
2684 self.0.bitor_assign(rhs.0)
2685 }
2686 }
2687 impl ::std::ops::BitAndAssign for DWRITE_SCRIPT_SHAPES {
bitand_assign(&mut self, rhs: Self)2688 fn bitand_assign(&mut self, rhs: Self) {
2689 self.0.bitand_assign(rhs.0)
2690 }
2691 }
2692 impl ::std::ops::Not for DWRITE_SCRIPT_SHAPES {
2693 type Output = Self;
not(self) -> Self2694 fn not(self) -> Self {
2695 Self(self.0.not())
2696 }
2697 }
2698 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2699 #[repr(C)]
2700 pub struct DWRITE_SHAPING_GLYPH_PROPERTIES {
2701 pub _bitfield: u16,
2702 }
2703 impl DWRITE_SHAPING_GLYPH_PROPERTIES {}
2704 impl ::std::default::Default for DWRITE_SHAPING_GLYPH_PROPERTIES {
default() -> Self2705 fn default() -> Self {
2706 unsafe { ::std::mem::zeroed() }
2707 }
2708 }
2709 impl ::std::fmt::Debug for DWRITE_SHAPING_GLYPH_PROPERTIES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2710 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2711 fmt.debug_struct("DWRITE_SHAPING_GLYPH_PROPERTIES").field("_bitfield", &self._bitfield).finish()
2712 }
2713 }
2714 impl ::std::cmp::PartialEq for DWRITE_SHAPING_GLYPH_PROPERTIES {
eq(&self, other: &Self) -> bool2715 fn eq(&self, other: &Self) -> bool {
2716 self._bitfield == other._bitfield
2717 }
2718 }
2719 impl ::std::cmp::Eq for DWRITE_SHAPING_GLYPH_PROPERTIES {}
2720 unsafe impl ::windows::runtime::Abi for DWRITE_SHAPING_GLYPH_PROPERTIES {
2721 type Abi = Self;
2722 type DefaultType = Self;
2723 }
2724 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2725 #[repr(C)]
2726 pub struct DWRITE_SHAPING_TEXT_PROPERTIES {
2727 pub _bitfield: u16,
2728 }
2729 impl DWRITE_SHAPING_TEXT_PROPERTIES {}
2730 impl ::std::default::Default for DWRITE_SHAPING_TEXT_PROPERTIES {
default() -> Self2731 fn default() -> Self {
2732 unsafe { ::std::mem::zeroed() }
2733 }
2734 }
2735 impl ::std::fmt::Debug for DWRITE_SHAPING_TEXT_PROPERTIES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2736 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2737 fmt.debug_struct("DWRITE_SHAPING_TEXT_PROPERTIES").field("_bitfield", &self._bitfield).finish()
2738 }
2739 }
2740 impl ::std::cmp::PartialEq for DWRITE_SHAPING_TEXT_PROPERTIES {
eq(&self, other: &Self) -> bool2741 fn eq(&self, other: &Self) -> bool {
2742 self._bitfield == other._bitfield
2743 }
2744 }
2745 impl ::std::cmp::Eq for DWRITE_SHAPING_TEXT_PROPERTIES {}
2746 unsafe impl ::windows::runtime::Abi for DWRITE_SHAPING_TEXT_PROPERTIES {
2747 type Abi = Self;
2748 type DefaultType = Self;
2749 }
2750 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2751 #[repr(C)]
2752 #[cfg(feature = "Win32_Foundation")]
2753 pub struct DWRITE_STRIKETHROUGH {
2754 pub width: f32,
2755 pub thickness: f32,
2756 pub offset: f32,
2757 pub readingDirection: DWRITE_READING_DIRECTION,
2758 pub flowDirection: DWRITE_FLOW_DIRECTION,
2759 pub localeName: super::super::Foundation::PWSTR,
2760 pub measuringMode: DWRITE_MEASURING_MODE,
2761 }
2762 #[cfg(feature = "Win32_Foundation")]
2763 impl DWRITE_STRIKETHROUGH {}
2764 #[cfg(feature = "Win32_Foundation")]
2765 impl ::std::default::Default for DWRITE_STRIKETHROUGH {
default() -> Self2766 fn default() -> Self {
2767 unsafe { ::std::mem::zeroed() }
2768 }
2769 }
2770 #[cfg(feature = "Win32_Foundation")]
2771 impl ::std::fmt::Debug for DWRITE_STRIKETHROUGH {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2772 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2773 fmt.debug_struct("DWRITE_STRIKETHROUGH")
2774 .field("width", &self.width)
2775 .field("thickness", &self.thickness)
2776 .field("offset", &self.offset)
2777 .field("readingDirection", &self.readingDirection)
2778 .field("flowDirection", &self.flowDirection)
2779 .field("localeName", &self.localeName)
2780 .field("measuringMode", &self.measuringMode)
2781 .finish()
2782 }
2783 }
2784 #[cfg(feature = "Win32_Foundation")]
2785 impl ::std::cmp::PartialEq for DWRITE_STRIKETHROUGH {
eq(&self, other: &Self) -> bool2786 fn eq(&self, other: &Self) -> bool {
2787 self.width == other.width && self.thickness == other.thickness && self.offset == other.offset && self.readingDirection == other.readingDirection && self.flowDirection == other.flowDirection && self.localeName == other.localeName && self.measuringMode == other.measuringMode
2788 }
2789 }
2790 #[cfg(feature = "Win32_Foundation")]
2791 impl ::std::cmp::Eq for DWRITE_STRIKETHROUGH {}
2792 #[cfg(feature = "Win32_Foundation")]
2793 unsafe impl ::windows::runtime::Abi for DWRITE_STRIKETHROUGH {
2794 type Abi = Self;
2795 type DefaultType = Self;
2796 }
2797 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2798 #[repr(transparent)]
2799 pub struct DWRITE_TEXTURE_TYPE(pub i32);
2800 pub const DWRITE_TEXTURE_ALIASED_1x1: DWRITE_TEXTURE_TYPE = DWRITE_TEXTURE_TYPE(0i32);
2801 pub const DWRITE_TEXTURE_CLEARTYPE_3x1: DWRITE_TEXTURE_TYPE = DWRITE_TEXTURE_TYPE(1i32);
2802 impl ::std::convert::From<i32> for DWRITE_TEXTURE_TYPE {
from(value: i32) -> Self2803 fn from(value: i32) -> Self {
2804 Self(value)
2805 }
2806 }
2807 unsafe impl ::windows::runtime::Abi for DWRITE_TEXTURE_TYPE {
2808 type Abi = Self;
2809 type DefaultType = Self;
2810 }
2811 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2812 #[repr(transparent)]
2813 pub struct DWRITE_TEXT_ALIGNMENT(pub i32);
2814 pub const DWRITE_TEXT_ALIGNMENT_LEADING: DWRITE_TEXT_ALIGNMENT = DWRITE_TEXT_ALIGNMENT(0i32);
2815 pub const DWRITE_TEXT_ALIGNMENT_TRAILING: DWRITE_TEXT_ALIGNMENT = DWRITE_TEXT_ALIGNMENT(1i32);
2816 pub const DWRITE_TEXT_ALIGNMENT_CENTER: DWRITE_TEXT_ALIGNMENT = DWRITE_TEXT_ALIGNMENT(2i32);
2817 pub const DWRITE_TEXT_ALIGNMENT_JUSTIFIED: DWRITE_TEXT_ALIGNMENT = DWRITE_TEXT_ALIGNMENT(3i32);
2818 impl ::std::convert::From<i32> for DWRITE_TEXT_ALIGNMENT {
from(value: i32) -> Self2819 fn from(value: i32) -> Self {
2820 Self(value)
2821 }
2822 }
2823 unsafe impl ::windows::runtime::Abi for DWRITE_TEXT_ALIGNMENT {
2824 type Abi = Self;
2825 type DefaultType = Self;
2826 }
2827 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2828 #[repr(transparent)]
2829 pub struct DWRITE_TEXT_ANTIALIAS_MODE(pub i32);
2830 pub const DWRITE_TEXT_ANTIALIAS_MODE_CLEARTYPE: DWRITE_TEXT_ANTIALIAS_MODE = DWRITE_TEXT_ANTIALIAS_MODE(0i32);
2831 pub const DWRITE_TEXT_ANTIALIAS_MODE_GRAYSCALE: DWRITE_TEXT_ANTIALIAS_MODE = DWRITE_TEXT_ANTIALIAS_MODE(1i32);
2832 impl ::std::convert::From<i32> for DWRITE_TEXT_ANTIALIAS_MODE {
from(value: i32) -> Self2833 fn from(value: i32) -> Self {
2834 Self(value)
2835 }
2836 }
2837 unsafe impl ::windows::runtime::Abi for DWRITE_TEXT_ANTIALIAS_MODE {
2838 type Abi = Self;
2839 type DefaultType = Self;
2840 }
2841 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2842 #[repr(C)]
2843 pub struct DWRITE_TEXT_METRICS {
2844 pub left: f32,
2845 pub top: f32,
2846 pub width: f32,
2847 pub widthIncludingTrailingWhitespace: f32,
2848 pub height: f32,
2849 pub layoutWidth: f32,
2850 pub layoutHeight: f32,
2851 pub maxBidiReorderingDepth: u32,
2852 pub lineCount: u32,
2853 }
2854 impl DWRITE_TEXT_METRICS {}
2855 impl ::std::default::Default for DWRITE_TEXT_METRICS {
default() -> Self2856 fn default() -> Self {
2857 unsafe { ::std::mem::zeroed() }
2858 }
2859 }
2860 impl ::std::fmt::Debug for DWRITE_TEXT_METRICS {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2861 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2862 fmt.debug_struct("DWRITE_TEXT_METRICS")
2863 .field("left", &self.left)
2864 .field("top", &self.top)
2865 .field("width", &self.width)
2866 .field("widthIncludingTrailingWhitespace", &self.widthIncludingTrailingWhitespace)
2867 .field("height", &self.height)
2868 .field("layoutWidth", &self.layoutWidth)
2869 .field("layoutHeight", &self.layoutHeight)
2870 .field("maxBidiReorderingDepth", &self.maxBidiReorderingDepth)
2871 .field("lineCount", &self.lineCount)
2872 .finish()
2873 }
2874 }
2875 impl ::std::cmp::PartialEq for DWRITE_TEXT_METRICS {
eq(&self, other: &Self) -> bool2876 fn eq(&self, other: &Self) -> bool {
2877 self.left == other.left && self.top == other.top && self.width == other.width && self.widthIncludingTrailingWhitespace == other.widthIncludingTrailingWhitespace && self.height == other.height && self.layoutWidth == other.layoutWidth && self.layoutHeight == other.layoutHeight && self.maxBidiReorderingDepth == other.maxBidiReorderingDepth && self.lineCount == other.lineCount
2878 }
2879 }
2880 impl ::std::cmp::Eq for DWRITE_TEXT_METRICS {}
2881 unsafe impl ::windows::runtime::Abi for DWRITE_TEXT_METRICS {
2882 type Abi = Self;
2883 type DefaultType = Self;
2884 }
2885 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2886 #[repr(C)]
2887 pub struct DWRITE_TEXT_METRICS1 {
2888 pub Base: DWRITE_TEXT_METRICS,
2889 pub heightIncludingTrailingWhitespace: f32,
2890 }
2891 impl DWRITE_TEXT_METRICS1 {}
2892 impl ::std::default::Default for DWRITE_TEXT_METRICS1 {
default() -> Self2893 fn default() -> Self {
2894 unsafe { ::std::mem::zeroed() }
2895 }
2896 }
2897 impl ::std::fmt::Debug for DWRITE_TEXT_METRICS1 {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2898 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2899 fmt.debug_struct("DWRITE_TEXT_METRICS1").field("Base", &self.Base).field("heightIncludingTrailingWhitespace", &self.heightIncludingTrailingWhitespace).finish()
2900 }
2901 }
2902 impl ::std::cmp::PartialEq for DWRITE_TEXT_METRICS1 {
eq(&self, other: &Self) -> bool2903 fn eq(&self, other: &Self) -> bool {
2904 self.Base == other.Base && self.heightIncludingTrailingWhitespace == other.heightIncludingTrailingWhitespace
2905 }
2906 }
2907 impl ::std::cmp::Eq for DWRITE_TEXT_METRICS1 {}
2908 unsafe impl ::windows::runtime::Abi for DWRITE_TEXT_METRICS1 {
2909 type Abi = Self;
2910 type DefaultType = Self;
2911 }
2912 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2913 #[repr(C)]
2914 pub struct DWRITE_TEXT_RANGE {
2915 pub startPosition: u32,
2916 pub length: u32,
2917 }
2918 impl DWRITE_TEXT_RANGE {}
2919 impl ::std::default::Default for DWRITE_TEXT_RANGE {
default() -> Self2920 fn default() -> Self {
2921 unsafe { ::std::mem::zeroed() }
2922 }
2923 }
2924 impl ::std::fmt::Debug for DWRITE_TEXT_RANGE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2925 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2926 fmt.debug_struct("DWRITE_TEXT_RANGE").field("startPosition", &self.startPosition).field("length", &self.length).finish()
2927 }
2928 }
2929 impl ::std::cmp::PartialEq for DWRITE_TEXT_RANGE {
eq(&self, other: &Self) -> bool2930 fn eq(&self, other: &Self) -> bool {
2931 self.startPosition == other.startPosition && self.length == other.length
2932 }
2933 }
2934 impl ::std::cmp::Eq for DWRITE_TEXT_RANGE {}
2935 unsafe impl ::windows::runtime::Abi for DWRITE_TEXT_RANGE {
2936 type Abi = Self;
2937 type DefaultType = Self;
2938 }
2939 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2940 #[repr(C)]
2941 pub struct DWRITE_TRIMMING {
2942 pub granularity: DWRITE_TRIMMING_GRANULARITY,
2943 pub delimiter: u32,
2944 pub delimiterCount: u32,
2945 }
2946 impl DWRITE_TRIMMING {}
2947 impl ::std::default::Default for DWRITE_TRIMMING {
default() -> Self2948 fn default() -> Self {
2949 unsafe { ::std::mem::zeroed() }
2950 }
2951 }
2952 impl ::std::fmt::Debug for DWRITE_TRIMMING {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2953 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2954 fmt.debug_struct("DWRITE_TRIMMING").field("granularity", &self.granularity).field("delimiter", &self.delimiter).field("delimiterCount", &self.delimiterCount).finish()
2955 }
2956 }
2957 impl ::std::cmp::PartialEq for DWRITE_TRIMMING {
eq(&self, other: &Self) -> bool2958 fn eq(&self, other: &Self) -> bool {
2959 self.granularity == other.granularity && self.delimiter == other.delimiter && self.delimiterCount == other.delimiterCount
2960 }
2961 }
2962 impl ::std::cmp::Eq for DWRITE_TRIMMING {}
2963 unsafe impl ::windows::runtime::Abi for DWRITE_TRIMMING {
2964 type Abi = Self;
2965 type DefaultType = Self;
2966 }
2967 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2968 #[repr(transparent)]
2969 pub struct DWRITE_TRIMMING_GRANULARITY(pub i32);
2970 pub const DWRITE_TRIMMING_GRANULARITY_NONE: DWRITE_TRIMMING_GRANULARITY = DWRITE_TRIMMING_GRANULARITY(0i32);
2971 pub const DWRITE_TRIMMING_GRANULARITY_CHARACTER: DWRITE_TRIMMING_GRANULARITY = DWRITE_TRIMMING_GRANULARITY(1i32);
2972 pub const DWRITE_TRIMMING_GRANULARITY_WORD: DWRITE_TRIMMING_GRANULARITY = DWRITE_TRIMMING_GRANULARITY(2i32);
2973 impl ::std::convert::From<i32> for DWRITE_TRIMMING_GRANULARITY {
from(value: i32) -> Self2974 fn from(value: i32) -> Self {
2975 Self(value)
2976 }
2977 }
2978 unsafe impl ::windows::runtime::Abi for DWRITE_TRIMMING_GRANULARITY {
2979 type Abi = Self;
2980 type DefaultType = Self;
2981 }
2982 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2983 #[repr(C)]
2984 pub struct DWRITE_TYPOGRAPHIC_FEATURES {
2985 pub features: *mut DWRITE_FONT_FEATURE,
2986 pub featureCount: u32,
2987 }
2988 impl DWRITE_TYPOGRAPHIC_FEATURES {}
2989 impl ::std::default::Default for DWRITE_TYPOGRAPHIC_FEATURES {
default() -> Self2990 fn default() -> Self {
2991 unsafe { ::std::mem::zeroed() }
2992 }
2993 }
2994 impl ::std::fmt::Debug for DWRITE_TYPOGRAPHIC_FEATURES {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2995 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2996 fmt.debug_struct("DWRITE_TYPOGRAPHIC_FEATURES").field("features", &self.features).field("featureCount", &self.featureCount).finish()
2997 }
2998 }
2999 impl ::std::cmp::PartialEq for DWRITE_TYPOGRAPHIC_FEATURES {
eq(&self, other: &Self) -> bool3000 fn eq(&self, other: &Self) -> bool {
3001 self.features == other.features && self.featureCount == other.featureCount
3002 }
3003 }
3004 impl ::std::cmp::Eq for DWRITE_TYPOGRAPHIC_FEATURES {}
3005 unsafe impl ::windows::runtime::Abi for DWRITE_TYPOGRAPHIC_FEATURES {
3006 type Abi = Self;
3007 type DefaultType = Self;
3008 }
3009 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3010 #[repr(C)]
3011 #[cfg(feature = "Win32_Foundation")]
3012 pub struct DWRITE_UNDERLINE {
3013 pub width: f32,
3014 pub thickness: f32,
3015 pub offset: f32,
3016 pub runHeight: f32,
3017 pub readingDirection: DWRITE_READING_DIRECTION,
3018 pub flowDirection: DWRITE_FLOW_DIRECTION,
3019 pub localeName: super::super::Foundation::PWSTR,
3020 pub measuringMode: DWRITE_MEASURING_MODE,
3021 }
3022 #[cfg(feature = "Win32_Foundation")]
3023 impl DWRITE_UNDERLINE {}
3024 #[cfg(feature = "Win32_Foundation")]
3025 impl ::std::default::Default for DWRITE_UNDERLINE {
default() -> Self3026 fn default() -> Self {
3027 unsafe { ::std::mem::zeroed() }
3028 }
3029 }
3030 #[cfg(feature = "Win32_Foundation")]
3031 impl ::std::fmt::Debug for DWRITE_UNDERLINE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3032 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3033 fmt.debug_struct("DWRITE_UNDERLINE")
3034 .field("width", &self.width)
3035 .field("thickness", &self.thickness)
3036 .field("offset", &self.offset)
3037 .field("runHeight", &self.runHeight)
3038 .field("readingDirection", &self.readingDirection)
3039 .field("flowDirection", &self.flowDirection)
3040 .field("localeName", &self.localeName)
3041 .field("measuringMode", &self.measuringMode)
3042 .finish()
3043 }
3044 }
3045 #[cfg(feature = "Win32_Foundation")]
3046 impl ::std::cmp::PartialEq for DWRITE_UNDERLINE {
eq(&self, other: &Self) -> bool3047 fn eq(&self, other: &Self) -> bool {
3048 self.width == other.width && self.thickness == other.thickness && self.offset == other.offset && self.runHeight == other.runHeight && self.readingDirection == other.readingDirection && self.flowDirection == other.flowDirection && self.localeName == other.localeName && self.measuringMode == other.measuringMode
3049 }
3050 }
3051 #[cfg(feature = "Win32_Foundation")]
3052 impl ::std::cmp::Eq for DWRITE_UNDERLINE {}
3053 #[cfg(feature = "Win32_Foundation")]
3054 unsafe impl ::windows::runtime::Abi for DWRITE_UNDERLINE {
3055 type Abi = Self;
3056 type DefaultType = Self;
3057 }
3058 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3059 #[repr(C)]
3060 pub struct DWRITE_UNICODE_RANGE {
3061 pub first: u32,
3062 pub last: u32,
3063 }
3064 impl DWRITE_UNICODE_RANGE {}
3065 impl ::std::default::Default for DWRITE_UNICODE_RANGE {
default() -> Self3066 fn default() -> Self {
3067 unsafe { ::std::mem::zeroed() }
3068 }
3069 }
3070 impl ::std::fmt::Debug for DWRITE_UNICODE_RANGE {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3071 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3072 fmt.debug_struct("DWRITE_UNICODE_RANGE").field("first", &self.first).field("last", &self.last).finish()
3073 }
3074 }
3075 impl ::std::cmp::PartialEq for DWRITE_UNICODE_RANGE {
eq(&self, other: &Self) -> bool3076 fn eq(&self, other: &Self) -> bool {
3077 self.first == other.first && self.last == other.last
3078 }
3079 }
3080 impl ::std::cmp::Eq for DWRITE_UNICODE_RANGE {}
3081 unsafe impl ::windows::runtime::Abi for DWRITE_UNICODE_RANGE {
3082 type Abi = Self;
3083 type DefaultType = Self;
3084 }
3085 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3086 #[repr(transparent)]
3087 pub struct DWRITE_VERTICAL_GLYPH_ORIENTATION(pub i32);
3088 pub const DWRITE_VERTICAL_GLYPH_ORIENTATION_DEFAULT: DWRITE_VERTICAL_GLYPH_ORIENTATION = DWRITE_VERTICAL_GLYPH_ORIENTATION(0i32);
3089 pub const DWRITE_VERTICAL_GLYPH_ORIENTATION_STACKED: DWRITE_VERTICAL_GLYPH_ORIENTATION = DWRITE_VERTICAL_GLYPH_ORIENTATION(1i32);
3090 impl ::std::convert::From<i32> for DWRITE_VERTICAL_GLYPH_ORIENTATION {
from(value: i32) -> Self3091 fn from(value: i32) -> Self {
3092 Self(value)
3093 }
3094 }
3095 unsafe impl ::windows::runtime::Abi for DWRITE_VERTICAL_GLYPH_ORIENTATION {
3096 type Abi = Self;
3097 type DefaultType = Self;
3098 }
3099 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3100 #[repr(transparent)]
3101 pub struct DWRITE_WORD_WRAPPING(pub i32);
3102 pub const DWRITE_WORD_WRAPPING_WRAP: DWRITE_WORD_WRAPPING = DWRITE_WORD_WRAPPING(0i32);
3103 pub const DWRITE_WORD_WRAPPING_NO_WRAP: DWRITE_WORD_WRAPPING = DWRITE_WORD_WRAPPING(1i32);
3104 pub const DWRITE_WORD_WRAPPING_EMERGENCY_BREAK: DWRITE_WORD_WRAPPING = DWRITE_WORD_WRAPPING(2i32);
3105 pub const DWRITE_WORD_WRAPPING_WHOLE_WORD: DWRITE_WORD_WRAPPING = DWRITE_WORD_WRAPPING(3i32);
3106 pub const DWRITE_WORD_WRAPPING_CHARACTER: DWRITE_WORD_WRAPPING = DWRITE_WORD_WRAPPING(4i32);
3107 impl ::std::convert::From<i32> for DWRITE_WORD_WRAPPING {
from(value: i32) -> Self3108 fn from(value: i32) -> Self {
3109 Self(value)
3110 }
3111 }
3112 unsafe impl ::windows::runtime::Abi for DWRITE_WORD_WRAPPING {
3113 type Abi = Self;
3114 type DefaultType = Self;
3115 }
3116 #[inline]
DWriteCreateFactory(factorytype: DWRITE_FACTORY_TYPE, iid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<::windows::runtime::IUnknown>3117 pub unsafe fn DWriteCreateFactory(factorytype: DWRITE_FACTORY_TYPE, iid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<::windows::runtime::IUnknown> {
3118 #[cfg(windows)]
3119 {
3120 #[link(name = "windows")]
3121 extern "system" {
3122 fn DWriteCreateFactory(factorytype: DWRITE_FACTORY_TYPE, iid: *const ::windows::runtime::GUID, factory: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3123 }
3124 let mut result__: <::windows::runtime::IUnknown as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3125 DWriteCreateFactory(::std::mem::transmute(factorytype), ::std::mem::transmute(iid), &mut result__).from_abi::<::windows::runtime::IUnknown>(result__)
3126 }
3127 #[cfg(not(windows))]
3128 unimplemented!("Unsupported target OS");
3129 }
3130 pub const FACILITY_DWRITE: u32 = 2200u32;
3131 #[repr(transparent)]
3132 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3133 pub struct IDWriteAsyncResult(::windows::runtime::IUnknown);
3134 impl IDWriteAsyncResult {
3135 #[cfg(feature = "Win32_Foundation")]
GetWaitHandle(&self) -> super::super::Foundation::HANDLE3136 pub unsafe fn GetWaitHandle(&self) -> super::super::Foundation::HANDLE {
3137 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self)))
3138 }
GetResult(&self) -> ::windows::runtime::Result<()>3139 pub unsafe fn GetResult(&self) -> ::windows::runtime::Result<()> {
3140 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)).ok()
3141 }
3142 }
3143 unsafe impl ::windows::runtime::Interface for IDWriteAsyncResult {
3144 type Vtable = IDWriteAsyncResult_abi;
3145 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3458595069, 34363, 19731, [150, 81, 193, 248, 141, 199, 63, 226]);
3146 }
3147 impl ::std::convert::From<IDWriteAsyncResult> for ::windows::runtime::IUnknown {
from(value: IDWriteAsyncResult) -> Self3148 fn from(value: IDWriteAsyncResult) -> Self {
3149 unsafe { ::std::mem::transmute(value) }
3150 }
3151 }
3152 impl ::std::convert::From<&IDWriteAsyncResult> for ::windows::runtime::IUnknown {
from(value: &IDWriteAsyncResult) -> Self3153 fn from(value: &IDWriteAsyncResult) -> Self {
3154 ::std::convert::From::from(::std::clone::Clone::clone(value))
3155 }
3156 }
3157 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteAsyncResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3158 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3159 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3160 }
3161 }
3162 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteAsyncResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3163 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3164 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3165 }
3166 }
3167 #[repr(C)]
3168 #[doc(hidden)]
3169 pub struct IDWriteAsyncResult_abi(
3170 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3171 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3172 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3173 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::HANDLE,
3174 #[cfg(not(feature = "Win32_Foundation"))] usize,
3175 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3176 );
3177 #[repr(transparent)]
3178 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3179 pub struct IDWriteBitmapRenderTarget(::windows::runtime::IUnknown);
3180 impl IDWriteBitmapRenderTarget {
3181 #[cfg(feature = "Win32_Foundation")]
DrawGlyphRun<'a, Param4: ::windows::runtime::IntoParam<'a, IDWriteRenderingParams>>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: Param4, textcolor: u32) -> ::windows::runtime::Result<super::super::Foundation::RECT>3182 pub unsafe fn DrawGlyphRun<'a, Param4: ::windows::runtime::IntoParam<'a, IDWriteRenderingParams>>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: Param4, textcolor: u32) -> ::windows::runtime::Result<super::super::Foundation::RECT> {
3183 let mut result__: <super::super::Foundation::RECT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3184 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(baselineoriginx), ::std::mem::transmute(baselineoriginy), ::std::mem::transmute(measuringmode), ::std::mem::transmute(glyphrun), renderingparams.into_param().abi(), ::std::mem::transmute(textcolor), &mut result__).from_abi::<super::super::Foundation::RECT>(result__)
3185 }
3186 #[cfg(feature = "Win32_Graphics_Gdi")]
GetMemoryDC(&self) -> super::Gdi::HDC3187 pub unsafe fn GetMemoryDC(&self) -> super::Gdi::HDC {
3188 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)))
3189 }
GetPixelsPerDip(&self) -> f323190 pub unsafe fn GetPixelsPerDip(&self) -> f32 {
3191 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)))
3192 }
SetPixelsPerDip(&self, pixelsperdip: f32) -> ::windows::runtime::Result<()>3193 pub unsafe fn SetPixelsPerDip(&self, pixelsperdip: f32) -> ::windows::runtime::Result<()> {
3194 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pixelsperdip)).ok()
3195 }
GetCurrentTransform(&self) -> ::windows::runtime::Result<DWRITE_MATRIX>3196 pub unsafe fn GetCurrentTransform(&self) -> ::windows::runtime::Result<DWRITE_MATRIX> {
3197 let mut result__: <DWRITE_MATRIX as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3198 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<DWRITE_MATRIX>(result__)
3199 }
SetCurrentTransform(&self, transform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<()>3200 pub unsafe fn SetCurrentTransform(&self, transform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<()> {
3201 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(transform)).ok()
3202 }
3203 #[cfg(feature = "Win32_Foundation")]
GetSize(&self) -> ::windows::runtime::Result<super::super::Foundation::SIZE>3204 pub unsafe fn GetSize(&self) -> ::windows::runtime::Result<super::super::Foundation::SIZE> {
3205 let mut result__: <super::super::Foundation::SIZE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3206 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::SIZE>(result__)
3207 }
Resize(&self, width: u32, height: u32) -> ::windows::runtime::Result<()>3208 pub unsafe fn Resize(&self, width: u32, height: u32) -> ::windows::runtime::Result<()> {
3209 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(width), ::std::mem::transmute(height)).ok()
3210 }
3211 }
3212 unsafe impl ::windows::runtime::Interface for IDWriteBitmapRenderTarget {
3213 type Vtable = IDWriteBitmapRenderTarget_abi;
3214 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1582969507, 36351, 18291, [159, 246, 6, 150, 234, 183, 114, 103]);
3215 }
3216 impl ::std::convert::From<IDWriteBitmapRenderTarget> for ::windows::runtime::IUnknown {
from(value: IDWriteBitmapRenderTarget) -> Self3217 fn from(value: IDWriteBitmapRenderTarget) -> Self {
3218 unsafe { ::std::mem::transmute(value) }
3219 }
3220 }
3221 impl ::std::convert::From<&IDWriteBitmapRenderTarget> for ::windows::runtime::IUnknown {
from(value: &IDWriteBitmapRenderTarget) -> Self3222 fn from(value: &IDWriteBitmapRenderTarget) -> Self {
3223 ::std::convert::From::from(::std::clone::Clone::clone(value))
3224 }
3225 }
3226 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteBitmapRenderTarget {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3227 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3228 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3229 }
3230 }
3231 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteBitmapRenderTarget {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3232 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3233 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3234 }
3235 }
3236 #[repr(C)]
3237 #[doc(hidden)]
3238 pub struct IDWriteBitmapRenderTarget_abi(
3239 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3240 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3241 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3242 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, renderingparams: ::windows::runtime::RawPtr, textcolor: u32, blackboxrect: *mut super::super::Foundation::RECT) -> ::windows::runtime::HRESULT,
3243 #[cfg(not(feature = "Win32_Foundation"))] usize,
3244 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::Gdi::HDC,
3245 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
3246 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> f32,
3247 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pixelsperdip: f32) -> ::windows::runtime::HRESULT,
3248 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, transform: *mut DWRITE_MATRIX) -> ::windows::runtime::HRESULT,
3249 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, transform: *const DWRITE_MATRIX) -> ::windows::runtime::HRESULT,
3250 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, size: *mut super::super::Foundation::SIZE) -> ::windows::runtime::HRESULT,
3251 #[cfg(not(feature = "Win32_Foundation"))] usize,
3252 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, width: u32, height: u32) -> ::windows::runtime::HRESULT,
3253 );
3254 #[repr(transparent)]
3255 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3256 pub struct IDWriteBitmapRenderTarget1(::windows::runtime::IUnknown);
3257 impl IDWriteBitmapRenderTarget1 {
3258 #[cfg(feature = "Win32_Foundation")]
DrawGlyphRun<'a, Param4: ::windows::runtime::IntoParam<'a, IDWriteRenderingParams>>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: Param4, textcolor: u32) -> ::windows::runtime::Result<super::super::Foundation::RECT>3259 pub unsafe fn DrawGlyphRun<'a, Param4: ::windows::runtime::IntoParam<'a, IDWriteRenderingParams>>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: Param4, textcolor: u32) -> ::windows::runtime::Result<super::super::Foundation::RECT> {
3260 let mut result__: <super::super::Foundation::RECT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3261 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(baselineoriginx), ::std::mem::transmute(baselineoriginy), ::std::mem::transmute(measuringmode), ::std::mem::transmute(glyphrun), renderingparams.into_param().abi(), ::std::mem::transmute(textcolor), &mut result__).from_abi::<super::super::Foundation::RECT>(result__)
3262 }
3263 #[cfg(feature = "Win32_Graphics_Gdi")]
GetMemoryDC(&self) -> super::Gdi::HDC3264 pub unsafe fn GetMemoryDC(&self) -> super::Gdi::HDC {
3265 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)))
3266 }
GetPixelsPerDip(&self) -> f323267 pub unsafe fn GetPixelsPerDip(&self) -> f32 {
3268 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)))
3269 }
SetPixelsPerDip(&self, pixelsperdip: f32) -> ::windows::runtime::Result<()>3270 pub unsafe fn SetPixelsPerDip(&self, pixelsperdip: f32) -> ::windows::runtime::Result<()> {
3271 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pixelsperdip)).ok()
3272 }
GetCurrentTransform(&self) -> ::windows::runtime::Result<DWRITE_MATRIX>3273 pub unsafe fn GetCurrentTransform(&self) -> ::windows::runtime::Result<DWRITE_MATRIX> {
3274 let mut result__: <DWRITE_MATRIX as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3275 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<DWRITE_MATRIX>(result__)
3276 }
SetCurrentTransform(&self, transform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<()>3277 pub unsafe fn SetCurrentTransform(&self, transform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<()> {
3278 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(transform)).ok()
3279 }
3280 #[cfg(feature = "Win32_Foundation")]
GetSize(&self) -> ::windows::runtime::Result<super::super::Foundation::SIZE>3281 pub unsafe fn GetSize(&self) -> ::windows::runtime::Result<super::super::Foundation::SIZE> {
3282 let mut result__: <super::super::Foundation::SIZE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3283 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::SIZE>(result__)
3284 }
Resize(&self, width: u32, height: u32) -> ::windows::runtime::Result<()>3285 pub unsafe fn Resize(&self, width: u32, height: u32) -> ::windows::runtime::Result<()> {
3286 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(width), ::std::mem::transmute(height)).ok()
3287 }
GetTextAntialiasMode(&self) -> DWRITE_TEXT_ANTIALIAS_MODE3288 pub unsafe fn GetTextAntialiasMode(&self) -> DWRITE_TEXT_ANTIALIAS_MODE {
3289 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self)))
3290 }
SetTextAntialiasMode(&self, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE) -> ::windows::runtime::Result<()>3291 pub unsafe fn SetTextAntialiasMode(&self, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE) -> ::windows::runtime::Result<()> {
3292 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(antialiasmode)).ok()
3293 }
3294 }
3295 unsafe impl ::windows::runtime::Interface for IDWriteBitmapRenderTarget1 {
3296 type Vtable = IDWriteBitmapRenderTarget1_abi;
3297 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2032042648, 16115, 16944, [152, 128, 201, 189, 236, 196, 32, 100]);
3298 }
3299 impl ::std::convert::From<IDWriteBitmapRenderTarget1> for ::windows::runtime::IUnknown {
from(value: IDWriteBitmapRenderTarget1) -> Self3300 fn from(value: IDWriteBitmapRenderTarget1) -> Self {
3301 unsafe { ::std::mem::transmute(value) }
3302 }
3303 }
3304 impl ::std::convert::From<&IDWriteBitmapRenderTarget1> for ::windows::runtime::IUnknown {
from(value: &IDWriteBitmapRenderTarget1) -> Self3305 fn from(value: &IDWriteBitmapRenderTarget1) -> Self {
3306 ::std::convert::From::from(::std::clone::Clone::clone(value))
3307 }
3308 }
3309 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteBitmapRenderTarget1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3310 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3311 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3312 }
3313 }
3314 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteBitmapRenderTarget1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3315 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3316 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3317 }
3318 }
3319 impl ::std::convert::From<IDWriteBitmapRenderTarget1> for IDWriteBitmapRenderTarget {
from(value: IDWriteBitmapRenderTarget1) -> Self3320 fn from(value: IDWriteBitmapRenderTarget1) -> Self {
3321 unsafe { ::std::mem::transmute(value) }
3322 }
3323 }
3324 impl ::std::convert::From<&IDWriteBitmapRenderTarget1> for IDWriteBitmapRenderTarget {
from(value: &IDWriteBitmapRenderTarget1) -> Self3325 fn from(value: &IDWriteBitmapRenderTarget1) -> Self {
3326 ::std::convert::From::from(::std::clone::Clone::clone(value))
3327 }
3328 }
3329 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteBitmapRenderTarget> for IDWriteBitmapRenderTarget1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteBitmapRenderTarget>3330 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteBitmapRenderTarget> {
3331 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteBitmapRenderTarget>::into(self))
3332 }
3333 }
3334 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteBitmapRenderTarget> for &IDWriteBitmapRenderTarget1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteBitmapRenderTarget>3335 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteBitmapRenderTarget> {
3336 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteBitmapRenderTarget>::into(::std::clone::Clone::clone(self)))
3337 }
3338 }
3339 #[repr(C)]
3340 #[doc(hidden)]
3341 pub struct IDWriteBitmapRenderTarget1_abi(
3342 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3343 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3344 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3345 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, renderingparams: ::windows::runtime::RawPtr, textcolor: u32, blackboxrect: *mut super::super::Foundation::RECT) -> ::windows::runtime::HRESULT,
3346 #[cfg(not(feature = "Win32_Foundation"))] usize,
3347 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::Gdi::HDC,
3348 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
3349 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> f32,
3350 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pixelsperdip: f32) -> ::windows::runtime::HRESULT,
3351 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, transform: *mut DWRITE_MATRIX) -> ::windows::runtime::HRESULT,
3352 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, transform: *const DWRITE_MATRIX) -> ::windows::runtime::HRESULT,
3353 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, size: *mut super::super::Foundation::SIZE) -> ::windows::runtime::HRESULT,
3354 #[cfg(not(feature = "Win32_Foundation"))] usize,
3355 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, width: u32, height: u32) -> ::windows::runtime::HRESULT,
3356 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_TEXT_ANTIALIAS_MODE,
3357 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE) -> ::windows::runtime::HRESULT,
3358 );
3359 #[repr(transparent)]
3360 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3361 pub struct IDWriteColorGlyphRunEnumerator(::windows::runtime::IUnknown);
3362 impl IDWriteColorGlyphRunEnumerator {
3363 #[cfg(feature = "Win32_Foundation")]
MoveNext(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL>3364 pub unsafe fn MoveNext(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
3365 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3366 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
3367 }
3368 #[cfg(feature = "Win32_Foundation")]
GetCurrentRun(&self) -> ::windows::runtime::Result<*mut DWRITE_COLOR_GLYPH_RUN>3369 pub unsafe fn GetCurrentRun(&self) -> ::windows::runtime::Result<*mut DWRITE_COLOR_GLYPH_RUN> {
3370 let mut result__: <*mut DWRITE_COLOR_GLYPH_RUN as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3371 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut DWRITE_COLOR_GLYPH_RUN>(result__)
3372 }
3373 }
3374 unsafe impl ::windows::runtime::Interface for IDWriteColorGlyphRunEnumerator {
3375 type Vtable = IDWriteColorGlyphRunEnumerator_abi;
3376 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3542072855, 61783, 16802, [141, 36, 203, 119, 158, 5, 96, 232]);
3377 }
3378 impl ::std::convert::From<IDWriteColorGlyphRunEnumerator> for ::windows::runtime::IUnknown {
from(value: IDWriteColorGlyphRunEnumerator) -> Self3379 fn from(value: IDWriteColorGlyphRunEnumerator) -> Self {
3380 unsafe { ::std::mem::transmute(value) }
3381 }
3382 }
3383 impl ::std::convert::From<&IDWriteColorGlyphRunEnumerator> for ::windows::runtime::IUnknown {
from(value: &IDWriteColorGlyphRunEnumerator) -> Self3384 fn from(value: &IDWriteColorGlyphRunEnumerator) -> Self {
3385 ::std::convert::From::from(::std::clone::Clone::clone(value))
3386 }
3387 }
3388 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteColorGlyphRunEnumerator {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3389 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3390 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3391 }
3392 }
3393 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteColorGlyphRunEnumerator {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3394 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3395 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3396 }
3397 }
3398 #[repr(C)]
3399 #[doc(hidden)]
3400 pub struct IDWriteColorGlyphRunEnumerator_abi(
3401 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3402 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3403 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3404 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, hasrun: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
3405 #[cfg(not(feature = "Win32_Foundation"))] usize,
3406 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, colorglyphrun: *mut *mut DWRITE_COLOR_GLYPH_RUN) -> ::windows::runtime::HRESULT,
3407 #[cfg(not(feature = "Win32_Foundation"))] usize,
3408 );
3409 #[repr(transparent)]
3410 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3411 pub struct IDWriteColorGlyphRunEnumerator1(::windows::runtime::IUnknown);
3412 impl IDWriteColorGlyphRunEnumerator1 {
3413 #[cfg(feature = "Win32_Foundation")]
MoveNext(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL>3414 pub unsafe fn MoveNext(&self) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
3415 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3416 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
3417 }
3418 #[cfg(feature = "Win32_Foundation")]
GetCurrentRun(&self) -> ::windows::runtime::Result<*mut DWRITE_COLOR_GLYPH_RUN>3419 pub unsafe fn GetCurrentRun(&self) -> ::windows::runtime::Result<*mut DWRITE_COLOR_GLYPH_RUN> {
3420 let mut result__: <*mut DWRITE_COLOR_GLYPH_RUN as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3421 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut DWRITE_COLOR_GLYPH_RUN>(result__)
3422 }
3423 #[cfg(feature = "Win32_Foundation")]
GetCurrentRun2(&self) -> ::windows::runtime::Result<*mut DWRITE_COLOR_GLYPH_RUN1>3424 pub unsafe fn GetCurrentRun2(&self) -> ::windows::runtime::Result<*mut DWRITE_COLOR_GLYPH_RUN1> {
3425 let mut result__: <*mut DWRITE_COLOR_GLYPH_RUN1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3426 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<*mut DWRITE_COLOR_GLYPH_RUN1>(result__)
3427 }
3428 }
3429 unsafe impl ::windows::runtime::Interface for IDWriteColorGlyphRunEnumerator1 {
3430 type Vtable = IDWriteColorGlyphRunEnumerator1_abi;
3431 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2086635226, 51105, 20229, [184, 225, 85, 161, 121, 254, 90, 53]);
3432 }
3433 impl ::std::convert::From<IDWriteColorGlyphRunEnumerator1> for ::windows::runtime::IUnknown {
from(value: IDWriteColorGlyphRunEnumerator1) -> Self3434 fn from(value: IDWriteColorGlyphRunEnumerator1) -> Self {
3435 unsafe { ::std::mem::transmute(value) }
3436 }
3437 }
3438 impl ::std::convert::From<&IDWriteColorGlyphRunEnumerator1> for ::windows::runtime::IUnknown {
from(value: &IDWriteColorGlyphRunEnumerator1) -> Self3439 fn from(value: &IDWriteColorGlyphRunEnumerator1) -> Self {
3440 ::std::convert::From::from(::std::clone::Clone::clone(value))
3441 }
3442 }
3443 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteColorGlyphRunEnumerator1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3444 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3445 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3446 }
3447 }
3448 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteColorGlyphRunEnumerator1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3449 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3450 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3451 }
3452 }
3453 impl ::std::convert::From<IDWriteColorGlyphRunEnumerator1> for IDWriteColorGlyphRunEnumerator {
from(value: IDWriteColorGlyphRunEnumerator1) -> Self3454 fn from(value: IDWriteColorGlyphRunEnumerator1) -> Self {
3455 unsafe { ::std::mem::transmute(value) }
3456 }
3457 }
3458 impl ::std::convert::From<&IDWriteColorGlyphRunEnumerator1> for IDWriteColorGlyphRunEnumerator {
from(value: &IDWriteColorGlyphRunEnumerator1) -> Self3459 fn from(value: &IDWriteColorGlyphRunEnumerator1) -> Self {
3460 ::std::convert::From::from(::std::clone::Clone::clone(value))
3461 }
3462 }
3463 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteColorGlyphRunEnumerator> for IDWriteColorGlyphRunEnumerator1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteColorGlyphRunEnumerator>3464 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteColorGlyphRunEnumerator> {
3465 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteColorGlyphRunEnumerator>::into(self))
3466 }
3467 }
3468 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteColorGlyphRunEnumerator> for &IDWriteColorGlyphRunEnumerator1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteColorGlyphRunEnumerator>3469 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteColorGlyphRunEnumerator> {
3470 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteColorGlyphRunEnumerator>::into(::std::clone::Clone::clone(self)))
3471 }
3472 }
3473 #[repr(C)]
3474 #[doc(hidden)]
3475 pub struct IDWriteColorGlyphRunEnumerator1_abi(
3476 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3477 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3478 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3479 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, hasrun: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
3480 #[cfg(not(feature = "Win32_Foundation"))] usize,
3481 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, colorglyphrun: *mut *mut DWRITE_COLOR_GLYPH_RUN) -> ::windows::runtime::HRESULT,
3482 #[cfg(not(feature = "Win32_Foundation"))] usize,
3483 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, colorglyphrun: *mut *mut DWRITE_COLOR_GLYPH_RUN1) -> ::windows::runtime::HRESULT,
3484 #[cfg(not(feature = "Win32_Foundation"))] usize,
3485 );
3486 #[repr(transparent)]
3487 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3488 pub struct IDWriteFactory(::windows::runtime::IUnknown);
3489 impl IDWriteFactory {
3490 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>3491 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
3492 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
3493 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>3494 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
3495 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3496 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
3497 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>3498 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
3499 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
3500 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>3501 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
3502 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
3503 }
3504 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>3505 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
3506 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3507 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
3508 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>3509 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
3510 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3511 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
3512 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>3513 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
3514 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3515 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
3516 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>3517 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3518 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3519 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3520 }
3521 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>3522 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3523 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3524 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3525 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>3526 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3527 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3528 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3529 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>3530 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
3531 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
3532 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>3533 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
3534 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
3535 }
3536 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>3537 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
3538 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3539 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
3540 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>3541 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
3542 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3543 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
3544 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>3545 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
3546 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3547 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
3548 }
3549 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>3550 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
3551 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3552 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
3553 }
3554 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>3555 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
3556 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3557 (::windows::runtime::Interface::vtable(self).19)(
3558 ::std::mem::transmute_copy(self),
3559 string.into_param().abi(),
3560 ::std::mem::transmute(stringlength),
3561 textformat.into_param().abi(),
3562 ::std::mem::transmute(layoutwidth),
3563 ::std::mem::transmute(layoutheight),
3564 ::std::mem::transmute(pixelsperdip),
3565 ::std::mem::transmute(transform),
3566 usegdinatural.into_param().abi(),
3567 &mut result__,
3568 )
3569 .from_abi::<IDWriteTextLayout>(result__)
3570 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>3571 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
3572 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3573 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
3574 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>3575 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
3576 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3577 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
3578 }
3579 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>3580 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
3581 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3582 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
3583 }
3584 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>3585 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
3586 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3587 (::windows::runtime::Interface::vtable(self).23)(
3588 ::std::mem::transmute_copy(self),
3589 ::std::mem::transmute(glyphrun),
3590 ::std::mem::transmute(pixelsperdip),
3591 ::std::mem::transmute(transform),
3592 ::std::mem::transmute(renderingmode),
3593 ::std::mem::transmute(measuringmode),
3594 ::std::mem::transmute(baselineoriginx),
3595 ::std::mem::transmute(baselineoriginy),
3596 &mut result__,
3597 )
3598 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
3599 }
3600 }
3601 unsafe impl ::windows::runtime::Interface for IDWriteFactory {
3602 type Vtable = IDWriteFactory_abi;
3603 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3092901466, 55352, 19291, [162, 232, 26, 220, 125, 147, 219, 72]);
3604 }
3605 impl ::std::convert::From<IDWriteFactory> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory) -> Self3606 fn from(value: IDWriteFactory) -> Self {
3607 unsafe { ::std::mem::transmute(value) }
3608 }
3609 }
3610 impl ::std::convert::From<&IDWriteFactory> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory) -> Self3611 fn from(value: &IDWriteFactory) -> Self {
3612 ::std::convert::From::from(::std::clone::Clone::clone(value))
3613 }
3614 }
3615 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3616 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3617 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3618 }
3619 }
3620 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3621 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3622 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3623 }
3624 }
3625 #[repr(C)]
3626 #[doc(hidden)]
3627 pub struct IDWriteFactory_abi(
3628 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3629 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3630 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3631 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
3632 #[cfg(not(feature = "Win32_Foundation"))] usize,
3633 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3634 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3635 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3636 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3637 #[cfg(not(feature = "Win32_Foundation"))] usize,
3638 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3639 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3640 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3641 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3642 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
3643 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3644 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3645 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3646 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3647 #[cfg(not(feature = "Win32_Foundation"))] usize,
3648 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3649 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3650 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3651 #[cfg(not(feature = "Win32_Foundation"))] usize,
3652 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3653 #[cfg(not(feature = "Win32_Foundation"))] usize,
3654 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3655 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3656 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3657 #[cfg(not(feature = "Win32_Foundation"))] usize,
3658 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3659 #[cfg(not(feature = "Win32_Foundation"))] usize,
3660 );
3661 #[repr(transparent)]
3662 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3663 pub struct IDWriteFactory1(::windows::runtime::IUnknown);
3664 impl IDWriteFactory1 {
3665 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>3666 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
3667 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
3668 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>3669 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
3670 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3671 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
3672 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>3673 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
3674 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
3675 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>3676 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
3677 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
3678 }
3679 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>3680 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
3681 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3682 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
3683 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>3684 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
3685 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3686 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
3687 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>3688 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
3689 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3690 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
3691 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>3692 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3693 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3694 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3695 }
3696 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>3697 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3698 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3699 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3700 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>3701 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3702 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3703 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3704 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>3705 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
3706 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
3707 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>3708 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
3709 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
3710 }
3711 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>3712 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
3713 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3714 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
3715 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>3716 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
3717 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3718 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
3719 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>3720 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
3721 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3722 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
3723 }
3724 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>3725 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
3726 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3727 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
3728 }
3729 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>3730 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
3731 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3732 (::windows::runtime::Interface::vtable(self).19)(
3733 ::std::mem::transmute_copy(self),
3734 string.into_param().abi(),
3735 ::std::mem::transmute(stringlength),
3736 textformat.into_param().abi(),
3737 ::std::mem::transmute(layoutwidth),
3738 ::std::mem::transmute(layoutheight),
3739 ::std::mem::transmute(pixelsperdip),
3740 ::std::mem::transmute(transform),
3741 usegdinatural.into_param().abi(),
3742 &mut result__,
3743 )
3744 .from_abi::<IDWriteTextLayout>(result__)
3745 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>3746 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
3747 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3748 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
3749 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>3750 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
3751 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3752 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
3753 }
3754 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>3755 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
3756 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3757 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
3758 }
3759 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>3760 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
3761 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3762 (::windows::runtime::Interface::vtable(self).23)(
3763 ::std::mem::transmute_copy(self),
3764 ::std::mem::transmute(glyphrun),
3765 ::std::mem::transmute(pixelsperdip),
3766 ::std::mem::transmute(transform),
3767 ::std::mem::transmute(renderingmode),
3768 ::std::mem::transmute(measuringmode),
3769 ::std::mem::transmute(baselineoriginx),
3770 ::std::mem::transmute(baselineoriginy),
3771 &mut result__,
3772 )
3773 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
3774 }
3775 #[cfg(feature = "Win32_Foundation")]
GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>3776 pub unsafe fn GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
3777 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
3778 }
CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1>3779 pub unsafe fn CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1> {
3780 let mut result__: <IDWriteRenderingParams1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3781 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(enhancedcontrastgrayscale), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams1>(result__)
3782 }
3783 }
3784 unsafe impl ::windows::runtime::Interface for IDWriteFactory1 {
3785 type Vtable = IDWriteFactory1_abi;
3786 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(811020185, 56006, 16859, [161, 110, 4, 134, 48, 126, 96, 106]);
3787 }
3788 impl ::std::convert::From<IDWriteFactory1> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory1) -> Self3789 fn from(value: IDWriteFactory1) -> Self {
3790 unsafe { ::std::mem::transmute(value) }
3791 }
3792 }
3793 impl ::std::convert::From<&IDWriteFactory1> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory1) -> Self3794 fn from(value: &IDWriteFactory1) -> Self {
3795 ::std::convert::From::from(::std::clone::Clone::clone(value))
3796 }
3797 }
3798 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3799 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3800 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3801 }
3802 }
3803 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3804 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3805 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3806 }
3807 }
3808 impl ::std::convert::From<IDWriteFactory1> for IDWriteFactory {
from(value: IDWriteFactory1) -> Self3809 fn from(value: IDWriteFactory1) -> Self {
3810 unsafe { ::std::mem::transmute(value) }
3811 }
3812 }
3813 impl ::std::convert::From<&IDWriteFactory1> for IDWriteFactory {
from(value: &IDWriteFactory1) -> Self3814 fn from(value: &IDWriteFactory1) -> Self {
3815 ::std::convert::From::from(::std::clone::Clone::clone(value))
3816 }
3817 }
3818 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for IDWriteFactory1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>3819 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
3820 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(self))
3821 }
3822 }
3823 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for &IDWriteFactory1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>3824 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
3825 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(::std::clone::Clone::clone(self)))
3826 }
3827 }
3828 #[repr(C)]
3829 #[doc(hidden)]
3830 pub struct IDWriteFactory1_abi(
3831 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3832 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3833 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
3834 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
3835 #[cfg(not(feature = "Win32_Foundation"))] usize,
3836 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3837 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3838 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3839 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3840 #[cfg(not(feature = "Win32_Foundation"))] usize,
3841 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3842 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3843 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3844 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3845 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
3846 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3847 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3848 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3849 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3850 #[cfg(not(feature = "Win32_Foundation"))] usize,
3851 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3852 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3853 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3854 #[cfg(not(feature = "Win32_Foundation"))] usize,
3855 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3856 #[cfg(not(feature = "Win32_Foundation"))] usize,
3857 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3858 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3859 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3860 #[cfg(not(feature = "Win32_Foundation"))] usize,
3861 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3862 #[cfg(not(feature = "Win32_Foundation"))] usize,
3863 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
3864 #[cfg(not(feature = "Win32_Foundation"))] usize,
3865 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
3866 );
3867 #[repr(transparent)]
3868 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3869 pub struct IDWriteFactory2(::windows::runtime::IUnknown);
3870 impl IDWriteFactory2 {
3871 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>3872 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
3873 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
3874 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>3875 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
3876 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3877 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
3878 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>3879 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
3880 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
3881 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>3882 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
3883 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
3884 }
3885 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>3886 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
3887 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3888 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
3889 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>3890 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
3891 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3892 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
3893 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>3894 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
3895 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3896 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
3897 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>3898 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3899 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3900 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3901 }
3902 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>3903 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3904 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3905 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3906 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>3907 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
3908 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3909 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
3910 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>3911 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
3912 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
3913 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>3914 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
3915 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
3916 }
3917 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>3918 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
3919 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3920 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
3921 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>3922 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
3923 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3924 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
3925 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>3926 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
3927 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3928 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
3929 }
3930 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>3931 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
3932 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3933 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
3934 }
3935 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>3936 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
3937 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3938 (::windows::runtime::Interface::vtable(self).19)(
3939 ::std::mem::transmute_copy(self),
3940 string.into_param().abi(),
3941 ::std::mem::transmute(stringlength),
3942 textformat.into_param().abi(),
3943 ::std::mem::transmute(layoutwidth),
3944 ::std::mem::transmute(layoutheight),
3945 ::std::mem::transmute(pixelsperdip),
3946 ::std::mem::transmute(transform),
3947 usegdinatural.into_param().abi(),
3948 &mut result__,
3949 )
3950 .from_abi::<IDWriteTextLayout>(result__)
3951 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>3952 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
3953 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3954 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
3955 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>3956 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
3957 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3958 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
3959 }
3960 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>3961 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
3962 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3963 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
3964 }
3965 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>3966 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
3967 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3968 (::windows::runtime::Interface::vtable(self).23)(
3969 ::std::mem::transmute_copy(self),
3970 ::std::mem::transmute(glyphrun),
3971 ::std::mem::transmute(pixelsperdip),
3972 ::std::mem::transmute(transform),
3973 ::std::mem::transmute(renderingmode),
3974 ::std::mem::transmute(measuringmode),
3975 ::std::mem::transmute(baselineoriginx),
3976 ::std::mem::transmute(baselineoriginy),
3977 &mut result__,
3978 )
3979 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
3980 }
3981 #[cfg(feature = "Win32_Foundation")]
GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>3982 pub unsafe fn GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
3983 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
3984 }
CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1>3985 pub unsafe fn CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1> {
3986 let mut result__: <IDWriteRenderingParams1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3987 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(enhancedcontrastgrayscale), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams1>(result__)
3988 }
GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback>3989 pub unsafe fn GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback> {
3990 let mut result__: <IDWriteFontFallback as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3991 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallback>(result__)
3992 }
CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder>3993 pub unsafe fn CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder> {
3994 let mut result__: <IDWriteFontFallbackBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3995 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallbackBuilder>(result__)
3996 }
3997 #[cfg(feature = "Win32_Foundation")]
TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator>3998 pub unsafe fn TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator> {
3999 let mut result__: <IDWriteColorGlyphRunEnumerator as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4000 (::windows::runtime::Interface::vtable(self).28)(
4001 ::std::mem::transmute_copy(self),
4002 ::std::mem::transmute(baselineoriginx),
4003 ::std::mem::transmute(baselineoriginy),
4004 ::std::mem::transmute(glyphrun),
4005 ::std::mem::transmute(glyphrundescription),
4006 ::std::mem::transmute(measuringmode),
4007 ::std::mem::transmute(worldtodevicetransform),
4008 ::std::mem::transmute(colorpaletteindex),
4009 &mut result__,
4010 )
4011 .from_abi::<IDWriteColorGlyphRunEnumerator>(result__)
4012 }
CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2>4013 pub unsafe fn CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2> {
4014 let mut result__: <IDWriteRenderingParams2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4015 (::windows::runtime::Interface::vtable(self).29)(
4016 ::std::mem::transmute_copy(self),
4017 ::std::mem::transmute(gamma),
4018 ::std::mem::transmute(enhancedcontrast),
4019 ::std::mem::transmute(grayscaleenhancedcontrast),
4020 ::std::mem::transmute(cleartypelevel),
4021 ::std::mem::transmute(pixelgeometry),
4022 ::std::mem::transmute(renderingmode),
4023 ::std::mem::transmute(gridfitmode),
4024 &mut result__,
4025 )
4026 .from_abi::<IDWriteRenderingParams2>(result__)
4027 }
4028 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>4029 pub unsafe fn CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
4030 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4031 (::windows::runtime::Interface::vtable(self).30)(
4032 ::std::mem::transmute_copy(self),
4033 ::std::mem::transmute(glyphrun),
4034 ::std::mem::transmute(transform),
4035 ::std::mem::transmute(renderingmode),
4036 ::std::mem::transmute(measuringmode),
4037 ::std::mem::transmute(gridfitmode),
4038 ::std::mem::transmute(antialiasmode),
4039 ::std::mem::transmute(baselineoriginx),
4040 ::std::mem::transmute(baselineoriginy),
4041 &mut result__,
4042 )
4043 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
4044 }
4045 }
4046 unsafe impl ::windows::runtime::Interface for IDWriteFactory2 {
4047 type Vtable = IDWriteFactory2_abi;
4048 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(70909024, 51780, 18836, [141, 238, 58, 154, 247, 183, 50, 236]);
4049 }
4050 impl ::std::convert::From<IDWriteFactory2> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory2) -> Self4051 fn from(value: IDWriteFactory2) -> Self {
4052 unsafe { ::std::mem::transmute(value) }
4053 }
4054 }
4055 impl ::std::convert::From<&IDWriteFactory2> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory2) -> Self4056 fn from(value: &IDWriteFactory2) -> Self {
4057 ::std::convert::From::from(::std::clone::Clone::clone(value))
4058 }
4059 }
4060 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4061 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4062 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4063 }
4064 }
4065 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4066 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4067 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4068 }
4069 }
4070 impl ::std::convert::From<IDWriteFactory2> for IDWriteFactory1 {
from(value: IDWriteFactory2) -> Self4071 fn from(value: IDWriteFactory2) -> Self {
4072 unsafe { ::std::mem::transmute(value) }
4073 }
4074 }
4075 impl ::std::convert::From<&IDWriteFactory2> for IDWriteFactory1 {
from(value: &IDWriteFactory2) -> Self4076 fn from(value: &IDWriteFactory2) -> Self {
4077 ::std::convert::From::from(::std::clone::Clone::clone(value))
4078 }
4079 }
4080 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for IDWriteFactory2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>4081 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
4082 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(self))
4083 }
4084 }
4085 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for &IDWriteFactory2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>4086 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
4087 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(::std::clone::Clone::clone(self)))
4088 }
4089 }
4090 impl ::std::convert::From<IDWriteFactory2> for IDWriteFactory {
from(value: IDWriteFactory2) -> Self4091 fn from(value: IDWriteFactory2) -> Self {
4092 unsafe { ::std::mem::transmute(value) }
4093 }
4094 }
4095 impl ::std::convert::From<&IDWriteFactory2> for IDWriteFactory {
from(value: &IDWriteFactory2) -> Self4096 fn from(value: &IDWriteFactory2) -> Self {
4097 ::std::convert::From::from(::std::clone::Clone::clone(value))
4098 }
4099 }
4100 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for IDWriteFactory2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>4101 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
4102 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(self))
4103 }
4104 }
4105 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for &IDWriteFactory2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>4106 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
4107 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(::std::clone::Clone::clone(self)))
4108 }
4109 }
4110 #[repr(C)]
4111 #[doc(hidden)]
4112 pub struct IDWriteFactory2_abi(
4113 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4114 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4115 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4116 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4117 #[cfg(not(feature = "Win32_Foundation"))] usize,
4118 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4119 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4120 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4121 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4122 #[cfg(not(feature = "Win32_Foundation"))] usize,
4123 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4124 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4125 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4126 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4127 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
4128 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4129 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4130 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4131 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4132 #[cfg(not(feature = "Win32_Foundation"))] usize,
4133 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4134 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4135 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4136 #[cfg(not(feature = "Win32_Foundation"))] usize,
4137 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4138 #[cfg(not(feature = "Win32_Foundation"))] usize,
4139 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4140 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4141 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4142 #[cfg(not(feature = "Win32_Foundation"))] usize,
4143 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4144 #[cfg(not(feature = "Win32_Foundation"))] usize,
4145 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4146 #[cfg(not(feature = "Win32_Foundation"))] usize,
4147 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4148 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallback: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4149 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallbackbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4150 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4151 #[cfg(not(feature = "Win32_Foundation"))] usize,
4152 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4153 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4154 #[cfg(not(feature = "Win32_Foundation"))] usize,
4155 );
4156 #[repr(transparent)]
4157 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4158 pub struct IDWriteFactory3(::windows::runtime::IUnknown);
4159 impl IDWriteFactory3 {
4160 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>4161 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
4162 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
4163 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>4164 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
4165 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4166 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
4167 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>4168 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
4169 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
4170 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>4171 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
4172 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
4173 }
4174 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>4175 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
4176 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4177 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
4178 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>4179 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
4180 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4181 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
4182 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>4183 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
4184 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4185 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
4186 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>4187 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
4188 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4189 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
4190 }
4191 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>4192 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
4193 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4194 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
4195 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>4196 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
4197 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4198 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
4199 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>4200 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
4201 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
4202 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>4203 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
4204 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
4205 }
4206 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>4207 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
4208 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4209 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
4210 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>4211 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
4212 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4213 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
4214 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>4215 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
4216 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4217 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
4218 }
4219 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>4220 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
4221 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4222 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
4223 }
4224 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>4225 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
4226 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4227 (::windows::runtime::Interface::vtable(self).19)(
4228 ::std::mem::transmute_copy(self),
4229 string.into_param().abi(),
4230 ::std::mem::transmute(stringlength),
4231 textformat.into_param().abi(),
4232 ::std::mem::transmute(layoutwidth),
4233 ::std::mem::transmute(layoutheight),
4234 ::std::mem::transmute(pixelsperdip),
4235 ::std::mem::transmute(transform),
4236 usegdinatural.into_param().abi(),
4237 &mut result__,
4238 )
4239 .from_abi::<IDWriteTextLayout>(result__)
4240 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>4241 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
4242 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4243 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
4244 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>4245 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
4246 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4247 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
4248 }
4249 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>4250 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
4251 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4252 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
4253 }
4254 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>4255 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
4256 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4257 (::windows::runtime::Interface::vtable(self).23)(
4258 ::std::mem::transmute_copy(self),
4259 ::std::mem::transmute(glyphrun),
4260 ::std::mem::transmute(pixelsperdip),
4261 ::std::mem::transmute(transform),
4262 ::std::mem::transmute(renderingmode),
4263 ::std::mem::transmute(measuringmode),
4264 ::std::mem::transmute(baselineoriginx),
4265 ::std::mem::transmute(baselineoriginy),
4266 &mut result__,
4267 )
4268 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
4269 }
4270 #[cfg(feature = "Win32_Foundation")]
GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>4271 pub unsafe fn GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
4272 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
4273 }
CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1>4274 pub unsafe fn CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1> {
4275 let mut result__: <IDWriteRenderingParams1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4276 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(enhancedcontrastgrayscale), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams1>(result__)
4277 }
GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback>4278 pub unsafe fn GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback> {
4279 let mut result__: <IDWriteFontFallback as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4280 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallback>(result__)
4281 }
CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder>4282 pub unsafe fn CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder> {
4283 let mut result__: <IDWriteFontFallbackBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4284 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallbackBuilder>(result__)
4285 }
4286 #[cfg(feature = "Win32_Foundation")]
TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator>4287 pub unsafe fn TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator> {
4288 let mut result__: <IDWriteColorGlyphRunEnumerator as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4289 (::windows::runtime::Interface::vtable(self).28)(
4290 ::std::mem::transmute_copy(self),
4291 ::std::mem::transmute(baselineoriginx),
4292 ::std::mem::transmute(baselineoriginy),
4293 ::std::mem::transmute(glyphrun),
4294 ::std::mem::transmute(glyphrundescription),
4295 ::std::mem::transmute(measuringmode),
4296 ::std::mem::transmute(worldtodevicetransform),
4297 ::std::mem::transmute(colorpaletteindex),
4298 &mut result__,
4299 )
4300 .from_abi::<IDWriteColorGlyphRunEnumerator>(result__)
4301 }
CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2>4302 pub unsafe fn CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2> {
4303 let mut result__: <IDWriteRenderingParams2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4304 (::windows::runtime::Interface::vtable(self).29)(
4305 ::std::mem::transmute_copy(self),
4306 ::std::mem::transmute(gamma),
4307 ::std::mem::transmute(enhancedcontrast),
4308 ::std::mem::transmute(grayscaleenhancedcontrast),
4309 ::std::mem::transmute(cleartypelevel),
4310 ::std::mem::transmute(pixelgeometry),
4311 ::std::mem::transmute(renderingmode),
4312 ::std::mem::transmute(gridfitmode),
4313 &mut result__,
4314 )
4315 .from_abi::<IDWriteRenderingParams2>(result__)
4316 }
4317 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>4318 pub unsafe fn CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
4319 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4320 (::windows::runtime::Interface::vtable(self).30)(
4321 ::std::mem::transmute_copy(self),
4322 ::std::mem::transmute(glyphrun),
4323 ::std::mem::transmute(transform),
4324 ::std::mem::transmute(renderingmode),
4325 ::std::mem::transmute(measuringmode),
4326 ::std::mem::transmute(gridfitmode),
4327 ::std::mem::transmute(antialiasmode),
4328 ::std::mem::transmute(baselineoriginx),
4329 ::std::mem::transmute(baselineoriginy),
4330 &mut result__,
4331 )
4332 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
4333 }
4334 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>4335 pub unsafe fn CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
4336 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4337 (::windows::runtime::Interface::vtable(self).31)(
4338 ::std::mem::transmute_copy(self),
4339 ::std::mem::transmute(glyphrun),
4340 ::std::mem::transmute(transform),
4341 ::std::mem::transmute(renderingmode),
4342 ::std::mem::transmute(measuringmode),
4343 ::std::mem::transmute(gridfitmode),
4344 ::std::mem::transmute(antialiasmode),
4345 ::std::mem::transmute(baselineoriginx),
4346 ::std::mem::transmute(baselineoriginy),
4347 &mut result__,
4348 )
4349 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
4350 }
CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3>4351 pub unsafe fn CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3> {
4352 let mut result__: <IDWriteRenderingParams3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4353 (::windows::runtime::Interface::vtable(self).32)(
4354 ::std::mem::transmute_copy(self),
4355 ::std::mem::transmute(gamma),
4356 ::std::mem::transmute(enhancedcontrast),
4357 ::std::mem::transmute(grayscaleenhancedcontrast),
4358 ::std::mem::transmute(cleartypelevel),
4359 ::std::mem::transmute(pixelgeometry),
4360 ::std::mem::transmute(renderingmode),
4361 ::std::mem::transmute(gridfitmode),
4362 &mut result__,
4363 )
4364 .from_abi::<IDWriteRenderingParams3>(result__)
4365 }
CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>4366 pub unsafe fn CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
4367 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4368 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
4369 }
4370 #[cfg(feature = "Win32_Foundation")]
CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>4371 pub unsafe fn CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
4372 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4373 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
4374 }
GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>4375 pub unsafe fn GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
4376 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4377 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
4378 }
CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder>4379 pub unsafe fn CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder> {
4380 let mut result__: <IDWriteFontSetBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4381 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder>(result__)
4382 }
CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1>4383 pub unsafe fn CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1> {
4384 let mut result__: <IDWriteFontCollection1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4385 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), fontset.into_param().abi(), &mut result__).from_abi::<IDWriteFontCollection1>(result__)
4386 }
4387 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()>4388 pub unsafe fn GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()> {
4389 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
4390 }
GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue>4391 pub unsafe fn GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue> {
4392 let mut result__: <IDWriteFontDownloadQueue as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4393 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontDownloadQueue>(result__)
4394 }
4395 }
4396 unsafe impl ::windows::runtime::Interface for IDWriteFactory3 {
4397 type Vtable = IDWriteFactory3_abi;
4398 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2585477571, 54203, 18026, [135, 252, 254, 103, 85, 106, 59, 101]);
4399 }
4400 impl ::std::convert::From<IDWriteFactory3> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory3) -> Self4401 fn from(value: IDWriteFactory3) -> Self {
4402 unsafe { ::std::mem::transmute(value) }
4403 }
4404 }
4405 impl ::std::convert::From<&IDWriteFactory3> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory3) -> Self4406 fn from(value: &IDWriteFactory3) -> Self {
4407 ::std::convert::From::from(::std::clone::Clone::clone(value))
4408 }
4409 }
4410 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4411 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4412 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4413 }
4414 }
4415 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4416 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4417 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4418 }
4419 }
4420 impl ::std::convert::From<IDWriteFactory3> for IDWriteFactory2 {
from(value: IDWriteFactory3) -> Self4421 fn from(value: IDWriteFactory3) -> Self {
4422 unsafe { ::std::mem::transmute(value) }
4423 }
4424 }
4425 impl ::std::convert::From<&IDWriteFactory3> for IDWriteFactory2 {
from(value: &IDWriteFactory3) -> Self4426 fn from(value: &IDWriteFactory3) -> Self {
4427 ::std::convert::From::from(::std::clone::Clone::clone(value))
4428 }
4429 }
4430 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>4431 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
4432 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(self))
4433 }
4434 }
4435 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for &IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>4436 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
4437 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(::std::clone::Clone::clone(self)))
4438 }
4439 }
4440 impl ::std::convert::From<IDWriteFactory3> for IDWriteFactory1 {
from(value: IDWriteFactory3) -> Self4441 fn from(value: IDWriteFactory3) -> Self {
4442 unsafe { ::std::mem::transmute(value) }
4443 }
4444 }
4445 impl ::std::convert::From<&IDWriteFactory3> for IDWriteFactory1 {
from(value: &IDWriteFactory3) -> Self4446 fn from(value: &IDWriteFactory3) -> Self {
4447 ::std::convert::From::from(::std::clone::Clone::clone(value))
4448 }
4449 }
4450 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>4451 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
4452 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(self))
4453 }
4454 }
4455 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for &IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>4456 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
4457 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(::std::clone::Clone::clone(self)))
4458 }
4459 }
4460 impl ::std::convert::From<IDWriteFactory3> for IDWriteFactory {
from(value: IDWriteFactory3) -> Self4461 fn from(value: IDWriteFactory3) -> Self {
4462 unsafe { ::std::mem::transmute(value) }
4463 }
4464 }
4465 impl ::std::convert::From<&IDWriteFactory3> for IDWriteFactory {
from(value: &IDWriteFactory3) -> Self4466 fn from(value: &IDWriteFactory3) -> Self {
4467 ::std::convert::From::from(::std::clone::Clone::clone(value))
4468 }
4469 }
4470 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>4471 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
4472 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(self))
4473 }
4474 }
4475 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for &IDWriteFactory3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>4476 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
4477 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(::std::clone::Clone::clone(self)))
4478 }
4479 }
4480 #[repr(C)]
4481 #[doc(hidden)]
4482 pub struct IDWriteFactory3_abi(
4483 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4484 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4485 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4486 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4487 #[cfg(not(feature = "Win32_Foundation"))] usize,
4488 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4489 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4490 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4491 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4492 #[cfg(not(feature = "Win32_Foundation"))] usize,
4493 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4494 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4495 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4496 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4497 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
4498 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4499 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4500 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4501 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4502 #[cfg(not(feature = "Win32_Foundation"))] usize,
4503 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4504 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4505 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4506 #[cfg(not(feature = "Win32_Foundation"))] usize,
4507 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4508 #[cfg(not(feature = "Win32_Foundation"))] usize,
4509 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4510 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4511 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4512 #[cfg(not(feature = "Win32_Foundation"))] usize,
4513 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4514 #[cfg(not(feature = "Win32_Foundation"))] usize,
4515 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4516 #[cfg(not(feature = "Win32_Foundation"))] usize,
4517 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4518 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallback: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4519 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallbackbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4520 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4521 #[cfg(not(feature = "Win32_Foundation"))] usize,
4522 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4523 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4524 #[cfg(not(feature = "Win32_Foundation"))] usize,
4525 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4526 #[cfg(not(feature = "Win32_Foundation"))] usize,
4527 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4528 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4529 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4530 #[cfg(not(feature = "Win32_Foundation"))] usize,
4531 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4532 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4533 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4534 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4535 #[cfg(not(feature = "Win32_Foundation"))] usize,
4536 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontdownloadqueue: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4537 );
4538 #[repr(transparent)]
4539 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4540 pub struct IDWriteFactory4(::windows::runtime::IUnknown);
4541 impl IDWriteFactory4 {
4542 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>4543 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
4544 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
4545 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>4546 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
4547 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4548 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
4549 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>4550 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
4551 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
4552 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>4553 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
4554 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
4555 }
4556 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>4557 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
4558 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4559 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
4560 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>4561 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
4562 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4563 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
4564 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>4565 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
4566 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4567 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
4568 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>4569 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
4570 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4571 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
4572 }
4573 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>4574 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
4575 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4576 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
4577 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>4578 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
4579 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4580 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
4581 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>4582 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
4583 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
4584 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>4585 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
4586 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
4587 }
4588 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>4589 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
4590 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4591 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
4592 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>4593 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
4594 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4595 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
4596 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>4597 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
4598 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4599 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
4600 }
4601 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>4602 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
4603 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4604 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
4605 }
4606 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>4607 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
4608 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4609 (::windows::runtime::Interface::vtable(self).19)(
4610 ::std::mem::transmute_copy(self),
4611 string.into_param().abi(),
4612 ::std::mem::transmute(stringlength),
4613 textformat.into_param().abi(),
4614 ::std::mem::transmute(layoutwidth),
4615 ::std::mem::transmute(layoutheight),
4616 ::std::mem::transmute(pixelsperdip),
4617 ::std::mem::transmute(transform),
4618 usegdinatural.into_param().abi(),
4619 &mut result__,
4620 )
4621 .from_abi::<IDWriteTextLayout>(result__)
4622 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>4623 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
4624 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4625 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
4626 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>4627 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
4628 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4629 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
4630 }
4631 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>4632 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
4633 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4634 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
4635 }
4636 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>4637 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
4638 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4639 (::windows::runtime::Interface::vtable(self).23)(
4640 ::std::mem::transmute_copy(self),
4641 ::std::mem::transmute(glyphrun),
4642 ::std::mem::transmute(pixelsperdip),
4643 ::std::mem::transmute(transform),
4644 ::std::mem::transmute(renderingmode),
4645 ::std::mem::transmute(measuringmode),
4646 ::std::mem::transmute(baselineoriginx),
4647 ::std::mem::transmute(baselineoriginy),
4648 &mut result__,
4649 )
4650 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
4651 }
4652 #[cfg(feature = "Win32_Foundation")]
GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>4653 pub unsafe fn GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
4654 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
4655 }
CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1>4656 pub unsafe fn CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1> {
4657 let mut result__: <IDWriteRenderingParams1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4658 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(enhancedcontrastgrayscale), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams1>(result__)
4659 }
GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback>4660 pub unsafe fn GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback> {
4661 let mut result__: <IDWriteFontFallback as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4662 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallback>(result__)
4663 }
CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder>4664 pub unsafe fn CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder> {
4665 let mut result__: <IDWriteFontFallbackBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4666 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallbackBuilder>(result__)
4667 }
4668 #[cfg(feature = "Win32_Foundation")]
TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator>4669 pub unsafe fn TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator> {
4670 let mut result__: <IDWriteColorGlyphRunEnumerator as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4671 (::windows::runtime::Interface::vtable(self).28)(
4672 ::std::mem::transmute_copy(self),
4673 ::std::mem::transmute(baselineoriginx),
4674 ::std::mem::transmute(baselineoriginy),
4675 ::std::mem::transmute(glyphrun),
4676 ::std::mem::transmute(glyphrundescription),
4677 ::std::mem::transmute(measuringmode),
4678 ::std::mem::transmute(worldtodevicetransform),
4679 ::std::mem::transmute(colorpaletteindex),
4680 &mut result__,
4681 )
4682 .from_abi::<IDWriteColorGlyphRunEnumerator>(result__)
4683 }
CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2>4684 pub unsafe fn CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2> {
4685 let mut result__: <IDWriteRenderingParams2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4686 (::windows::runtime::Interface::vtable(self).29)(
4687 ::std::mem::transmute_copy(self),
4688 ::std::mem::transmute(gamma),
4689 ::std::mem::transmute(enhancedcontrast),
4690 ::std::mem::transmute(grayscaleenhancedcontrast),
4691 ::std::mem::transmute(cleartypelevel),
4692 ::std::mem::transmute(pixelgeometry),
4693 ::std::mem::transmute(renderingmode),
4694 ::std::mem::transmute(gridfitmode),
4695 &mut result__,
4696 )
4697 .from_abi::<IDWriteRenderingParams2>(result__)
4698 }
4699 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>4700 pub unsafe fn CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
4701 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4702 (::windows::runtime::Interface::vtable(self).30)(
4703 ::std::mem::transmute_copy(self),
4704 ::std::mem::transmute(glyphrun),
4705 ::std::mem::transmute(transform),
4706 ::std::mem::transmute(renderingmode),
4707 ::std::mem::transmute(measuringmode),
4708 ::std::mem::transmute(gridfitmode),
4709 ::std::mem::transmute(antialiasmode),
4710 ::std::mem::transmute(baselineoriginx),
4711 ::std::mem::transmute(baselineoriginy),
4712 &mut result__,
4713 )
4714 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
4715 }
4716 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>4717 pub unsafe fn CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
4718 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4719 (::windows::runtime::Interface::vtable(self).31)(
4720 ::std::mem::transmute_copy(self),
4721 ::std::mem::transmute(glyphrun),
4722 ::std::mem::transmute(transform),
4723 ::std::mem::transmute(renderingmode),
4724 ::std::mem::transmute(measuringmode),
4725 ::std::mem::transmute(gridfitmode),
4726 ::std::mem::transmute(antialiasmode),
4727 ::std::mem::transmute(baselineoriginx),
4728 ::std::mem::transmute(baselineoriginy),
4729 &mut result__,
4730 )
4731 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
4732 }
CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3>4733 pub unsafe fn CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3> {
4734 let mut result__: <IDWriteRenderingParams3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4735 (::windows::runtime::Interface::vtable(self).32)(
4736 ::std::mem::transmute_copy(self),
4737 ::std::mem::transmute(gamma),
4738 ::std::mem::transmute(enhancedcontrast),
4739 ::std::mem::transmute(grayscaleenhancedcontrast),
4740 ::std::mem::transmute(cleartypelevel),
4741 ::std::mem::transmute(pixelgeometry),
4742 ::std::mem::transmute(renderingmode),
4743 ::std::mem::transmute(gridfitmode),
4744 &mut result__,
4745 )
4746 .from_abi::<IDWriteRenderingParams3>(result__)
4747 }
CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>4748 pub unsafe fn CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
4749 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4750 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
4751 }
4752 #[cfg(feature = "Win32_Foundation")]
CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>4753 pub unsafe fn CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
4754 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4755 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
4756 }
GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>4757 pub unsafe fn GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
4758 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4759 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
4760 }
CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder>4761 pub unsafe fn CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder> {
4762 let mut result__: <IDWriteFontSetBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4763 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder>(result__)
4764 }
CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1>4765 pub unsafe fn CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1> {
4766 let mut result__: <IDWriteFontCollection1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4767 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), fontset.into_param().abi(), &mut result__).from_abi::<IDWriteFontCollection1>(result__)
4768 }
4769 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()>4770 pub unsafe fn GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()> {
4771 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
4772 }
GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue>4773 pub unsafe fn GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue> {
4774 let mut result__: <IDWriteFontDownloadQueue as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4775 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontDownloadQueue>(result__)
4776 }
4777 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1>4778 pub unsafe fn TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1> {
4779 let mut result__: <IDWriteColorGlyphRunEnumerator1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4780 (::windows::runtime::Interface::vtable(self).40)(
4781 ::std::mem::transmute_copy(self),
4782 baselineorigin.into_param().abi(),
4783 ::std::mem::transmute(glyphrun),
4784 ::std::mem::transmute(glyphrundescription),
4785 ::std::mem::transmute(desiredglyphimageformats),
4786 ::std::mem::transmute(measuringmode),
4787 ::std::mem::transmute(worldanddpitransform),
4788 ::std::mem::transmute(colorpaletteindex),
4789 &mut result__,
4790 )
4791 .from_abi::<IDWriteColorGlyphRunEnumerator1>(result__)
4792 }
4793 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>4794 pub unsafe fn ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
4795 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4796 (::windows::runtime::Interface::vtable(self).41)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), baselineorigin.into_param().abi(), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
4797 }
4798 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>4799 pub unsafe fn ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
4800 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4801 (::windows::runtime::Interface::vtable(self).42)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), ::std::mem::transmute(measuringmode), baselineorigin.into_param().abi(), ::std::mem::transmute(worldanddpitransform), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
4802 }
4803 }
4804 unsafe impl ::windows::runtime::Interface for IDWriteFactory4 {
4805 type Vtable = IDWriteFactory4_abi;
4806 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1259035603, 1943, 17737, [138, 197, 254, 145, 92, 197, 56, 86]);
4807 }
4808 impl ::std::convert::From<IDWriteFactory4> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory4) -> Self4809 fn from(value: IDWriteFactory4) -> Self {
4810 unsafe { ::std::mem::transmute(value) }
4811 }
4812 }
4813 impl ::std::convert::From<&IDWriteFactory4> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory4) -> Self4814 fn from(value: &IDWriteFactory4) -> Self {
4815 ::std::convert::From::from(::std::clone::Clone::clone(value))
4816 }
4817 }
4818 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4819 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4820 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4821 }
4822 }
4823 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4824 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4825 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4826 }
4827 }
4828 impl ::std::convert::From<IDWriteFactory4> for IDWriteFactory3 {
from(value: IDWriteFactory4) -> Self4829 fn from(value: IDWriteFactory4) -> Self {
4830 unsafe { ::std::mem::transmute(value) }
4831 }
4832 }
4833 impl ::std::convert::From<&IDWriteFactory4> for IDWriteFactory3 {
from(value: &IDWriteFactory4) -> Self4834 fn from(value: &IDWriteFactory4) -> Self {
4835 ::std::convert::From::from(::std::clone::Clone::clone(value))
4836 }
4837 }
4838 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>4839 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
4840 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(self))
4841 }
4842 }
4843 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for &IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>4844 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
4845 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(::std::clone::Clone::clone(self)))
4846 }
4847 }
4848 impl ::std::convert::From<IDWriteFactory4> for IDWriteFactory2 {
from(value: IDWriteFactory4) -> Self4849 fn from(value: IDWriteFactory4) -> Self {
4850 unsafe { ::std::mem::transmute(value) }
4851 }
4852 }
4853 impl ::std::convert::From<&IDWriteFactory4> for IDWriteFactory2 {
from(value: &IDWriteFactory4) -> Self4854 fn from(value: &IDWriteFactory4) -> Self {
4855 ::std::convert::From::from(::std::clone::Clone::clone(value))
4856 }
4857 }
4858 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>4859 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
4860 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(self))
4861 }
4862 }
4863 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for &IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>4864 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
4865 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(::std::clone::Clone::clone(self)))
4866 }
4867 }
4868 impl ::std::convert::From<IDWriteFactory4> for IDWriteFactory1 {
from(value: IDWriteFactory4) -> Self4869 fn from(value: IDWriteFactory4) -> Self {
4870 unsafe { ::std::mem::transmute(value) }
4871 }
4872 }
4873 impl ::std::convert::From<&IDWriteFactory4> for IDWriteFactory1 {
from(value: &IDWriteFactory4) -> Self4874 fn from(value: &IDWriteFactory4) -> Self {
4875 ::std::convert::From::from(::std::clone::Clone::clone(value))
4876 }
4877 }
4878 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>4879 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
4880 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(self))
4881 }
4882 }
4883 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for &IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>4884 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
4885 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(::std::clone::Clone::clone(self)))
4886 }
4887 }
4888 impl ::std::convert::From<IDWriteFactory4> for IDWriteFactory {
from(value: IDWriteFactory4) -> Self4889 fn from(value: IDWriteFactory4) -> Self {
4890 unsafe { ::std::mem::transmute(value) }
4891 }
4892 }
4893 impl ::std::convert::From<&IDWriteFactory4> for IDWriteFactory {
from(value: &IDWriteFactory4) -> Self4894 fn from(value: &IDWriteFactory4) -> Self {
4895 ::std::convert::From::from(::std::clone::Clone::clone(value))
4896 }
4897 }
4898 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>4899 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
4900 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(self))
4901 }
4902 }
4903 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for &IDWriteFactory4 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>4904 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
4905 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(::std::clone::Clone::clone(self)))
4906 }
4907 }
4908 #[repr(C)]
4909 #[doc(hidden)]
4910 pub struct IDWriteFactory4_abi(
4911 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4912 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4913 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
4914 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4915 #[cfg(not(feature = "Win32_Foundation"))] usize,
4916 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4917 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4918 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4919 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4920 #[cfg(not(feature = "Win32_Foundation"))] usize,
4921 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4922 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4923 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4924 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4925 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
4926 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4927 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4928 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4929 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4930 #[cfg(not(feature = "Win32_Foundation"))] usize,
4931 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4932 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4933 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4934 #[cfg(not(feature = "Win32_Foundation"))] usize,
4935 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4936 #[cfg(not(feature = "Win32_Foundation"))] usize,
4937 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4938 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4939 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4940 #[cfg(not(feature = "Win32_Foundation"))] usize,
4941 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4942 #[cfg(not(feature = "Win32_Foundation"))] usize,
4943 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4944 #[cfg(not(feature = "Win32_Foundation"))] usize,
4945 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4946 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallback: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4947 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallbackbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4948 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4949 #[cfg(not(feature = "Win32_Foundation"))] usize,
4950 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4951 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4952 #[cfg(not(feature = "Win32_Foundation"))] usize,
4953 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4954 #[cfg(not(feature = "Win32_Foundation"))] usize,
4955 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4956 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4957 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4958 #[cfg(not(feature = "Win32_Foundation"))] usize,
4959 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4960 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4961 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4962 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
4963 #[cfg(not(feature = "Win32_Foundation"))] usize,
4964 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontdownloadqueue: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4965 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
4966 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
4967 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
4968 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
4969 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
4970 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: super::Direct2D::D2D_POINT_2F, worldanddpitransform: *const DWRITE_MATRIX, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
4971 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
4972 );
4973 #[repr(transparent)]
4974 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4975 pub struct IDWriteFactory5(::windows::runtime::IUnknown);
4976 impl IDWriteFactory5 {
4977 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>4978 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
4979 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
4980 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>4981 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
4982 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4983 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
4984 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>4985 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
4986 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
4987 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>4988 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
4989 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
4990 }
4991 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>4992 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
4993 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4994 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
4995 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>4996 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
4997 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4998 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
4999 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>5000 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
5001 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5002 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
5003 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>5004 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
5005 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5006 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
5007 }
5008 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>5009 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
5010 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5011 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
5012 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>5013 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
5014 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5015 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
5016 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>5017 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
5018 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
5019 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>5020 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
5021 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
5022 }
5023 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>5024 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
5025 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5026 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
5027 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>5028 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
5029 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5030 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
5031 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>5032 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
5033 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5034 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
5035 }
5036 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>5037 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
5038 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5039 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
5040 }
5041 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>5042 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
5043 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5044 (::windows::runtime::Interface::vtable(self).19)(
5045 ::std::mem::transmute_copy(self),
5046 string.into_param().abi(),
5047 ::std::mem::transmute(stringlength),
5048 textformat.into_param().abi(),
5049 ::std::mem::transmute(layoutwidth),
5050 ::std::mem::transmute(layoutheight),
5051 ::std::mem::transmute(pixelsperdip),
5052 ::std::mem::transmute(transform),
5053 usegdinatural.into_param().abi(),
5054 &mut result__,
5055 )
5056 .from_abi::<IDWriteTextLayout>(result__)
5057 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>5058 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
5059 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5060 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
5061 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>5062 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
5063 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5064 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
5065 }
5066 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>5067 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
5068 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5069 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
5070 }
5071 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>5072 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
5073 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5074 (::windows::runtime::Interface::vtable(self).23)(
5075 ::std::mem::transmute_copy(self),
5076 ::std::mem::transmute(glyphrun),
5077 ::std::mem::transmute(pixelsperdip),
5078 ::std::mem::transmute(transform),
5079 ::std::mem::transmute(renderingmode),
5080 ::std::mem::transmute(measuringmode),
5081 ::std::mem::transmute(baselineoriginx),
5082 ::std::mem::transmute(baselineoriginy),
5083 &mut result__,
5084 )
5085 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
5086 }
5087 #[cfg(feature = "Win32_Foundation")]
GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>5088 pub unsafe fn GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
5089 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
5090 }
CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1>5091 pub unsafe fn CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1> {
5092 let mut result__: <IDWriteRenderingParams1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5093 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(enhancedcontrastgrayscale), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams1>(result__)
5094 }
GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback>5095 pub unsafe fn GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback> {
5096 let mut result__: <IDWriteFontFallback as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5097 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallback>(result__)
5098 }
CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder>5099 pub unsafe fn CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder> {
5100 let mut result__: <IDWriteFontFallbackBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5101 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallbackBuilder>(result__)
5102 }
5103 #[cfg(feature = "Win32_Foundation")]
TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator>5104 pub unsafe fn TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator> {
5105 let mut result__: <IDWriteColorGlyphRunEnumerator as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5106 (::windows::runtime::Interface::vtable(self).28)(
5107 ::std::mem::transmute_copy(self),
5108 ::std::mem::transmute(baselineoriginx),
5109 ::std::mem::transmute(baselineoriginy),
5110 ::std::mem::transmute(glyphrun),
5111 ::std::mem::transmute(glyphrundescription),
5112 ::std::mem::transmute(measuringmode),
5113 ::std::mem::transmute(worldtodevicetransform),
5114 ::std::mem::transmute(colorpaletteindex),
5115 &mut result__,
5116 )
5117 .from_abi::<IDWriteColorGlyphRunEnumerator>(result__)
5118 }
CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2>5119 pub unsafe fn CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2> {
5120 let mut result__: <IDWriteRenderingParams2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5121 (::windows::runtime::Interface::vtable(self).29)(
5122 ::std::mem::transmute_copy(self),
5123 ::std::mem::transmute(gamma),
5124 ::std::mem::transmute(enhancedcontrast),
5125 ::std::mem::transmute(grayscaleenhancedcontrast),
5126 ::std::mem::transmute(cleartypelevel),
5127 ::std::mem::transmute(pixelgeometry),
5128 ::std::mem::transmute(renderingmode),
5129 ::std::mem::transmute(gridfitmode),
5130 &mut result__,
5131 )
5132 .from_abi::<IDWriteRenderingParams2>(result__)
5133 }
5134 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>5135 pub unsafe fn CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
5136 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5137 (::windows::runtime::Interface::vtable(self).30)(
5138 ::std::mem::transmute_copy(self),
5139 ::std::mem::transmute(glyphrun),
5140 ::std::mem::transmute(transform),
5141 ::std::mem::transmute(renderingmode),
5142 ::std::mem::transmute(measuringmode),
5143 ::std::mem::transmute(gridfitmode),
5144 ::std::mem::transmute(antialiasmode),
5145 ::std::mem::transmute(baselineoriginx),
5146 ::std::mem::transmute(baselineoriginy),
5147 &mut result__,
5148 )
5149 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
5150 }
5151 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>5152 pub unsafe fn CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
5153 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5154 (::windows::runtime::Interface::vtable(self).31)(
5155 ::std::mem::transmute_copy(self),
5156 ::std::mem::transmute(glyphrun),
5157 ::std::mem::transmute(transform),
5158 ::std::mem::transmute(renderingmode),
5159 ::std::mem::transmute(measuringmode),
5160 ::std::mem::transmute(gridfitmode),
5161 ::std::mem::transmute(antialiasmode),
5162 ::std::mem::transmute(baselineoriginx),
5163 ::std::mem::transmute(baselineoriginy),
5164 &mut result__,
5165 )
5166 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
5167 }
CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3>5168 pub unsafe fn CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3> {
5169 let mut result__: <IDWriteRenderingParams3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5170 (::windows::runtime::Interface::vtable(self).32)(
5171 ::std::mem::transmute_copy(self),
5172 ::std::mem::transmute(gamma),
5173 ::std::mem::transmute(enhancedcontrast),
5174 ::std::mem::transmute(grayscaleenhancedcontrast),
5175 ::std::mem::transmute(cleartypelevel),
5176 ::std::mem::transmute(pixelgeometry),
5177 ::std::mem::transmute(renderingmode),
5178 ::std::mem::transmute(gridfitmode),
5179 &mut result__,
5180 )
5181 .from_abi::<IDWriteRenderingParams3>(result__)
5182 }
CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>5183 pub unsafe fn CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
5184 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5185 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
5186 }
5187 #[cfg(feature = "Win32_Foundation")]
CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>5188 pub unsafe fn CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
5189 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5190 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
5191 }
GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>5192 pub unsafe fn GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
5193 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5194 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
5195 }
CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder>5196 pub unsafe fn CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder> {
5197 let mut result__: <IDWriteFontSetBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5198 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder>(result__)
5199 }
CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1>5200 pub unsafe fn CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1> {
5201 let mut result__: <IDWriteFontCollection1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5202 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), fontset.into_param().abi(), &mut result__).from_abi::<IDWriteFontCollection1>(result__)
5203 }
5204 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()>5205 pub unsafe fn GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()> {
5206 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
5207 }
GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue>5208 pub unsafe fn GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue> {
5209 let mut result__: <IDWriteFontDownloadQueue as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5210 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontDownloadQueue>(result__)
5211 }
5212 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1>5213 pub unsafe fn TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1> {
5214 let mut result__: <IDWriteColorGlyphRunEnumerator1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5215 (::windows::runtime::Interface::vtable(self).40)(
5216 ::std::mem::transmute_copy(self),
5217 baselineorigin.into_param().abi(),
5218 ::std::mem::transmute(glyphrun),
5219 ::std::mem::transmute(glyphrundescription),
5220 ::std::mem::transmute(desiredglyphimageformats),
5221 ::std::mem::transmute(measuringmode),
5222 ::std::mem::transmute(worldanddpitransform),
5223 ::std::mem::transmute(colorpaletteindex),
5224 &mut result__,
5225 )
5226 .from_abi::<IDWriteColorGlyphRunEnumerator1>(result__)
5227 }
5228 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>5229 pub unsafe fn ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
5230 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5231 (::windows::runtime::Interface::vtable(self).41)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), baselineorigin.into_param().abi(), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
5232 }
5233 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>5234 pub unsafe fn ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
5235 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5236 (::windows::runtime::Interface::vtable(self).42)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), ::std::mem::transmute(measuringmode), baselineorigin.into_param().abi(), ::std::mem::transmute(worldanddpitransform), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
5237 }
CreateFontSetBuilder2(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder1>5238 pub unsafe fn CreateFontSetBuilder2(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder1> {
5239 let mut result__: <IDWriteFontSetBuilder1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5240 (::windows::runtime::Interface::vtable(self).43)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder1>(result__)
5241 }
CreateInMemoryFontFileLoader(&self) -> ::windows::runtime::Result<IDWriteInMemoryFontFileLoader>5242 pub unsafe fn CreateInMemoryFontFileLoader(&self) -> ::windows::runtime::Result<IDWriteInMemoryFontFileLoader> {
5243 let mut result__: <IDWriteInMemoryFontFileLoader as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5244 (::windows::runtime::Interface::vtable(self).44)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteInMemoryFontFileLoader>(result__)
5245 }
5246 #[cfg(feature = "Win32_Foundation")]
CreateHttpFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, referrerurl: Param0, extraheaders: Param1) -> ::windows::runtime::Result<IDWriteRemoteFontFileLoader>5247 pub unsafe fn CreateHttpFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, referrerurl: Param0, extraheaders: Param1) -> ::windows::runtime::Result<IDWriteRemoteFontFileLoader> {
5248 let mut result__: <IDWriteRemoteFontFileLoader as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5249 (::windows::runtime::Interface::vtable(self).45)(::std::mem::transmute_copy(self), referrerurl.into_param().abi(), extraheaders.into_param().abi(), &mut result__).from_abi::<IDWriteRemoteFontFileLoader>(result__)
5250 }
AnalyzeContainerType(&self, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE5251 pub unsafe fn AnalyzeContainerType(&self, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE {
5252 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).46)(::std::mem::transmute_copy(self), ::std::mem::transmute(filedata), ::std::mem::transmute(filedatasize)))
5253 }
UnpackFontFile(&self, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> ::windows::runtime::Result<IDWriteFontFileStream>5254 pub unsafe fn UnpackFontFile(&self, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> ::windows::runtime::Result<IDWriteFontFileStream> {
5255 let mut result__: <IDWriteFontFileStream as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5256 (::windows::runtime::Interface::vtable(self).47)(::std::mem::transmute_copy(self), ::std::mem::transmute(containertype), ::std::mem::transmute(filedata), ::std::mem::transmute(filedatasize), &mut result__).from_abi::<IDWriteFontFileStream>(result__)
5257 }
5258 }
5259 unsafe impl ::windows::runtime::Interface for IDWriteFactory5 {
5260 type Vtable = IDWriteFactory5_abi;
5261 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2509093274, 48682, 20233, [175, 125, 101, 24, 152, 3, 209, 211]);
5262 }
5263 impl ::std::convert::From<IDWriteFactory5> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory5) -> Self5264 fn from(value: IDWriteFactory5) -> Self {
5265 unsafe { ::std::mem::transmute(value) }
5266 }
5267 }
5268 impl ::std::convert::From<&IDWriteFactory5> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory5) -> Self5269 fn from(value: &IDWriteFactory5) -> Self {
5270 ::std::convert::From::from(::std::clone::Clone::clone(value))
5271 }
5272 }
5273 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>5274 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5275 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
5276 }
5277 }
5278 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>5279 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5280 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
5281 }
5282 }
5283 impl ::std::convert::From<IDWriteFactory5> for IDWriteFactory4 {
from(value: IDWriteFactory5) -> Self5284 fn from(value: IDWriteFactory5) -> Self {
5285 unsafe { ::std::mem::transmute(value) }
5286 }
5287 }
5288 impl ::std::convert::From<&IDWriteFactory5> for IDWriteFactory4 {
from(value: &IDWriteFactory5) -> Self5289 fn from(value: &IDWriteFactory5) -> Self {
5290 ::std::convert::From::from(::std::clone::Clone::clone(value))
5291 }
5292 }
5293 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory4> for IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4>5294 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4> {
5295 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory4>::into(self))
5296 }
5297 }
5298 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory4> for &IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4>5299 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4> {
5300 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory4>::into(::std::clone::Clone::clone(self)))
5301 }
5302 }
5303 impl ::std::convert::From<IDWriteFactory5> for IDWriteFactory3 {
from(value: IDWriteFactory5) -> Self5304 fn from(value: IDWriteFactory5) -> Self {
5305 unsafe { ::std::mem::transmute(value) }
5306 }
5307 }
5308 impl ::std::convert::From<&IDWriteFactory5> for IDWriteFactory3 {
from(value: &IDWriteFactory5) -> Self5309 fn from(value: &IDWriteFactory5) -> Self {
5310 ::std::convert::From::from(::std::clone::Clone::clone(value))
5311 }
5312 }
5313 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>5314 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
5315 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(self))
5316 }
5317 }
5318 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for &IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>5319 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
5320 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(::std::clone::Clone::clone(self)))
5321 }
5322 }
5323 impl ::std::convert::From<IDWriteFactory5> for IDWriteFactory2 {
from(value: IDWriteFactory5) -> Self5324 fn from(value: IDWriteFactory5) -> Self {
5325 unsafe { ::std::mem::transmute(value) }
5326 }
5327 }
5328 impl ::std::convert::From<&IDWriteFactory5> for IDWriteFactory2 {
from(value: &IDWriteFactory5) -> Self5329 fn from(value: &IDWriteFactory5) -> Self {
5330 ::std::convert::From::from(::std::clone::Clone::clone(value))
5331 }
5332 }
5333 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>5334 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
5335 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(self))
5336 }
5337 }
5338 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for &IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>5339 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
5340 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(::std::clone::Clone::clone(self)))
5341 }
5342 }
5343 impl ::std::convert::From<IDWriteFactory5> for IDWriteFactory1 {
from(value: IDWriteFactory5) -> Self5344 fn from(value: IDWriteFactory5) -> Self {
5345 unsafe { ::std::mem::transmute(value) }
5346 }
5347 }
5348 impl ::std::convert::From<&IDWriteFactory5> for IDWriteFactory1 {
from(value: &IDWriteFactory5) -> Self5349 fn from(value: &IDWriteFactory5) -> Self {
5350 ::std::convert::From::from(::std::clone::Clone::clone(value))
5351 }
5352 }
5353 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>5354 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
5355 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(self))
5356 }
5357 }
5358 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for &IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>5359 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
5360 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(::std::clone::Clone::clone(self)))
5361 }
5362 }
5363 impl ::std::convert::From<IDWriteFactory5> for IDWriteFactory {
from(value: IDWriteFactory5) -> Self5364 fn from(value: IDWriteFactory5) -> Self {
5365 unsafe { ::std::mem::transmute(value) }
5366 }
5367 }
5368 impl ::std::convert::From<&IDWriteFactory5> for IDWriteFactory {
from(value: &IDWriteFactory5) -> Self5369 fn from(value: &IDWriteFactory5) -> Self {
5370 ::std::convert::From::from(::std::clone::Clone::clone(value))
5371 }
5372 }
5373 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>5374 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
5375 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(self))
5376 }
5377 }
5378 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for &IDWriteFactory5 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>5379 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
5380 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(::std::clone::Clone::clone(self)))
5381 }
5382 }
5383 #[repr(C)]
5384 #[doc(hidden)]
5385 pub struct IDWriteFactory5_abi(
5386 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5387 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5388 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5389 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
5390 #[cfg(not(feature = "Win32_Foundation"))] usize,
5391 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5392 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5393 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5394 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5395 #[cfg(not(feature = "Win32_Foundation"))] usize,
5396 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5397 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5398 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5399 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5400 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
5401 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5402 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5403 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5404 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5405 #[cfg(not(feature = "Win32_Foundation"))] usize,
5406 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5407 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5408 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5409 #[cfg(not(feature = "Win32_Foundation"))] usize,
5410 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5411 #[cfg(not(feature = "Win32_Foundation"))] usize,
5412 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5413 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5414 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5415 #[cfg(not(feature = "Win32_Foundation"))] usize,
5416 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5417 #[cfg(not(feature = "Win32_Foundation"))] usize,
5418 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
5419 #[cfg(not(feature = "Win32_Foundation"))] usize,
5420 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5421 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallback: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5422 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallbackbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5423 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5424 #[cfg(not(feature = "Win32_Foundation"))] usize,
5425 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5426 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5427 #[cfg(not(feature = "Win32_Foundation"))] usize,
5428 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5429 #[cfg(not(feature = "Win32_Foundation"))] usize,
5430 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5431 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5432 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5433 #[cfg(not(feature = "Win32_Foundation"))] usize,
5434 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5435 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5436 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5437 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
5438 #[cfg(not(feature = "Win32_Foundation"))] usize,
5439 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontdownloadqueue: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5440 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
5441 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5442 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
5443 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
5444 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
5445 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: super::Direct2D::D2D_POINT_2F, worldanddpitransform: *const DWRITE_MATRIX, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
5446 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
5447 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5448 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, newloader: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5449 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, referrerurl: super::super::Foundation::PWSTR, extraheaders: super::super::Foundation::PWSTR, newloader: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5450 #[cfg(not(feature = "Win32_Foundation"))] usize,
5451 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE,
5452 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32, unpackedfontstream: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5453 );
5454 #[repr(transparent)]
5455 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5456 pub struct IDWriteFactory6(::windows::runtime::IUnknown);
5457 impl IDWriteFactory6 {
5458 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>5459 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
5460 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
5461 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>5462 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
5463 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5464 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
5465 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>5466 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
5467 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
5468 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>5469 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
5470 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
5471 }
5472 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>5473 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
5474 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5475 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
5476 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>5477 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
5478 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5479 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
5480 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>5481 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
5482 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5483 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
5484 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>5485 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
5486 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5487 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
5488 }
5489 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>5490 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
5491 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5492 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
5493 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>5494 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
5495 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5496 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
5497 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>5498 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
5499 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
5500 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>5501 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
5502 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
5503 }
5504 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>5505 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
5506 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5507 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
5508 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>5509 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
5510 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5511 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
5512 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>5513 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
5514 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5515 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
5516 }
5517 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>5518 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
5519 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5520 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
5521 }
5522 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>5523 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
5524 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5525 (::windows::runtime::Interface::vtable(self).19)(
5526 ::std::mem::transmute_copy(self),
5527 string.into_param().abi(),
5528 ::std::mem::transmute(stringlength),
5529 textformat.into_param().abi(),
5530 ::std::mem::transmute(layoutwidth),
5531 ::std::mem::transmute(layoutheight),
5532 ::std::mem::transmute(pixelsperdip),
5533 ::std::mem::transmute(transform),
5534 usegdinatural.into_param().abi(),
5535 &mut result__,
5536 )
5537 .from_abi::<IDWriteTextLayout>(result__)
5538 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>5539 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
5540 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5541 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
5542 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>5543 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
5544 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5545 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
5546 }
5547 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>5548 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
5549 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5550 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
5551 }
5552 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>5553 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
5554 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5555 (::windows::runtime::Interface::vtable(self).23)(
5556 ::std::mem::transmute_copy(self),
5557 ::std::mem::transmute(glyphrun),
5558 ::std::mem::transmute(pixelsperdip),
5559 ::std::mem::transmute(transform),
5560 ::std::mem::transmute(renderingmode),
5561 ::std::mem::transmute(measuringmode),
5562 ::std::mem::transmute(baselineoriginx),
5563 ::std::mem::transmute(baselineoriginy),
5564 &mut result__,
5565 )
5566 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
5567 }
5568 #[cfg(feature = "Win32_Foundation")]
GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>5569 pub unsafe fn GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
5570 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
5571 }
CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1>5572 pub unsafe fn CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1> {
5573 let mut result__: <IDWriteRenderingParams1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5574 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(enhancedcontrastgrayscale), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams1>(result__)
5575 }
GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback>5576 pub unsafe fn GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback> {
5577 let mut result__: <IDWriteFontFallback as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5578 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallback>(result__)
5579 }
CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder>5580 pub unsafe fn CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder> {
5581 let mut result__: <IDWriteFontFallbackBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5582 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallbackBuilder>(result__)
5583 }
5584 #[cfg(feature = "Win32_Foundation")]
TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator>5585 pub unsafe fn TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator> {
5586 let mut result__: <IDWriteColorGlyphRunEnumerator as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5587 (::windows::runtime::Interface::vtable(self).28)(
5588 ::std::mem::transmute_copy(self),
5589 ::std::mem::transmute(baselineoriginx),
5590 ::std::mem::transmute(baselineoriginy),
5591 ::std::mem::transmute(glyphrun),
5592 ::std::mem::transmute(glyphrundescription),
5593 ::std::mem::transmute(measuringmode),
5594 ::std::mem::transmute(worldtodevicetransform),
5595 ::std::mem::transmute(colorpaletteindex),
5596 &mut result__,
5597 )
5598 .from_abi::<IDWriteColorGlyphRunEnumerator>(result__)
5599 }
CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2>5600 pub unsafe fn CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2> {
5601 let mut result__: <IDWriteRenderingParams2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5602 (::windows::runtime::Interface::vtable(self).29)(
5603 ::std::mem::transmute_copy(self),
5604 ::std::mem::transmute(gamma),
5605 ::std::mem::transmute(enhancedcontrast),
5606 ::std::mem::transmute(grayscaleenhancedcontrast),
5607 ::std::mem::transmute(cleartypelevel),
5608 ::std::mem::transmute(pixelgeometry),
5609 ::std::mem::transmute(renderingmode),
5610 ::std::mem::transmute(gridfitmode),
5611 &mut result__,
5612 )
5613 .from_abi::<IDWriteRenderingParams2>(result__)
5614 }
5615 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>5616 pub unsafe fn CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
5617 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5618 (::windows::runtime::Interface::vtable(self).30)(
5619 ::std::mem::transmute_copy(self),
5620 ::std::mem::transmute(glyphrun),
5621 ::std::mem::transmute(transform),
5622 ::std::mem::transmute(renderingmode),
5623 ::std::mem::transmute(measuringmode),
5624 ::std::mem::transmute(gridfitmode),
5625 ::std::mem::transmute(antialiasmode),
5626 ::std::mem::transmute(baselineoriginx),
5627 ::std::mem::transmute(baselineoriginy),
5628 &mut result__,
5629 )
5630 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
5631 }
5632 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>5633 pub unsafe fn CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
5634 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5635 (::windows::runtime::Interface::vtable(self).31)(
5636 ::std::mem::transmute_copy(self),
5637 ::std::mem::transmute(glyphrun),
5638 ::std::mem::transmute(transform),
5639 ::std::mem::transmute(renderingmode),
5640 ::std::mem::transmute(measuringmode),
5641 ::std::mem::transmute(gridfitmode),
5642 ::std::mem::transmute(antialiasmode),
5643 ::std::mem::transmute(baselineoriginx),
5644 ::std::mem::transmute(baselineoriginy),
5645 &mut result__,
5646 )
5647 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
5648 }
CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3>5649 pub unsafe fn CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3> {
5650 let mut result__: <IDWriteRenderingParams3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5651 (::windows::runtime::Interface::vtable(self).32)(
5652 ::std::mem::transmute_copy(self),
5653 ::std::mem::transmute(gamma),
5654 ::std::mem::transmute(enhancedcontrast),
5655 ::std::mem::transmute(grayscaleenhancedcontrast),
5656 ::std::mem::transmute(cleartypelevel),
5657 ::std::mem::transmute(pixelgeometry),
5658 ::std::mem::transmute(renderingmode),
5659 ::std::mem::transmute(gridfitmode),
5660 &mut result__,
5661 )
5662 .from_abi::<IDWriteRenderingParams3>(result__)
5663 }
CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>5664 pub unsafe fn CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
5665 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5666 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
5667 }
5668 #[cfg(feature = "Win32_Foundation")]
CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>5669 pub unsafe fn CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
5670 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5671 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
5672 }
GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>5673 pub unsafe fn GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
5674 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5675 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
5676 }
CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder>5677 pub unsafe fn CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder> {
5678 let mut result__: <IDWriteFontSetBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5679 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder>(result__)
5680 }
CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1>5681 pub unsafe fn CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1> {
5682 let mut result__: <IDWriteFontCollection1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5683 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), fontset.into_param().abi(), &mut result__).from_abi::<IDWriteFontCollection1>(result__)
5684 }
5685 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()>5686 pub unsafe fn GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()> {
5687 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
5688 }
GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue>5689 pub unsafe fn GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue> {
5690 let mut result__: <IDWriteFontDownloadQueue as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5691 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontDownloadQueue>(result__)
5692 }
5693 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1>5694 pub unsafe fn TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1> {
5695 let mut result__: <IDWriteColorGlyphRunEnumerator1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5696 (::windows::runtime::Interface::vtable(self).40)(
5697 ::std::mem::transmute_copy(self),
5698 baselineorigin.into_param().abi(),
5699 ::std::mem::transmute(glyphrun),
5700 ::std::mem::transmute(glyphrundescription),
5701 ::std::mem::transmute(desiredglyphimageformats),
5702 ::std::mem::transmute(measuringmode),
5703 ::std::mem::transmute(worldanddpitransform),
5704 ::std::mem::transmute(colorpaletteindex),
5705 &mut result__,
5706 )
5707 .from_abi::<IDWriteColorGlyphRunEnumerator1>(result__)
5708 }
5709 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>5710 pub unsafe fn ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
5711 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5712 (::windows::runtime::Interface::vtable(self).41)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), baselineorigin.into_param().abi(), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
5713 }
5714 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>5715 pub unsafe fn ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
5716 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5717 (::windows::runtime::Interface::vtable(self).42)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), ::std::mem::transmute(measuringmode), baselineorigin.into_param().abi(), ::std::mem::transmute(worldanddpitransform), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
5718 }
CreateFontSetBuilder2(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder1>5719 pub unsafe fn CreateFontSetBuilder2(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder1> {
5720 let mut result__: <IDWriteFontSetBuilder1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5721 (::windows::runtime::Interface::vtable(self).43)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder1>(result__)
5722 }
CreateInMemoryFontFileLoader(&self) -> ::windows::runtime::Result<IDWriteInMemoryFontFileLoader>5723 pub unsafe fn CreateInMemoryFontFileLoader(&self) -> ::windows::runtime::Result<IDWriteInMemoryFontFileLoader> {
5724 let mut result__: <IDWriteInMemoryFontFileLoader as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5725 (::windows::runtime::Interface::vtable(self).44)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteInMemoryFontFileLoader>(result__)
5726 }
5727 #[cfg(feature = "Win32_Foundation")]
CreateHttpFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, referrerurl: Param0, extraheaders: Param1) -> ::windows::runtime::Result<IDWriteRemoteFontFileLoader>5728 pub unsafe fn CreateHttpFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, referrerurl: Param0, extraheaders: Param1) -> ::windows::runtime::Result<IDWriteRemoteFontFileLoader> {
5729 let mut result__: <IDWriteRemoteFontFileLoader as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5730 (::windows::runtime::Interface::vtable(self).45)(::std::mem::transmute_copy(self), referrerurl.into_param().abi(), extraheaders.into_param().abi(), &mut result__).from_abi::<IDWriteRemoteFontFileLoader>(result__)
5731 }
AnalyzeContainerType(&self, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE5732 pub unsafe fn AnalyzeContainerType(&self, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE {
5733 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).46)(::std::mem::transmute_copy(self), ::std::mem::transmute(filedata), ::std::mem::transmute(filedatasize)))
5734 }
UnpackFontFile(&self, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> ::windows::runtime::Result<IDWriteFontFileStream>5735 pub unsafe fn UnpackFontFile(&self, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> ::windows::runtime::Result<IDWriteFontFileStream> {
5736 let mut result__: <IDWriteFontFileStream as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5737 (::windows::runtime::Interface::vtable(self).47)(::std::mem::transmute_copy(self), ::std::mem::transmute(containertype), ::std::mem::transmute(filedata), ::std::mem::transmute(filedatasize), &mut result__).from_abi::<IDWriteFontFileStream>(result__)
5738 }
CreateFontFaceReference3<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontFaceReference1>5739 pub unsafe fn CreateFontFaceReference3<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontFaceReference1> {
5740 let mut result__: <IDWriteFontFaceReference1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5741 (::windows::runtime::Interface::vtable(self).48)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), ::std::mem::transmute(fontaxisvalues), ::std::mem::transmute(fontaxisvaluecount), &mut result__).from_abi::<IDWriteFontFaceReference1>(result__)
5742 }
CreateFontResource<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32) -> ::windows::runtime::Result<IDWriteFontResource>5743 pub unsafe fn CreateFontResource<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32) -> ::windows::runtime::Result<IDWriteFontResource> {
5744 let mut result__: <IDWriteFontResource as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5745 (::windows::runtime::Interface::vtable(self).49)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), &mut result__).from_abi::<IDWriteFontResource>(result__)
5746 }
5747 #[cfg(feature = "Win32_Foundation")]
GetSystemFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0) -> ::windows::runtime::Result<IDWriteFontSet1>5748 pub unsafe fn GetSystemFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0) -> ::windows::runtime::Result<IDWriteFontSet1> {
5749 let mut result__: <IDWriteFontSet1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5750 (::windows::runtime::Interface::vtable(self).50)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), &mut result__).from_abi::<IDWriteFontSet1>(result__)
5751 }
5752 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection3<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2>5753 pub unsafe fn GetSystemFontCollection3<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2> {
5754 let mut result__: <IDWriteFontCollection2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5755 (::windows::runtime::Interface::vtable(self).51)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontfamilymodel), &mut result__).from_abi::<IDWriteFontCollection2>(result__)
5756 }
CreateFontCollectionFromFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2>5757 pub unsafe fn CreateFontCollectionFromFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2> {
5758 let mut result__: <IDWriteFontCollection2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5759 (::windows::runtime::Interface::vtable(self).52)(::std::mem::transmute_copy(self), fontset.into_param().abi(), ::std::mem::transmute(fontfamilymodel), &mut result__).from_abi::<IDWriteFontCollection2>(result__)
5760 }
CreateFontSetBuilder3(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder2>5761 pub unsafe fn CreateFontSetBuilder3(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder2> {
5762 let mut result__: <IDWriteFontSetBuilder2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5763 (::windows::runtime::Interface::vtable(self).53)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder2>(result__)
5764 }
5765 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontsize: f32, localename: Param5) -> ::windows::runtime::Result<IDWriteTextFormat3>5766 pub unsafe fn CreateTextFormat2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontsize: f32, localename: Param5) -> ::windows::runtime::Result<IDWriteTextFormat3> {
5767 let mut result__: <IDWriteTextFormat3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5768 (::windows::runtime::Interface::vtable(self).54)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontaxisvalues), ::std::mem::transmute(fontaxisvaluecount), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat3>(result__)
5769 }
5770 }
5771 unsafe impl ::windows::runtime::Interface for IDWriteFactory6 {
5772 type Vtable = IDWriteFactory6_abi;
5773 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4084485504, 8695, 17131, [179, 93, 153, 91, 199, 47, 194, 35]);
5774 }
5775 impl ::std::convert::From<IDWriteFactory6> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory6) -> Self5776 fn from(value: IDWriteFactory6) -> Self {
5777 unsafe { ::std::mem::transmute(value) }
5778 }
5779 }
5780 impl ::std::convert::From<&IDWriteFactory6> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory6) -> Self5781 fn from(value: &IDWriteFactory6) -> Self {
5782 ::std::convert::From::from(::std::clone::Clone::clone(value))
5783 }
5784 }
5785 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>5786 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5787 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
5788 }
5789 }
5790 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>5791 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5792 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
5793 }
5794 }
5795 impl ::std::convert::From<IDWriteFactory6> for IDWriteFactory5 {
from(value: IDWriteFactory6) -> Self5796 fn from(value: IDWriteFactory6) -> Self {
5797 unsafe { ::std::mem::transmute(value) }
5798 }
5799 }
5800 impl ::std::convert::From<&IDWriteFactory6> for IDWriteFactory5 {
from(value: &IDWriteFactory6) -> Self5801 fn from(value: &IDWriteFactory6) -> Self {
5802 ::std::convert::From::from(::std::clone::Clone::clone(value))
5803 }
5804 }
5805 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory5> for IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5>5806 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5> {
5807 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory5>::into(self))
5808 }
5809 }
5810 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory5> for &IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5>5811 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5> {
5812 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory5>::into(::std::clone::Clone::clone(self)))
5813 }
5814 }
5815 impl ::std::convert::From<IDWriteFactory6> for IDWriteFactory4 {
from(value: IDWriteFactory6) -> Self5816 fn from(value: IDWriteFactory6) -> Self {
5817 unsafe { ::std::mem::transmute(value) }
5818 }
5819 }
5820 impl ::std::convert::From<&IDWriteFactory6> for IDWriteFactory4 {
from(value: &IDWriteFactory6) -> Self5821 fn from(value: &IDWriteFactory6) -> Self {
5822 ::std::convert::From::from(::std::clone::Clone::clone(value))
5823 }
5824 }
5825 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory4> for IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4>5826 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4> {
5827 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory4>::into(self))
5828 }
5829 }
5830 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory4> for &IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4>5831 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4> {
5832 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory4>::into(::std::clone::Clone::clone(self)))
5833 }
5834 }
5835 impl ::std::convert::From<IDWriteFactory6> for IDWriteFactory3 {
from(value: IDWriteFactory6) -> Self5836 fn from(value: IDWriteFactory6) -> Self {
5837 unsafe { ::std::mem::transmute(value) }
5838 }
5839 }
5840 impl ::std::convert::From<&IDWriteFactory6> for IDWriteFactory3 {
from(value: &IDWriteFactory6) -> Self5841 fn from(value: &IDWriteFactory6) -> Self {
5842 ::std::convert::From::from(::std::clone::Clone::clone(value))
5843 }
5844 }
5845 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>5846 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
5847 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(self))
5848 }
5849 }
5850 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for &IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>5851 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
5852 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(::std::clone::Clone::clone(self)))
5853 }
5854 }
5855 impl ::std::convert::From<IDWriteFactory6> for IDWriteFactory2 {
from(value: IDWriteFactory6) -> Self5856 fn from(value: IDWriteFactory6) -> Self {
5857 unsafe { ::std::mem::transmute(value) }
5858 }
5859 }
5860 impl ::std::convert::From<&IDWriteFactory6> for IDWriteFactory2 {
from(value: &IDWriteFactory6) -> Self5861 fn from(value: &IDWriteFactory6) -> Self {
5862 ::std::convert::From::from(::std::clone::Clone::clone(value))
5863 }
5864 }
5865 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>5866 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
5867 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(self))
5868 }
5869 }
5870 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for &IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>5871 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
5872 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(::std::clone::Clone::clone(self)))
5873 }
5874 }
5875 impl ::std::convert::From<IDWriteFactory6> for IDWriteFactory1 {
from(value: IDWriteFactory6) -> Self5876 fn from(value: IDWriteFactory6) -> Self {
5877 unsafe { ::std::mem::transmute(value) }
5878 }
5879 }
5880 impl ::std::convert::From<&IDWriteFactory6> for IDWriteFactory1 {
from(value: &IDWriteFactory6) -> Self5881 fn from(value: &IDWriteFactory6) -> Self {
5882 ::std::convert::From::from(::std::clone::Clone::clone(value))
5883 }
5884 }
5885 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>5886 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
5887 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(self))
5888 }
5889 }
5890 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for &IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>5891 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
5892 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(::std::clone::Clone::clone(self)))
5893 }
5894 }
5895 impl ::std::convert::From<IDWriteFactory6> for IDWriteFactory {
from(value: IDWriteFactory6) -> Self5896 fn from(value: IDWriteFactory6) -> Self {
5897 unsafe { ::std::mem::transmute(value) }
5898 }
5899 }
5900 impl ::std::convert::From<&IDWriteFactory6> for IDWriteFactory {
from(value: &IDWriteFactory6) -> Self5901 fn from(value: &IDWriteFactory6) -> Self {
5902 ::std::convert::From::from(::std::clone::Clone::clone(value))
5903 }
5904 }
5905 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>5906 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
5907 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(self))
5908 }
5909 }
5910 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for &IDWriteFactory6 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>5911 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
5912 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(::std::clone::Clone::clone(self)))
5913 }
5914 }
5915 #[repr(C)]
5916 #[doc(hidden)]
5917 pub struct IDWriteFactory6_abi(
5918 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5919 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5920 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5921 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
5922 #[cfg(not(feature = "Win32_Foundation"))] usize,
5923 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5924 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5925 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5926 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5927 #[cfg(not(feature = "Win32_Foundation"))] usize,
5928 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5929 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5930 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5931 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5932 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
5933 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5934 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5935 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5936 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5937 #[cfg(not(feature = "Win32_Foundation"))] usize,
5938 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5939 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5940 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5941 #[cfg(not(feature = "Win32_Foundation"))] usize,
5942 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5943 #[cfg(not(feature = "Win32_Foundation"))] usize,
5944 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5945 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5946 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5947 #[cfg(not(feature = "Win32_Foundation"))] usize,
5948 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5949 #[cfg(not(feature = "Win32_Foundation"))] usize,
5950 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
5951 #[cfg(not(feature = "Win32_Foundation"))] usize,
5952 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5953 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallback: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5954 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallbackbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5955 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5956 #[cfg(not(feature = "Win32_Foundation"))] usize,
5957 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5958 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5959 #[cfg(not(feature = "Win32_Foundation"))] usize,
5960 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5961 #[cfg(not(feature = "Win32_Foundation"))] usize,
5962 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5963 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5964 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5965 #[cfg(not(feature = "Win32_Foundation"))] usize,
5966 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5967 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5968 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5969 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
5970 #[cfg(not(feature = "Win32_Foundation"))] usize,
5971 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontdownloadqueue: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5972 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
5973 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5974 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
5975 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
5976 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
5977 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: super::Direct2D::D2D_POINT_2F, worldanddpitransform: *const DWRITE_MATRIX, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
5978 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
5979 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5980 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, newloader: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5981 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, referrerurl: super::super::Foundation::PWSTR, extraheaders: super::super::Foundation::PWSTR, newloader: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5982 #[cfg(not(feature = "Win32_Foundation"))] usize,
5983 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE,
5984 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32, unpackedfontstream: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5985 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5986 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontresource: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5987 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5988 #[cfg(not(feature = "Win32_Foundation"))] usize,
5989 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5990 #[cfg(not(feature = "Win32_Foundation"))] usize,
5991 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: ::windows::runtime::RawPtr, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5992 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5993 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5994 #[cfg(not(feature = "Win32_Foundation"))] usize,
5995 );
5996 #[repr(transparent)]
5997 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5998 pub struct IDWriteFactory7(::windows::runtime::IUnknown);
5999 impl IDWriteFactory7 {
6000 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>6001 pub unsafe fn GetSystemFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
6002 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
6003 }
CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection>6004 pub unsafe fn CreateCustomFontCollection<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, collectionloader: Param0, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32) -> ::windows::runtime::Result<IDWriteFontCollection> {
6005 let mut result__: <IDWriteFontCollection as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6006 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), collectionloader.into_param().abi(), ::std::mem::transmute(collectionkey), ::std::mem::transmute(collectionkeysize), &mut result__).from_abi::<IDWriteFontCollection>(result__)
6007 }
RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>6008 pub unsafe fn RegisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
6009 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
6010 }
UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()>6011 pub unsafe fn UnregisterFontCollectionLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontCollectionLoader>>(&self, fontcollectionloader: Param0) -> ::windows::runtime::Result<()> {
6012 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontcollectionloader.into_param().abi()).ok()
6013 }
6014 #[cfg(feature = "Win32_Foundation")]
CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile>6015 pub unsafe fn CreateFontFileReference<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<IDWriteFontFile> {
6016 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6017 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), &mut result__).from_abi::<IDWriteFontFile>(result__)
6018 }
CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile>6019 pub unsafe fn CreateCustomFontFileReference<'a, Param2: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: Param2) -> ::windows::runtime::Result<IDWriteFontFile> {
6020 let mut result__: <IDWriteFontFile as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6021 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfilereferencekey), ::std::mem::transmute(fontfilereferencekeysize), fontfileloader.into_param().abi(), &mut result__).from_abi::<IDWriteFontFile>(result__)
6022 }
CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace>6023 pub unsafe fn CreateFontFace(&self, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::std::option::Option<IDWriteFontFile>, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFace> {
6024 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6025 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontfacetype), ::std::mem::transmute(numberoffiles), ::std::mem::transmute(fontfiles), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontfacesimulationflags), &mut result__).from_abi::<IDWriteFontFace>(result__)
6026 }
CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams>6027 pub unsafe fn CreateRenderingParams(&self) -> ::windows::runtime::Result<IDWriteRenderingParams> {
6028 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6029 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
6030 }
6031 #[cfg(feature = "Win32_Graphics_Gdi")]
CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams>6032 pub unsafe fn CreateMonitorRenderingParams<'a, Param0: ::windows::runtime::IntoParam<'a, super::Gdi::HMONITOR>>(&self, monitor: Param0) -> ::windows::runtime::Result<IDWriteRenderingParams> {
6033 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6034 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), monitor.into_param().abi(), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
6035 }
CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams>6036 pub unsafe fn CreateCustomRenderingParams(&self, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams> {
6037 let mut result__: <IDWriteRenderingParams as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6038 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams>(result__)
6039 }
RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>6040 pub unsafe fn RegisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
6041 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
6042 }
UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()>6043 pub unsafe fn UnregisterFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFileLoader>>(&self, fontfileloader: Param0) -> ::windows::runtime::Result<()> {
6044 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), fontfileloader.into_param().abi()).ok()
6045 }
6046 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat>6047 pub unsafe fn CreateTextFormat<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: Param6) -> ::windows::runtime::Result<IDWriteTextFormat> {
6048 let mut result__: <IDWriteTextFormat as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6049 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontweight), ::std::mem::transmute(fontstyle), ::std::mem::transmute(fontstretch), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat>(result__)
6050 }
CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography>6051 pub unsafe fn CreateTypography(&self) -> ::windows::runtime::Result<IDWriteTypography> {
6052 let mut result__: <IDWriteTypography as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6053 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTypography>(result__)
6054 }
GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop>6055 pub unsafe fn GetGdiInterop(&self) -> ::windows::runtime::Result<IDWriteGdiInterop> {
6056 let mut result__: <IDWriteGdiInterop as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6057 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteGdiInterop>(result__)
6058 }
6059 #[cfg(feature = "Win32_Foundation")]
CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout>6060 pub unsafe fn CreateTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, string: Param0, stringlength: u32, textformat: Param2, maxwidth: f32, maxheight: f32) -> ::windows::runtime::Result<IDWriteTextLayout> {
6061 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6062 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), string.into_param().abi(), ::std::mem::transmute(stringlength), textformat.into_param().abi(), ::std::mem::transmute(maxwidth), ::std::mem::transmute(maxheight), &mut result__).from_abi::<IDWriteTextLayout>(result__)
6063 }
6064 #[cfg(feature = "Win32_Foundation")]
CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout>6065 pub unsafe fn CreateGdiCompatibleTextLayout<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>, Param7: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, string: Param0, stringlength: u32, textformat: Param2, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: Param7) -> ::windows::runtime::Result<IDWriteTextLayout> {
6066 let mut result__: <IDWriteTextLayout as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6067 (::windows::runtime::Interface::vtable(self).19)(
6068 ::std::mem::transmute_copy(self),
6069 string.into_param().abi(),
6070 ::std::mem::transmute(stringlength),
6071 textformat.into_param().abi(),
6072 ::std::mem::transmute(layoutwidth),
6073 ::std::mem::transmute(layoutheight),
6074 ::std::mem::transmute(pixelsperdip),
6075 ::std::mem::transmute(transform),
6076 usegdinatural.into_param().abi(),
6077 &mut result__,
6078 )
6079 .from_abi::<IDWriteTextLayout>(result__)
6080 }
CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject>6081 pub unsafe fn CreateEllipsisTrimmingSign<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteTextFormat>>(&self, textformat: Param0) -> ::windows::runtime::Result<IDWriteInlineObject> {
6082 let mut result__: <IDWriteInlineObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6083 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), textformat.into_param().abi(), &mut result__).from_abi::<IDWriteInlineObject>(result__)
6084 }
CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer>6085 pub unsafe fn CreateTextAnalyzer(&self) -> ::windows::runtime::Result<IDWriteTextAnalyzer> {
6086 let mut result__: <IDWriteTextAnalyzer as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6087 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteTextAnalyzer>(result__)
6088 }
6089 #[cfg(feature = "Win32_Foundation")]
CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution>6090 pub unsafe fn CreateNumberSubstitution<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: Param1, ignoreuseroverride: Param2) -> ::windows::runtime::Result<IDWriteNumberSubstitution> {
6091 let mut result__: <IDWriteNumberSubstitution as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6092 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(substitutionmethod), localename.into_param().abi(), ignoreuseroverride.into_param().abi(), &mut result__).from_abi::<IDWriteNumberSubstitution>(result__)
6093 }
6094 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>6095 pub unsafe fn CreateGlyphRunAnalysis(&self, glyphrun: *const DWRITE_GLYPH_RUN, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
6096 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6097 (::windows::runtime::Interface::vtable(self).23)(
6098 ::std::mem::transmute_copy(self),
6099 ::std::mem::transmute(glyphrun),
6100 ::std::mem::transmute(pixelsperdip),
6101 ::std::mem::transmute(transform),
6102 ::std::mem::transmute(renderingmode),
6103 ::std::mem::transmute(measuringmode),
6104 ::std::mem::transmute(baselineoriginx),
6105 ::std::mem::transmute(baselineoriginy),
6106 &mut result__,
6107 )
6108 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
6109 }
6110 #[cfg(feature = "Win32_Foundation")]
GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()>6111 pub unsafe fn GetEudcFontCollection<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fontcollection: *mut ::std::option::Option<IDWriteFontCollection>, checkforupdates: Param1) -> ::windows::runtime::Result<()> {
6112 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
6113 }
CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1>6114 pub unsafe fn CreateCustomRenderingParams2(&self, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams1> {
6115 let mut result__: <IDWriteRenderingParams1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6116 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), ::std::mem::transmute(gamma), ::std::mem::transmute(enhancedcontrast), ::std::mem::transmute(enhancedcontrastgrayscale), ::std::mem::transmute(cleartypelevel), ::std::mem::transmute(pixelgeometry), ::std::mem::transmute(renderingmode), &mut result__).from_abi::<IDWriteRenderingParams1>(result__)
6117 }
GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback>6118 pub unsafe fn GetSystemFontFallback(&self) -> ::windows::runtime::Result<IDWriteFontFallback> {
6119 let mut result__: <IDWriteFontFallback as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6120 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallback>(result__)
6121 }
CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder>6122 pub unsafe fn CreateFontFallbackBuilder(&self) -> ::windows::runtime::Result<IDWriteFontFallbackBuilder> {
6123 let mut result__: <IDWriteFontFallbackBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6124 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFallbackBuilder>(result__)
6125 }
6126 #[cfg(feature = "Win32_Foundation")]
TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator>6127 pub unsafe fn TranslateColorGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator> {
6128 let mut result__: <IDWriteColorGlyphRunEnumerator as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6129 (::windows::runtime::Interface::vtable(self).28)(
6130 ::std::mem::transmute_copy(self),
6131 ::std::mem::transmute(baselineoriginx),
6132 ::std::mem::transmute(baselineoriginy),
6133 ::std::mem::transmute(glyphrun),
6134 ::std::mem::transmute(glyphrundescription),
6135 ::std::mem::transmute(measuringmode),
6136 ::std::mem::transmute(worldtodevicetransform),
6137 ::std::mem::transmute(colorpaletteindex),
6138 &mut result__,
6139 )
6140 .from_abi::<IDWriteColorGlyphRunEnumerator>(result__)
6141 }
CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2>6142 pub unsafe fn CreateCustomRenderingParams3(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams2> {
6143 let mut result__: <IDWriteRenderingParams2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6144 (::windows::runtime::Interface::vtable(self).29)(
6145 ::std::mem::transmute_copy(self),
6146 ::std::mem::transmute(gamma),
6147 ::std::mem::transmute(enhancedcontrast),
6148 ::std::mem::transmute(grayscaleenhancedcontrast),
6149 ::std::mem::transmute(cleartypelevel),
6150 ::std::mem::transmute(pixelgeometry),
6151 ::std::mem::transmute(renderingmode),
6152 ::std::mem::transmute(gridfitmode),
6153 &mut result__,
6154 )
6155 .from_abi::<IDWriteRenderingParams2>(result__)
6156 }
6157 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>6158 pub unsafe fn CreateGlyphRunAnalysis2(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
6159 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6160 (::windows::runtime::Interface::vtable(self).30)(
6161 ::std::mem::transmute_copy(self),
6162 ::std::mem::transmute(glyphrun),
6163 ::std::mem::transmute(transform),
6164 ::std::mem::transmute(renderingmode),
6165 ::std::mem::transmute(measuringmode),
6166 ::std::mem::transmute(gridfitmode),
6167 ::std::mem::transmute(antialiasmode),
6168 ::std::mem::transmute(baselineoriginx),
6169 ::std::mem::transmute(baselineoriginy),
6170 &mut result__,
6171 )
6172 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
6173 }
6174 #[cfg(feature = "Win32_Foundation")]
CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis>6175 pub unsafe fn CreateGlyphRunAnalysis3(&self, glyphrun: *const DWRITE_GLYPH_RUN, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32) -> ::windows::runtime::Result<IDWriteGlyphRunAnalysis> {
6176 let mut result__: <IDWriteGlyphRunAnalysis as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6177 (::windows::runtime::Interface::vtable(self).31)(
6178 ::std::mem::transmute_copy(self),
6179 ::std::mem::transmute(glyphrun),
6180 ::std::mem::transmute(transform),
6181 ::std::mem::transmute(renderingmode),
6182 ::std::mem::transmute(measuringmode),
6183 ::std::mem::transmute(gridfitmode),
6184 ::std::mem::transmute(antialiasmode),
6185 ::std::mem::transmute(baselineoriginx),
6186 ::std::mem::transmute(baselineoriginy),
6187 &mut result__,
6188 )
6189 .from_abi::<IDWriteGlyphRunAnalysis>(result__)
6190 }
CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3>6191 pub unsafe fn CreateCustomRenderingParams4(&self, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE) -> ::windows::runtime::Result<IDWriteRenderingParams3> {
6192 let mut result__: <IDWriteRenderingParams3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6193 (::windows::runtime::Interface::vtable(self).32)(
6194 ::std::mem::transmute_copy(self),
6195 ::std::mem::transmute(gamma),
6196 ::std::mem::transmute(enhancedcontrast),
6197 ::std::mem::transmute(grayscaleenhancedcontrast),
6198 ::std::mem::transmute(cleartypelevel),
6199 ::std::mem::transmute(pixelgeometry),
6200 ::std::mem::transmute(renderingmode),
6201 ::std::mem::transmute(gridfitmode),
6202 &mut result__,
6203 )
6204 .from_abi::<IDWriteRenderingParams3>(result__)
6205 }
CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>6206 pub unsafe fn CreateFontFaceReference<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
6207 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6208 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
6209 }
6210 #[cfg(feature = "Win32_Foundation")]
CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference>6211 pub unsafe fn CreateFontFaceReference2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, filepath: Param0, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
6212 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6213 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), filepath.into_param().abi(), ::std::mem::transmute(lastwritetime), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
6214 }
GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>6215 pub unsafe fn GetSystemFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
6216 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6217 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
6218 }
CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder>6219 pub unsafe fn CreateFontSetBuilder(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder> {
6220 let mut result__: <IDWriteFontSetBuilder as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6221 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder>(result__)
6222 }
CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1>6223 pub unsafe fn CreateFontCollectionFromFontSet<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0) -> ::windows::runtime::Result<IDWriteFontCollection1> {
6224 let mut result__: <IDWriteFontCollection1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6225 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), fontset.into_param().abi(), &mut result__).from_abi::<IDWriteFontCollection1>(result__)
6226 }
6227 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()>6228 pub unsafe fn GetSystemFontCollection2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontcollection: *mut ::std::option::Option<IDWriteFontCollection1>, checkforupdates: Param2) -> ::windows::runtime::Result<()> {
6229 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontcollection), checkforupdates.into_param().abi()).ok()
6230 }
GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue>6231 pub unsafe fn GetFontDownloadQueue(&self) -> ::windows::runtime::Result<IDWriteFontDownloadQueue> {
6232 let mut result__: <IDWriteFontDownloadQueue as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6233 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontDownloadQueue>(result__)
6234 }
6235 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1>6236 pub unsafe fn TranslateColorGlyphRun2<'a, Param0: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, baselineorigin: Param0, glyphrun: *const DWRITE_GLYPH_RUN, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32) -> ::windows::runtime::Result<IDWriteColorGlyphRunEnumerator1> {
6237 let mut result__: <IDWriteColorGlyphRunEnumerator1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6238 (::windows::runtime::Interface::vtable(self).40)(
6239 ::std::mem::transmute_copy(self),
6240 baselineorigin.into_param().abi(),
6241 ::std::mem::transmute(glyphrun),
6242 ::std::mem::transmute(glyphrundescription),
6243 ::std::mem::transmute(desiredglyphimageformats),
6244 ::std::mem::transmute(measuringmode),
6245 ::std::mem::transmute(worldanddpitransform),
6246 ::std::mem::transmute(colorpaletteindex),
6247 &mut result__,
6248 )
6249 .from_abi::<IDWriteColorGlyphRunEnumerator1>(result__)
6250 }
6251 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>6252 pub unsafe fn ComputeGlyphOrigins<'a, Param1: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, baselineorigin: Param1) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
6253 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6254 (::windows::runtime::Interface::vtable(self).41)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), baselineorigin.into_param().abi(), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
6255 }
6256 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F>6257 pub unsafe fn ComputeGlyphOrigins2<'a, Param2: ::windows::runtime::IntoParam<'a, super::Direct2D::D2D_POINT_2F>>(&self, glyphrun: *const DWRITE_GLYPH_RUN, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: Param2, worldanddpitransform: *const DWRITE_MATRIX) -> ::windows::runtime::Result<super::Direct2D::D2D_POINT_2F> {
6258 let mut result__: <super::Direct2D::D2D_POINT_2F as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6259 (::windows::runtime::Interface::vtable(self).42)(::std::mem::transmute_copy(self), ::std::mem::transmute(glyphrun), ::std::mem::transmute(measuringmode), baselineorigin.into_param().abi(), ::std::mem::transmute(worldanddpitransform), &mut result__).from_abi::<super::Direct2D::D2D_POINT_2F>(result__)
6260 }
CreateFontSetBuilder2(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder1>6261 pub unsafe fn CreateFontSetBuilder2(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder1> {
6262 let mut result__: <IDWriteFontSetBuilder1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6263 (::windows::runtime::Interface::vtable(self).43)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder1>(result__)
6264 }
CreateInMemoryFontFileLoader(&self) -> ::windows::runtime::Result<IDWriteInMemoryFontFileLoader>6265 pub unsafe fn CreateInMemoryFontFileLoader(&self) -> ::windows::runtime::Result<IDWriteInMemoryFontFileLoader> {
6266 let mut result__: <IDWriteInMemoryFontFileLoader as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6267 (::windows::runtime::Interface::vtable(self).44)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteInMemoryFontFileLoader>(result__)
6268 }
6269 #[cfg(feature = "Win32_Foundation")]
CreateHttpFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, referrerurl: Param0, extraheaders: Param1) -> ::windows::runtime::Result<IDWriteRemoteFontFileLoader>6270 pub unsafe fn CreateHttpFontFileLoader<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, referrerurl: Param0, extraheaders: Param1) -> ::windows::runtime::Result<IDWriteRemoteFontFileLoader> {
6271 let mut result__: <IDWriteRemoteFontFileLoader as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6272 (::windows::runtime::Interface::vtable(self).45)(::std::mem::transmute_copy(self), referrerurl.into_param().abi(), extraheaders.into_param().abi(), &mut result__).from_abi::<IDWriteRemoteFontFileLoader>(result__)
6273 }
AnalyzeContainerType(&self, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE6274 pub unsafe fn AnalyzeContainerType(&self, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE {
6275 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).46)(::std::mem::transmute_copy(self), ::std::mem::transmute(filedata), ::std::mem::transmute(filedatasize)))
6276 }
UnpackFontFile(&self, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> ::windows::runtime::Result<IDWriteFontFileStream>6277 pub unsafe fn UnpackFontFile(&self, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> ::windows::runtime::Result<IDWriteFontFileStream> {
6278 let mut result__: <IDWriteFontFileStream as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6279 (::windows::runtime::Interface::vtable(self).47)(::std::mem::transmute_copy(self), ::std::mem::transmute(containertype), ::std::mem::transmute(filedata), ::std::mem::transmute(filedatasize), &mut result__).from_abi::<IDWriteFontFileStream>(result__)
6280 }
CreateFontFaceReference3<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontFaceReference1>6281 pub unsafe fn CreateFontFaceReference3<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontFaceReference1> {
6282 let mut result__: <IDWriteFontFaceReference1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6283 (::windows::runtime::Interface::vtable(self).48)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), ::std::mem::transmute(fontsimulations), ::std::mem::transmute(fontaxisvalues), ::std::mem::transmute(fontaxisvaluecount), &mut result__).from_abi::<IDWriteFontFaceReference1>(result__)
6284 }
CreateFontResource<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32) -> ::windows::runtime::Result<IDWriteFontResource>6285 pub unsafe fn CreateFontResource<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFile>>(&self, fontfile: Param0, faceindex: u32) -> ::windows::runtime::Result<IDWriteFontResource> {
6286 let mut result__: <IDWriteFontResource as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6287 (::windows::runtime::Interface::vtable(self).49)(::std::mem::transmute_copy(self), fontfile.into_param().abi(), ::std::mem::transmute(faceindex), &mut result__).from_abi::<IDWriteFontResource>(result__)
6288 }
6289 #[cfg(feature = "Win32_Foundation")]
GetSystemFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0) -> ::windows::runtime::Result<IDWriteFontSet1>6290 pub unsafe fn GetSystemFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0) -> ::windows::runtime::Result<IDWriteFontSet1> {
6291 let mut result__: <IDWriteFontSet1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6292 (::windows::runtime::Interface::vtable(self).50)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), &mut result__).from_abi::<IDWriteFontSet1>(result__)
6293 }
6294 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection3<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2>6295 pub unsafe fn GetSystemFontCollection3<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2> {
6296 let mut result__: <IDWriteFontCollection2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6297 (::windows::runtime::Interface::vtable(self).51)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontfamilymodel), &mut result__).from_abi::<IDWriteFontCollection2>(result__)
6298 }
CreateFontCollectionFromFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2>6299 pub unsafe fn CreateFontCollectionFromFontSet2<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontSet>>(&self, fontset: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection2> {
6300 let mut result__: <IDWriteFontCollection2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6301 (::windows::runtime::Interface::vtable(self).52)(::std::mem::transmute_copy(self), fontset.into_param().abi(), ::std::mem::transmute(fontfamilymodel), &mut result__).from_abi::<IDWriteFontCollection2>(result__)
6302 }
CreateFontSetBuilder3(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder2>6303 pub unsafe fn CreateFontSetBuilder3(&self) -> ::windows::runtime::Result<IDWriteFontSetBuilder2> {
6304 let mut result__: <IDWriteFontSetBuilder2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6305 (::windows::runtime::Interface::vtable(self).53)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSetBuilder2>(result__)
6306 }
6307 #[cfg(feature = "Win32_Foundation")]
CreateTextFormat2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontsize: f32, localename: Param5) -> ::windows::runtime::Result<IDWriteTextFormat3>6308 pub unsafe fn CreateTextFormat2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IDWriteFontCollection>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, fontfamilyname: Param0, fontcollection: Param1, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontsize: f32, localename: Param5) -> ::windows::runtime::Result<IDWriteTextFormat3> {
6309 let mut result__: <IDWriteTextFormat3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6310 (::windows::runtime::Interface::vtable(self).54)(::std::mem::transmute_copy(self), fontfamilyname.into_param().abi(), fontcollection.into_param().abi(), ::std::mem::transmute(fontaxisvalues), ::std::mem::transmute(fontaxisvaluecount), ::std::mem::transmute(fontsize), localename.into_param().abi(), &mut result__).from_abi::<IDWriteTextFormat3>(result__)
6311 }
6312 #[cfg(feature = "Win32_Foundation")]
GetSystemFontSet3<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0) -> ::windows::runtime::Result<IDWriteFontSet2>6313 pub unsafe fn GetSystemFontSet3<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0) -> ::windows::runtime::Result<IDWriteFontSet2> {
6314 let mut result__: <IDWriteFontSet2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6315 (::windows::runtime::Interface::vtable(self).55)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), &mut result__).from_abi::<IDWriteFontSet2>(result__)
6316 }
6317 #[cfg(feature = "Win32_Foundation")]
GetSystemFontCollection4<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection3>6318 pub unsafe fn GetSystemFontCollection4<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, includedownloadablefonts: Param0, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL) -> ::windows::runtime::Result<IDWriteFontCollection3> {
6319 let mut result__: <IDWriteFontCollection3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6320 (::windows::runtime::Interface::vtable(self).56)(::std::mem::transmute_copy(self), includedownloadablefonts.into_param().abi(), ::std::mem::transmute(fontfamilymodel), &mut result__).from_abi::<IDWriteFontCollection3>(result__)
6321 }
6322 }
6323 unsafe impl ::windows::runtime::Interface for IDWriteFactory7 {
6324 type Vtable = IDWriteFactory7_abi;
6325 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(902881459, 36982, 19758, [160, 22, 169, 27, 86, 138, 6, 180]);
6326 }
6327 impl ::std::convert::From<IDWriteFactory7> for ::windows::runtime::IUnknown {
from(value: IDWriteFactory7) -> Self6328 fn from(value: IDWriteFactory7) -> Self {
6329 unsafe { ::std::mem::transmute(value) }
6330 }
6331 }
6332 impl ::std::convert::From<&IDWriteFactory7> for ::windows::runtime::IUnknown {
from(value: &IDWriteFactory7) -> Self6333 fn from(value: &IDWriteFactory7) -> Self {
6334 ::std::convert::From::from(::std::clone::Clone::clone(value))
6335 }
6336 }
6337 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6338 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6339 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6340 }
6341 }
6342 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6343 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6344 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6345 }
6346 }
6347 impl ::std::convert::From<IDWriteFactory7> for IDWriteFactory6 {
from(value: IDWriteFactory7) -> Self6348 fn from(value: IDWriteFactory7) -> Self {
6349 unsafe { ::std::mem::transmute(value) }
6350 }
6351 }
6352 impl ::std::convert::From<&IDWriteFactory7> for IDWriteFactory6 {
from(value: &IDWriteFactory7) -> Self6353 fn from(value: &IDWriteFactory7) -> Self {
6354 ::std::convert::From::from(::std::clone::Clone::clone(value))
6355 }
6356 }
6357 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory6> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory6>6358 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory6> {
6359 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory6>::into(self))
6360 }
6361 }
6362 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory6> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory6>6363 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory6> {
6364 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory6>::into(::std::clone::Clone::clone(self)))
6365 }
6366 }
6367 impl ::std::convert::From<IDWriteFactory7> for IDWriteFactory5 {
from(value: IDWriteFactory7) -> Self6368 fn from(value: IDWriteFactory7) -> Self {
6369 unsafe { ::std::mem::transmute(value) }
6370 }
6371 }
6372 impl ::std::convert::From<&IDWriteFactory7> for IDWriteFactory5 {
from(value: &IDWriteFactory7) -> Self6373 fn from(value: &IDWriteFactory7) -> Self {
6374 ::std::convert::From::from(::std::clone::Clone::clone(value))
6375 }
6376 }
6377 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory5> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5>6378 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5> {
6379 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory5>::into(self))
6380 }
6381 }
6382 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory5> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5>6383 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory5> {
6384 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory5>::into(::std::clone::Clone::clone(self)))
6385 }
6386 }
6387 impl ::std::convert::From<IDWriteFactory7> for IDWriteFactory4 {
from(value: IDWriteFactory7) -> Self6388 fn from(value: IDWriteFactory7) -> Self {
6389 unsafe { ::std::mem::transmute(value) }
6390 }
6391 }
6392 impl ::std::convert::From<&IDWriteFactory7> for IDWriteFactory4 {
from(value: &IDWriteFactory7) -> Self6393 fn from(value: &IDWriteFactory7) -> Self {
6394 ::std::convert::From::from(::std::clone::Clone::clone(value))
6395 }
6396 }
6397 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory4> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4>6398 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4> {
6399 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory4>::into(self))
6400 }
6401 }
6402 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory4> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4>6403 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory4> {
6404 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory4>::into(::std::clone::Clone::clone(self)))
6405 }
6406 }
6407 impl ::std::convert::From<IDWriteFactory7> for IDWriteFactory3 {
from(value: IDWriteFactory7) -> Self6408 fn from(value: IDWriteFactory7) -> Self {
6409 unsafe { ::std::mem::transmute(value) }
6410 }
6411 }
6412 impl ::std::convert::From<&IDWriteFactory7> for IDWriteFactory3 {
from(value: &IDWriteFactory7) -> Self6413 fn from(value: &IDWriteFactory7) -> Self {
6414 ::std::convert::From::from(::std::clone::Clone::clone(value))
6415 }
6416 }
6417 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>6418 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
6419 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(self))
6420 }
6421 }
6422 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory3> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3>6423 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory3> {
6424 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory3>::into(::std::clone::Clone::clone(self)))
6425 }
6426 }
6427 impl ::std::convert::From<IDWriteFactory7> for IDWriteFactory2 {
from(value: IDWriteFactory7) -> Self6428 fn from(value: IDWriteFactory7) -> Self {
6429 unsafe { ::std::mem::transmute(value) }
6430 }
6431 }
6432 impl ::std::convert::From<&IDWriteFactory7> for IDWriteFactory2 {
from(value: &IDWriteFactory7) -> Self6433 fn from(value: &IDWriteFactory7) -> Self {
6434 ::std::convert::From::from(::std::clone::Clone::clone(value))
6435 }
6436 }
6437 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>6438 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
6439 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(self))
6440 }
6441 }
6442 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory2> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2>6443 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory2> {
6444 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory2>::into(::std::clone::Clone::clone(self)))
6445 }
6446 }
6447 impl ::std::convert::From<IDWriteFactory7> for IDWriteFactory1 {
from(value: IDWriteFactory7) -> Self6448 fn from(value: IDWriteFactory7) -> Self {
6449 unsafe { ::std::mem::transmute(value) }
6450 }
6451 }
6452 impl ::std::convert::From<&IDWriteFactory7> for IDWriteFactory1 {
from(value: &IDWriteFactory7) -> Self6453 fn from(value: &IDWriteFactory7) -> Self {
6454 ::std::convert::From::from(::std::clone::Clone::clone(value))
6455 }
6456 }
6457 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>6458 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
6459 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(self))
6460 }
6461 }
6462 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory1> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1>6463 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory1> {
6464 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory1>::into(::std::clone::Clone::clone(self)))
6465 }
6466 }
6467 impl ::std::convert::From<IDWriteFactory7> for IDWriteFactory {
from(value: IDWriteFactory7) -> Self6468 fn from(value: IDWriteFactory7) -> Self {
6469 unsafe { ::std::mem::transmute(value) }
6470 }
6471 }
6472 impl ::std::convert::From<&IDWriteFactory7> for IDWriteFactory {
from(value: &IDWriteFactory7) -> Self6473 fn from(value: &IDWriteFactory7) -> Self {
6474 ::std::convert::From::from(::std::clone::Clone::clone(value))
6475 }
6476 }
6477 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>6478 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
6479 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(self))
6480 }
6481 }
6482 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFactory> for &IDWriteFactory7 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory>6483 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFactory> {
6484 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFactory>::into(::std::clone::Clone::clone(self)))
6485 }
6486 }
6487 #[repr(C)]
6488 #[doc(hidden)]
6489 pub struct IDWriteFactory7_abi(
6490 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6491 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6492 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6493 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6494 #[cfg(not(feature = "Win32_Foundation"))] usize,
6495 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, collectionloader: ::windows::runtime::RawPtr, collectionkey: *const ::std::ffi::c_void, collectionkeysize: u32, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6496 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6497 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollectionloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6498 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6499 #[cfg(not(feature = "Win32_Foundation"))] usize,
6500 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfilereferencekey: *const ::std::ffi::c_void, fontfilereferencekeysize: u32, fontfileloader: ::windows::runtime::RawPtr, fontfile: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6501 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacetype: DWRITE_FONT_FACE_TYPE, numberoffiles: u32, fontfiles: *const ::windows::runtime::RawPtr, faceindex: u32, fontfacesimulationflags: DWRITE_FONT_SIMULATIONS, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6502 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6503 #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, monitor: super::Gdi::HMONITOR, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6504 #[cfg(not(feature = "Win32_Graphics_Gdi"))] usize,
6505 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6506 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6507 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfileloader: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6508 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontweight: DWRITE_FONT_WEIGHT, fontstyle: DWRITE_FONT_STYLE, fontstretch: DWRITE_FONT_STRETCH, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6509 #[cfg(not(feature = "Win32_Foundation"))] usize,
6510 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, typography: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6511 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdiinterop: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6512 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, maxwidth: f32, maxheight: f32, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6513 #[cfg(not(feature = "Win32_Foundation"))] usize,
6514 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, string: super::super::Foundation::PWSTR, stringlength: u32, textformat: ::windows::runtime::RawPtr, layoutwidth: f32, layoutheight: f32, pixelsperdip: f32, transform: *const DWRITE_MATRIX, usegdinatural: super::super::Foundation::BOOL, textlayout: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6515 #[cfg(not(feature = "Win32_Foundation"))] usize,
6516 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textformat: ::windows::runtime::RawPtr, trimmingsign: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6517 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, textanalyzer: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6518 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, substitutionmethod: DWRITE_NUMBER_SUBSTITUTION_METHOD, localename: super::super::Foundation::PWSTR, ignoreuseroverride: super::super::Foundation::BOOL, numbersubstitution: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6519 #[cfg(not(feature = "Win32_Foundation"))] usize,
6520 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, pixelsperdip: f32, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6521 #[cfg(not(feature = "Win32_Foundation"))] usize,
6522 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6523 #[cfg(not(feature = "Win32_Foundation"))] usize,
6524 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, enhancedcontrastgrayscale: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6525 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallback: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6526 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfallbackbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6527 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineoriginx: f32, baselineoriginy: f32, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, measuringmode: DWRITE_MEASURING_MODE, worldtodevicetransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6528 #[cfg(not(feature = "Win32_Foundation"))] usize,
6529 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6530 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6531 #[cfg(not(feature = "Win32_Foundation"))] usize,
6532 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, transform: *const DWRITE_MATRIX, renderingmode: DWRITE_RENDERING_MODE1, measuringmode: DWRITE_MEASURING_MODE, gridfitmode: DWRITE_GRID_FIT_MODE, antialiasmode: DWRITE_TEXT_ANTIALIAS_MODE, baselineoriginx: f32, baselineoriginy: f32, glyphrunanalysis: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6533 #[cfg(not(feature = "Win32_Foundation"))] usize,
6534 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamma: f32, enhancedcontrast: f32, grayscaleenhancedcontrast: f32, cleartypelevel: f32, pixelgeometry: DWRITE_PIXEL_GEOMETRY, renderingmode: DWRITE_RENDERING_MODE1, gridfitmode: DWRITE_GRID_FIT_MODE, renderingparams: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6535 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6536 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filepath: super::super::Foundation::PWSTR, lastwritetime: *const super::super::Foundation::FILETIME, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6537 #[cfg(not(feature = "Win32_Foundation"))] usize,
6538 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6539 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6540 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: ::windows::runtime::RawPtr, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6541 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontcollection: *mut ::windows::runtime::RawPtr, checkforupdates: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6542 #[cfg(not(feature = "Win32_Foundation"))] usize,
6543 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontdownloadqueue: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6544 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))]
6545 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, glyphrundescription: *const DWRITE_GLYPH_RUN_DESCRIPTION, desiredglyphimageformats: DWRITE_GLYPH_IMAGE_FORMATS, measuringmode: DWRITE_MEASURING_MODE, worldanddpitransform: *const DWRITE_MATRIX, colorpaletteindex: u32, colorlayers: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6546 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
6547 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, baselineorigin: super::Direct2D::D2D_POINT_2F, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
6548 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
6549 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, glyphrun: *const ::std::mem::ManuallyDrop<DWRITE_GLYPH_RUN>, measuringmode: DWRITE_MEASURING_MODE, baselineorigin: super::Direct2D::D2D_POINT_2F, worldanddpitransform: *const DWRITE_MATRIX, glyphorigins: *mut super::Direct2D::D2D_POINT_2F) -> ::windows::runtime::HRESULT,
6550 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct2D")))] usize,
6551 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6552 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, newloader: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6553 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, referrerurl: super::super::Foundation::PWSTR, extraheaders: super::super::Foundation::PWSTR, newloader: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6554 #[cfg(not(feature = "Win32_Foundation"))] usize,
6555 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filedata: *const ::std::ffi::c_void, filedatasize: u32) -> DWRITE_CONTAINER_TYPE,
6556 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, containertype: DWRITE_CONTAINER_TYPE, filedata: *const ::std::ffi::c_void, filedatasize: u32, unpackedfontstream: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6557 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontsimulations: DWRITE_FONT_SIMULATIONS, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6558 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfile: ::windows::runtime::RawPtr, faceindex: u32, fontresource: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6559 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6560 #[cfg(not(feature = "Win32_Foundation"))] usize,
6561 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6562 #[cfg(not(feature = "Win32_Foundation"))] usize,
6563 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: ::windows::runtime::RawPtr, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6564 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontsetbuilder: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6565 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamilyname: super::super::Foundation::PWSTR, fontcollection: ::windows::runtime::RawPtr, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontsize: f32, localename: super::super::Foundation::PWSTR, textformat: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6566 #[cfg(not(feature = "Win32_Foundation"))] usize,
6567 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6568 #[cfg(not(feature = "Win32_Foundation"))] usize,
6569 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, includedownloadablefonts: super::super::Foundation::BOOL, fontfamilymodel: DWRITE_FONT_FAMILY_MODEL, fontcollection: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6570 #[cfg(not(feature = "Win32_Foundation"))] usize,
6571 );
6572 #[repr(transparent)]
6573 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6574 pub struct IDWriteFont(::windows::runtime::IUnknown);
6575 impl IDWriteFont {
GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily>6576 pub unsafe fn GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily> {
6577 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6578 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFamily>(result__)
6579 }
GetWeight(&self) -> DWRITE_FONT_WEIGHT6580 pub unsafe fn GetWeight(&self) -> DWRITE_FONT_WEIGHT {
6581 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)))
6582 }
GetStretch(&self) -> DWRITE_FONT_STRETCH6583 pub unsafe fn GetStretch(&self) -> DWRITE_FONT_STRETCH {
6584 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)))
6585 }
GetStyle(&self) -> DWRITE_FONT_STYLE6586 pub unsafe fn GetStyle(&self) -> DWRITE_FONT_STYLE {
6587 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)))
6588 }
6589 #[cfg(feature = "Win32_Foundation")]
IsSymbolFont(&self) -> super::super::Foundation::BOOL6590 pub unsafe fn IsSymbolFont(&self) -> super::super::Foundation::BOOL {
6591 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)))
6592 }
GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings>6593 pub unsafe fn GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings> {
6594 let mut result__: <IDWriteLocalizedStrings as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6595 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteLocalizedStrings>(result__)
6596 }
6597 #[cfg(feature = "Win32_Foundation")]
GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>6598 pub unsafe fn GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
6599 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(informationalstringid), ::std::mem::transmute(informationalstrings), ::std::mem::transmute(exists)).ok()
6600 }
GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS6601 pub unsafe fn GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS {
6602 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self)))
6603 }
GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS)6604 pub unsafe fn GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS) {
6605 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontmetrics)))
6606 }
6607 #[cfg(feature = "Win32_Foundation")]
HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL>6608 pub unsafe fn HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
6609 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6610 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(unicodevalue), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
6611 }
CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace>6612 pub unsafe fn CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace> {
6613 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6614 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFace>(result__)
6615 }
6616 }
6617 unsafe impl ::windows::runtime::Interface for IDWriteFont {
6618 type Vtable = IDWriteFont_abi;
6619 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2899404438, 35860, 20317, [135, 126, 254, 63, 193, 211, 39, 55]);
6620 }
6621 impl ::std::convert::From<IDWriteFont> for ::windows::runtime::IUnknown {
from(value: IDWriteFont) -> Self6622 fn from(value: IDWriteFont) -> Self {
6623 unsafe { ::std::mem::transmute(value) }
6624 }
6625 }
6626 impl ::std::convert::From<&IDWriteFont> for ::windows::runtime::IUnknown {
from(value: &IDWriteFont) -> Self6627 fn from(value: &IDWriteFont) -> Self {
6628 ::std::convert::From::from(::std::clone::Clone::clone(value))
6629 }
6630 }
6631 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFont {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6632 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6633 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6634 }
6635 }
6636 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFont {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6637 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6638 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6639 }
6640 }
6641 #[repr(C)]
6642 #[doc(hidden)]
6643 pub struct IDWriteFont_abi(
6644 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6645 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6646 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6647 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6648 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_WEIGHT,
6649 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STRETCH,
6650 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STYLE,
6651 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
6652 #[cfg(not(feature = "Win32_Foundation"))] usize,
6653 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, names: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6654 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::windows::runtime::RawPtr, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6655 #[cfg(not(feature = "Win32_Foundation"))] usize,
6656 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_SIMULATIONS,
6657 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontmetrics: *mut DWRITE_FONT_METRICS),
6658 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, unicodevalue: u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6659 #[cfg(not(feature = "Win32_Foundation"))] usize,
6660 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6661 );
6662 #[repr(transparent)]
6663 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6664 pub struct IDWriteFont1(::windows::runtime::IUnknown);
6665 impl IDWriteFont1 {
GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily>6666 pub unsafe fn GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily> {
6667 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6668 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFamily>(result__)
6669 }
GetWeight(&self) -> DWRITE_FONT_WEIGHT6670 pub unsafe fn GetWeight(&self) -> DWRITE_FONT_WEIGHT {
6671 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)))
6672 }
GetStretch(&self) -> DWRITE_FONT_STRETCH6673 pub unsafe fn GetStretch(&self) -> DWRITE_FONT_STRETCH {
6674 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)))
6675 }
GetStyle(&self) -> DWRITE_FONT_STYLE6676 pub unsafe fn GetStyle(&self) -> DWRITE_FONT_STYLE {
6677 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)))
6678 }
6679 #[cfg(feature = "Win32_Foundation")]
IsSymbolFont(&self) -> super::super::Foundation::BOOL6680 pub unsafe fn IsSymbolFont(&self) -> super::super::Foundation::BOOL {
6681 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)))
6682 }
GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings>6683 pub unsafe fn GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings> {
6684 let mut result__: <IDWriteLocalizedStrings as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6685 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteLocalizedStrings>(result__)
6686 }
6687 #[cfg(feature = "Win32_Foundation")]
GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>6688 pub unsafe fn GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
6689 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(informationalstringid), ::std::mem::transmute(informationalstrings), ::std::mem::transmute(exists)).ok()
6690 }
GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS6691 pub unsafe fn GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS {
6692 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self)))
6693 }
GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS)6694 pub unsafe fn GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS) {
6695 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontmetrics)))
6696 }
6697 #[cfg(feature = "Win32_Foundation")]
HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL>6698 pub unsafe fn HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
6699 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6700 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(unicodevalue), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
6701 }
CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace>6702 pub unsafe fn CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace> {
6703 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6704 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFace>(result__)
6705 }
6706 #[cfg(feature = "Win32_Foundation")]
GetMetrics2(&self, fontmetrics: *mut DWRITE_FONT_METRICS1)6707 pub unsafe fn GetMetrics2(&self, fontmetrics: *mut DWRITE_FONT_METRICS1) {
6708 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontmetrics)))
6709 }
GetPanose(&self, panose: *mut DWRITE_PANOSE)6710 pub unsafe fn GetPanose(&self, panose: *mut DWRITE_PANOSE) {
6711 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(panose)))
6712 }
GetUnicodeRanges(&self, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::Result<()>6713 pub unsafe fn GetUnicodeRanges(&self, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::Result<()> {
6714 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(maxrangecount), ::std::mem::transmute(unicoderanges), ::std::mem::transmute(actualrangecount)).ok()
6715 }
6716 #[cfg(feature = "Win32_Foundation")]
IsMonospacedFont(&self) -> super::super::Foundation::BOOL6717 pub unsafe fn IsMonospacedFont(&self) -> super::super::Foundation::BOOL {
6718 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self)))
6719 }
6720 }
6721 unsafe impl ::windows::runtime::Interface for IDWriteFont1 {
6722 type Vtable = IDWriteFont1_abi;
6723 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2899404438, 35860, 20317, [135, 126, 254, 63, 193, 211, 39, 56]);
6724 }
6725 impl ::std::convert::From<IDWriteFont1> for ::windows::runtime::IUnknown {
from(value: IDWriteFont1) -> Self6726 fn from(value: IDWriteFont1) -> Self {
6727 unsafe { ::std::mem::transmute(value) }
6728 }
6729 }
6730 impl ::std::convert::From<&IDWriteFont1> for ::windows::runtime::IUnknown {
from(value: &IDWriteFont1) -> Self6731 fn from(value: &IDWriteFont1) -> Self {
6732 ::std::convert::From::from(::std::clone::Clone::clone(value))
6733 }
6734 }
6735 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFont1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6736 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6737 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6738 }
6739 }
6740 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFont1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6741 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6742 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6743 }
6744 }
6745 impl ::std::convert::From<IDWriteFont1> for IDWriteFont {
from(value: IDWriteFont1) -> Self6746 fn from(value: IDWriteFont1) -> Self {
6747 unsafe { ::std::mem::transmute(value) }
6748 }
6749 }
6750 impl ::std::convert::From<&IDWriteFont1> for IDWriteFont {
from(value: &IDWriteFont1) -> Self6751 fn from(value: &IDWriteFont1) -> Self {
6752 ::std::convert::From::from(::std::clone::Clone::clone(value))
6753 }
6754 }
6755 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont> for IDWriteFont1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont>6756 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont> {
6757 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont>::into(self))
6758 }
6759 }
6760 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont> for &IDWriteFont1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont>6761 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont> {
6762 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont>::into(::std::clone::Clone::clone(self)))
6763 }
6764 }
6765 #[repr(C)]
6766 #[doc(hidden)]
6767 pub struct IDWriteFont1_abi(
6768 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6769 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6770 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6771 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6772 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_WEIGHT,
6773 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STRETCH,
6774 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STYLE,
6775 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
6776 #[cfg(not(feature = "Win32_Foundation"))] usize,
6777 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, names: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6778 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::windows::runtime::RawPtr, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6779 #[cfg(not(feature = "Win32_Foundation"))] usize,
6780 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_SIMULATIONS,
6781 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontmetrics: *mut DWRITE_FONT_METRICS),
6782 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, unicodevalue: u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6783 #[cfg(not(feature = "Win32_Foundation"))] usize,
6784 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6785 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontmetrics: *mut DWRITE_FONT_METRICS1),
6786 #[cfg(not(feature = "Win32_Foundation"))] usize,
6787 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, panose: *mut DWRITE_PANOSE),
6788 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::HRESULT,
6789 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
6790 #[cfg(not(feature = "Win32_Foundation"))] usize,
6791 );
6792 #[repr(transparent)]
6793 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6794 pub struct IDWriteFont2(::windows::runtime::IUnknown);
6795 impl IDWriteFont2 {
GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily>6796 pub unsafe fn GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily> {
6797 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6798 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFamily>(result__)
6799 }
GetWeight(&self) -> DWRITE_FONT_WEIGHT6800 pub unsafe fn GetWeight(&self) -> DWRITE_FONT_WEIGHT {
6801 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)))
6802 }
GetStretch(&self) -> DWRITE_FONT_STRETCH6803 pub unsafe fn GetStretch(&self) -> DWRITE_FONT_STRETCH {
6804 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)))
6805 }
GetStyle(&self) -> DWRITE_FONT_STYLE6806 pub unsafe fn GetStyle(&self) -> DWRITE_FONT_STYLE {
6807 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)))
6808 }
6809 #[cfg(feature = "Win32_Foundation")]
IsSymbolFont(&self) -> super::super::Foundation::BOOL6810 pub unsafe fn IsSymbolFont(&self) -> super::super::Foundation::BOOL {
6811 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)))
6812 }
GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings>6813 pub unsafe fn GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings> {
6814 let mut result__: <IDWriteLocalizedStrings as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6815 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteLocalizedStrings>(result__)
6816 }
6817 #[cfg(feature = "Win32_Foundation")]
GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>6818 pub unsafe fn GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
6819 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(informationalstringid), ::std::mem::transmute(informationalstrings), ::std::mem::transmute(exists)).ok()
6820 }
GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS6821 pub unsafe fn GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS {
6822 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self)))
6823 }
GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS)6824 pub unsafe fn GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS) {
6825 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontmetrics)))
6826 }
6827 #[cfg(feature = "Win32_Foundation")]
HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL>6828 pub unsafe fn HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
6829 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6830 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(unicodevalue), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
6831 }
CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace>6832 pub unsafe fn CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace> {
6833 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6834 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFace>(result__)
6835 }
6836 #[cfg(feature = "Win32_Foundation")]
GetMetrics2(&self, fontmetrics: *mut DWRITE_FONT_METRICS1)6837 pub unsafe fn GetMetrics2(&self, fontmetrics: *mut DWRITE_FONT_METRICS1) {
6838 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontmetrics)))
6839 }
GetPanose(&self, panose: *mut DWRITE_PANOSE)6840 pub unsafe fn GetPanose(&self, panose: *mut DWRITE_PANOSE) {
6841 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(panose)))
6842 }
GetUnicodeRanges(&self, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::Result<()>6843 pub unsafe fn GetUnicodeRanges(&self, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::Result<()> {
6844 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(maxrangecount), ::std::mem::transmute(unicoderanges), ::std::mem::transmute(actualrangecount)).ok()
6845 }
6846 #[cfg(feature = "Win32_Foundation")]
IsMonospacedFont(&self) -> super::super::Foundation::BOOL6847 pub unsafe fn IsMonospacedFont(&self) -> super::super::Foundation::BOOL {
6848 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self)))
6849 }
6850 #[cfg(feature = "Win32_Foundation")]
IsColorFont(&self) -> super::super::Foundation::BOOL6851 pub unsafe fn IsColorFont(&self) -> super::super::Foundation::BOOL {
6852 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self)))
6853 }
6854 }
6855 unsafe impl ::windows::runtime::Interface for IDWriteFont2 {
6856 type Vtable = IDWriteFont2_abi;
6857 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(695504598, 35996, 19050, [190, 11, 217, 18, 232, 83, 137, 68]);
6858 }
6859 impl ::std::convert::From<IDWriteFont2> for ::windows::runtime::IUnknown {
from(value: IDWriteFont2) -> Self6860 fn from(value: IDWriteFont2) -> Self {
6861 unsafe { ::std::mem::transmute(value) }
6862 }
6863 }
6864 impl ::std::convert::From<&IDWriteFont2> for ::windows::runtime::IUnknown {
from(value: &IDWriteFont2) -> Self6865 fn from(value: &IDWriteFont2) -> Self {
6866 ::std::convert::From::from(::std::clone::Clone::clone(value))
6867 }
6868 }
6869 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFont2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6870 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6871 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6872 }
6873 }
6874 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFont2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>6875 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6876 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6877 }
6878 }
6879 impl ::std::convert::From<IDWriteFont2> for IDWriteFont1 {
from(value: IDWriteFont2) -> Self6880 fn from(value: IDWriteFont2) -> Self {
6881 unsafe { ::std::mem::transmute(value) }
6882 }
6883 }
6884 impl ::std::convert::From<&IDWriteFont2> for IDWriteFont1 {
from(value: &IDWriteFont2) -> Self6885 fn from(value: &IDWriteFont2) -> Self {
6886 ::std::convert::From::from(::std::clone::Clone::clone(value))
6887 }
6888 }
6889 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont1> for IDWriteFont2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1>6890 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1> {
6891 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont1>::into(self))
6892 }
6893 }
6894 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont1> for &IDWriteFont2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1>6895 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1> {
6896 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont1>::into(::std::clone::Clone::clone(self)))
6897 }
6898 }
6899 impl ::std::convert::From<IDWriteFont2> for IDWriteFont {
from(value: IDWriteFont2) -> Self6900 fn from(value: IDWriteFont2) -> Self {
6901 unsafe { ::std::mem::transmute(value) }
6902 }
6903 }
6904 impl ::std::convert::From<&IDWriteFont2> for IDWriteFont {
from(value: &IDWriteFont2) -> Self6905 fn from(value: &IDWriteFont2) -> Self {
6906 ::std::convert::From::from(::std::clone::Clone::clone(value))
6907 }
6908 }
6909 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont> for IDWriteFont2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont>6910 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont> {
6911 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont>::into(self))
6912 }
6913 }
6914 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont> for &IDWriteFont2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont>6915 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont> {
6916 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont>::into(::std::clone::Clone::clone(self)))
6917 }
6918 }
6919 #[repr(C)]
6920 #[doc(hidden)]
6921 pub struct IDWriteFont2_abi(
6922 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6923 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6924 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6925 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6926 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_WEIGHT,
6927 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STRETCH,
6928 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STYLE,
6929 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
6930 #[cfg(not(feature = "Win32_Foundation"))] usize,
6931 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, names: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6932 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::windows::runtime::RawPtr, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6933 #[cfg(not(feature = "Win32_Foundation"))] usize,
6934 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_SIMULATIONS,
6935 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontmetrics: *mut DWRITE_FONT_METRICS),
6936 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, unicodevalue: u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
6937 #[cfg(not(feature = "Win32_Foundation"))] usize,
6938 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6939 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontmetrics: *mut DWRITE_FONT_METRICS1),
6940 #[cfg(not(feature = "Win32_Foundation"))] usize,
6941 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, panose: *mut DWRITE_PANOSE),
6942 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::HRESULT,
6943 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
6944 #[cfg(not(feature = "Win32_Foundation"))] usize,
6945 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
6946 #[cfg(not(feature = "Win32_Foundation"))] usize,
6947 );
6948 #[repr(transparent)]
6949 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6950 pub struct IDWriteFont3(::windows::runtime::IUnknown);
6951 impl IDWriteFont3 {
GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily>6952 pub unsafe fn GetFontFamily(&self) -> ::windows::runtime::Result<IDWriteFontFamily> {
6953 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6954 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFamily>(result__)
6955 }
GetWeight(&self) -> DWRITE_FONT_WEIGHT6956 pub unsafe fn GetWeight(&self) -> DWRITE_FONT_WEIGHT {
6957 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self)))
6958 }
GetStretch(&self) -> DWRITE_FONT_STRETCH6959 pub unsafe fn GetStretch(&self) -> DWRITE_FONT_STRETCH {
6960 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)))
6961 }
GetStyle(&self) -> DWRITE_FONT_STYLE6962 pub unsafe fn GetStyle(&self) -> DWRITE_FONT_STYLE {
6963 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)))
6964 }
6965 #[cfg(feature = "Win32_Foundation")]
IsSymbolFont(&self) -> super::super::Foundation::BOOL6966 pub unsafe fn IsSymbolFont(&self) -> super::super::Foundation::BOOL {
6967 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)))
6968 }
GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings>6969 pub unsafe fn GetFaceNames(&self) -> ::windows::runtime::Result<IDWriteLocalizedStrings> {
6970 let mut result__: <IDWriteLocalizedStrings as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6971 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteLocalizedStrings>(result__)
6972 }
6973 #[cfg(feature = "Win32_Foundation")]
GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>6974 pub unsafe fn GetInformationalStrings(&self, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::std::option::Option<IDWriteLocalizedStrings>, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
6975 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(informationalstringid), ::std::mem::transmute(informationalstrings), ::std::mem::transmute(exists)).ok()
6976 }
GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS6977 pub unsafe fn GetSimulations(&self) -> DWRITE_FONT_SIMULATIONS {
6978 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self)))
6979 }
GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS)6980 pub unsafe fn GetMetrics(&self, fontmetrics: *mut DWRITE_FONT_METRICS) {
6981 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontmetrics)))
6982 }
6983 #[cfg(feature = "Win32_Foundation")]
HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL>6984 pub unsafe fn HasCharacter(&self, unicodevalue: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
6985 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6986 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(unicodevalue), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
6987 }
CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace>6988 pub unsafe fn CreateFontFace(&self) -> ::windows::runtime::Result<IDWriteFontFace> {
6989 let mut result__: <IDWriteFontFace as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6990 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFace>(result__)
6991 }
6992 #[cfg(feature = "Win32_Foundation")]
GetMetrics2(&self, fontmetrics: *mut DWRITE_FONT_METRICS1)6993 pub unsafe fn GetMetrics2(&self, fontmetrics: *mut DWRITE_FONT_METRICS1) {
6994 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(fontmetrics)))
6995 }
GetPanose(&self, panose: *mut DWRITE_PANOSE)6996 pub unsafe fn GetPanose(&self, panose: *mut DWRITE_PANOSE) {
6997 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(panose)))
6998 }
GetUnicodeRanges(&self, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::Result<()>6999 pub unsafe fn GetUnicodeRanges(&self, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::Result<()> {
7000 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(maxrangecount), ::std::mem::transmute(unicoderanges), ::std::mem::transmute(actualrangecount)).ok()
7001 }
7002 #[cfg(feature = "Win32_Foundation")]
IsMonospacedFont(&self) -> super::super::Foundation::BOOL7003 pub unsafe fn IsMonospacedFont(&self) -> super::super::Foundation::BOOL {
7004 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self)))
7005 }
7006 #[cfg(feature = "Win32_Foundation")]
IsColorFont(&self) -> super::super::Foundation::BOOL7007 pub unsafe fn IsColorFont(&self) -> super::super::Foundation::BOOL {
7008 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self)))
7009 }
CreateFontFace2(&self) -> ::windows::runtime::Result<IDWriteFontFace3>7010 pub unsafe fn CreateFontFace2(&self) -> ::windows::runtime::Result<IDWriteFontFace3> {
7011 let mut result__: <IDWriteFontFace3 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7012 (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFace3>(result__)
7013 }
7014 #[cfg(feature = "Win32_Foundation")]
Equals<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFont>>(&self, font: Param0) -> super::super::Foundation::BOOL7015 pub unsafe fn Equals<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFont>>(&self, font: Param0) -> super::super::Foundation::BOOL {
7016 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), font.into_param().abi()))
7017 }
GetFontFaceReference(&self) -> ::windows::runtime::Result<IDWriteFontFaceReference>7018 pub unsafe fn GetFontFaceReference(&self) -> ::windows::runtime::Result<IDWriteFontFaceReference> {
7019 let mut result__: <IDWriteFontFaceReference as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7020 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontFaceReference>(result__)
7021 }
7022 #[cfg(feature = "Win32_Foundation")]
HasCharacter2(&self, unicodevalue: u32) -> super::super::Foundation::BOOL7023 pub unsafe fn HasCharacter2(&self, unicodevalue: u32) -> super::super::Foundation::BOOL {
7024 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(unicodevalue)))
7025 }
GetLocality(&self) -> DWRITE_LOCALITY7026 pub unsafe fn GetLocality(&self) -> DWRITE_LOCALITY {
7027 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self)))
7028 }
7029 }
7030 unsafe impl ::windows::runtime::Interface for IDWriteFont3 {
7031 type Vtable = IDWriteFont3_abi;
7032 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(695504598, 35996, 19050, [190, 11, 217, 18, 232, 83, 137, 68]);
7033 }
7034 impl ::std::convert::From<IDWriteFont3> for ::windows::runtime::IUnknown {
from(value: IDWriteFont3) -> Self7035 fn from(value: IDWriteFont3) -> Self {
7036 unsafe { ::std::mem::transmute(value) }
7037 }
7038 }
7039 impl ::std::convert::From<&IDWriteFont3> for ::windows::runtime::IUnknown {
from(value: &IDWriteFont3) -> Self7040 fn from(value: &IDWriteFont3) -> Self {
7041 ::std::convert::From::from(::std::clone::Clone::clone(value))
7042 }
7043 }
7044 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7045 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7046 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7047 }
7048 }
7049 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7050 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7051 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7052 }
7053 }
7054 impl ::std::convert::From<IDWriteFont3> for IDWriteFont2 {
from(value: IDWriteFont3) -> Self7055 fn from(value: IDWriteFont3) -> Self {
7056 unsafe { ::std::mem::transmute(value) }
7057 }
7058 }
7059 impl ::std::convert::From<&IDWriteFont3> for IDWriteFont2 {
from(value: &IDWriteFont3) -> Self7060 fn from(value: &IDWriteFont3) -> Self {
7061 ::std::convert::From::from(::std::clone::Clone::clone(value))
7062 }
7063 }
7064 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont2> for IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont2>7065 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont2> {
7066 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont2>::into(self))
7067 }
7068 }
7069 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont2> for &IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont2>7070 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont2> {
7071 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont2>::into(::std::clone::Clone::clone(self)))
7072 }
7073 }
7074 impl ::std::convert::From<IDWriteFont3> for IDWriteFont1 {
from(value: IDWriteFont3) -> Self7075 fn from(value: IDWriteFont3) -> Self {
7076 unsafe { ::std::mem::transmute(value) }
7077 }
7078 }
7079 impl ::std::convert::From<&IDWriteFont3> for IDWriteFont1 {
from(value: &IDWriteFont3) -> Self7080 fn from(value: &IDWriteFont3) -> Self {
7081 ::std::convert::From::from(::std::clone::Clone::clone(value))
7082 }
7083 }
7084 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont1> for IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1>7085 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1> {
7086 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont1>::into(self))
7087 }
7088 }
7089 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont1> for &IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1>7090 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont1> {
7091 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont1>::into(::std::clone::Clone::clone(self)))
7092 }
7093 }
7094 impl ::std::convert::From<IDWriteFont3> for IDWriteFont {
from(value: IDWriteFont3) -> Self7095 fn from(value: IDWriteFont3) -> Self {
7096 unsafe { ::std::mem::transmute(value) }
7097 }
7098 }
7099 impl ::std::convert::From<&IDWriteFont3> for IDWriteFont {
from(value: &IDWriteFont3) -> Self7100 fn from(value: &IDWriteFont3) -> Self {
7101 ::std::convert::From::from(::std::clone::Clone::clone(value))
7102 }
7103 }
7104 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont> for IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont>7105 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont> {
7106 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont>::into(self))
7107 }
7108 }
7109 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFont> for &IDWriteFont3 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont>7110 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFont> {
7111 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFont>::into(::std::clone::Clone::clone(self)))
7112 }
7113 }
7114 #[repr(C)]
7115 #[doc(hidden)]
7116 pub struct IDWriteFont3_abi(
7117 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7118 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7119 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7120 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7121 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_WEIGHT,
7122 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STRETCH,
7123 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_STYLE,
7124 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
7125 #[cfg(not(feature = "Win32_Foundation"))] usize,
7126 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, names: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7127 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, informationalstringid: DWRITE_INFORMATIONAL_STRING_ID, informationalstrings: *mut ::windows::runtime::RawPtr, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
7128 #[cfg(not(feature = "Win32_Foundation"))] usize,
7129 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_SIMULATIONS,
7130 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontmetrics: *mut DWRITE_FONT_METRICS),
7131 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, unicodevalue: u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
7132 #[cfg(not(feature = "Win32_Foundation"))] usize,
7133 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7134 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontmetrics: *mut DWRITE_FONT_METRICS1),
7135 #[cfg(not(feature = "Win32_Foundation"))] usize,
7136 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, panose: *mut DWRITE_PANOSE),
7137 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, maxrangecount: u32, unicoderanges: *mut DWRITE_UNICODE_RANGE, actualrangecount: *mut u32) -> ::windows::runtime::HRESULT,
7138 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
7139 #[cfg(not(feature = "Win32_Foundation"))] usize,
7140 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
7141 #[cfg(not(feature = "Win32_Foundation"))] usize,
7142 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7143 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, font: ::windows::runtime::RawPtr) -> super::super::Foundation::BOOL,
7144 #[cfg(not(feature = "Win32_Foundation"))] usize,
7145 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontfacereference: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7146 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, unicodevalue: u32) -> super::super::Foundation::BOOL,
7147 #[cfg(not(feature = "Win32_Foundation"))] usize,
7148 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_LOCALITY,
7149 );
7150 #[repr(transparent)]
7151 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7152 pub struct IDWriteFontCollection(::windows::runtime::IUnknown);
7153 impl IDWriteFontCollection {
GetFontFamilyCount(&self) -> u327154 pub unsafe fn GetFontFamilyCount(&self) -> u32 {
7155 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self)))
7156 }
GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily>7157 pub unsafe fn GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily> {
7158 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7159 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily>(result__)
7160 }
7161 #[cfg(feature = "Win32_Foundation")]
FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>7162 pub unsafe fn FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
7163 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), familyname.into_param().abi(), ::std::mem::transmute(index), ::std::mem::transmute(exists)).ok()
7164 }
GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont>7165 pub unsafe fn GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont> {
7166 let mut result__: <IDWriteFont as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7167 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontface.into_param().abi(), &mut result__).from_abi::<IDWriteFont>(result__)
7168 }
7169 }
7170 unsafe impl ::windows::runtime::Interface for IDWriteFontCollection {
7171 type Vtable = IDWriteFontCollection_abi;
7172 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2823613954, 16106, 20206, [168, 39, 135, 193, 160, 42, 15, 204]);
7173 }
7174 impl ::std::convert::From<IDWriteFontCollection> for ::windows::runtime::IUnknown {
from(value: IDWriteFontCollection) -> Self7175 fn from(value: IDWriteFontCollection) -> Self {
7176 unsafe { ::std::mem::transmute(value) }
7177 }
7178 }
7179 impl ::std::convert::From<&IDWriteFontCollection> for ::windows::runtime::IUnknown {
from(value: &IDWriteFontCollection) -> Self7180 fn from(value: &IDWriteFontCollection) -> Self {
7181 ::std::convert::From::from(::std::clone::Clone::clone(value))
7182 }
7183 }
7184 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFontCollection {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7185 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7186 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7187 }
7188 }
7189 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFontCollection {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7190 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7191 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7192 }
7193 }
7194 #[repr(C)]
7195 #[doc(hidden)]
7196 pub struct IDWriteFontCollection_abi(
7197 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7198 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7199 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7200 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7201 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, index: u32, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7202 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, familyname: super::super::Foundation::PWSTR, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
7203 #[cfg(not(feature = "Win32_Foundation"))] usize,
7204 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: ::windows::runtime::RawPtr, font: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7205 );
7206 #[repr(transparent)]
7207 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7208 pub struct IDWriteFontCollection1(::windows::runtime::IUnknown);
7209 impl IDWriteFontCollection1 {
GetFontFamilyCount(&self) -> u327210 pub unsafe fn GetFontFamilyCount(&self) -> u32 {
7211 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self)))
7212 }
GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily>7213 pub unsafe fn GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily> {
7214 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7215 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily>(result__)
7216 }
7217 #[cfg(feature = "Win32_Foundation")]
FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>7218 pub unsafe fn FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
7219 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), familyname.into_param().abi(), ::std::mem::transmute(index), ::std::mem::transmute(exists)).ok()
7220 }
GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont>7221 pub unsafe fn GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont> {
7222 let mut result__: <IDWriteFont as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7223 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontface.into_param().abi(), &mut result__).from_abi::<IDWriteFont>(result__)
7224 }
GetFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>7225 pub unsafe fn GetFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
7226 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7227 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
7228 }
GetFontFamily2(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily1>7229 pub unsafe fn GetFontFamily2(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily1> {
7230 let mut result__: <IDWriteFontFamily1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7231 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily1>(result__)
7232 }
7233 }
7234 unsafe impl ::windows::runtime::Interface for IDWriteFontCollection1 {
7235 type Vtable = IDWriteFontCollection1_abi;
7236 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1398296897, 55800, 16533, [131, 33, 215, 60, 246, 189, 17, 108]);
7237 }
7238 impl ::std::convert::From<IDWriteFontCollection1> for ::windows::runtime::IUnknown {
from(value: IDWriteFontCollection1) -> Self7239 fn from(value: IDWriteFontCollection1) -> Self {
7240 unsafe { ::std::mem::transmute(value) }
7241 }
7242 }
7243 impl ::std::convert::From<&IDWriteFontCollection1> for ::windows::runtime::IUnknown {
from(value: &IDWriteFontCollection1) -> Self7244 fn from(value: &IDWriteFontCollection1) -> Self {
7245 ::std::convert::From::from(::std::clone::Clone::clone(value))
7246 }
7247 }
7248 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFontCollection1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7249 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7250 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7251 }
7252 }
7253 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFontCollection1 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7254 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7255 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7256 }
7257 }
7258 impl ::std::convert::From<IDWriteFontCollection1> for IDWriteFontCollection {
from(value: IDWriteFontCollection1) -> Self7259 fn from(value: IDWriteFontCollection1) -> Self {
7260 unsafe { ::std::mem::transmute(value) }
7261 }
7262 }
7263 impl ::std::convert::From<&IDWriteFontCollection1> for IDWriteFontCollection {
from(value: &IDWriteFontCollection1) -> Self7264 fn from(value: &IDWriteFontCollection1) -> Self {
7265 ::std::convert::From::from(::std::clone::Clone::clone(value))
7266 }
7267 }
7268 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFontCollection> for IDWriteFontCollection1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection>7269 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection> {
7270 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFontCollection>::into(self))
7271 }
7272 }
7273 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFontCollection> for &IDWriteFontCollection1 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection>7274 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection> {
7275 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFontCollection>::into(::std::clone::Clone::clone(self)))
7276 }
7277 }
7278 #[repr(C)]
7279 #[doc(hidden)]
7280 pub struct IDWriteFontCollection1_abi(
7281 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7282 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7283 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7284 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7285 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, index: u32, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7286 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, familyname: super::super::Foundation::PWSTR, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
7287 #[cfg(not(feature = "Win32_Foundation"))] usize,
7288 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: ::windows::runtime::RawPtr, font: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7289 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7290 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, index: u32, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7291 );
7292 #[repr(transparent)]
7293 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7294 pub struct IDWriteFontCollection2(::windows::runtime::IUnknown);
7295 impl IDWriteFontCollection2 {
GetFontFamilyCount(&self) -> u327296 pub unsafe fn GetFontFamilyCount(&self) -> u32 {
7297 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self)))
7298 }
GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily>7299 pub unsafe fn GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily> {
7300 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7301 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily>(result__)
7302 }
7303 #[cfg(feature = "Win32_Foundation")]
FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>7304 pub unsafe fn FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
7305 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), familyname.into_param().abi(), ::std::mem::transmute(index), ::std::mem::transmute(exists)).ok()
7306 }
GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont>7307 pub unsafe fn GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont> {
7308 let mut result__: <IDWriteFont as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7309 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontface.into_param().abi(), &mut result__).from_abi::<IDWriteFont>(result__)
7310 }
GetFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>7311 pub unsafe fn GetFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
7312 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7313 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
7314 }
GetFontFamily2(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily1>7315 pub unsafe fn GetFontFamily2(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily1> {
7316 let mut result__: <IDWriteFontFamily1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7317 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily1>(result__)
7318 }
GetFontFamily3(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily2>7319 pub unsafe fn GetFontFamily3(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily2> {
7320 let mut result__: <IDWriteFontFamily2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7321 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily2>(result__)
7322 }
7323 #[cfg(feature = "Win32_Foundation")]
GetMatchingFonts<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontList2>7324 pub unsafe fn GetMatchingFonts<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontList2> {
7325 let mut result__: <IDWriteFontList2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7326 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), familyname.into_param().abi(), ::std::mem::transmute(fontaxisvalues), ::std::mem::transmute(fontaxisvaluecount), &mut result__).from_abi::<IDWriteFontList2>(result__)
7327 }
GetFontFamilyModel(&self) -> DWRITE_FONT_FAMILY_MODEL7328 pub unsafe fn GetFontFamilyModel(&self) -> DWRITE_FONT_FAMILY_MODEL {
7329 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self)))
7330 }
GetFontSet2(&self) -> ::windows::runtime::Result<IDWriteFontSet1>7331 pub unsafe fn GetFontSet2(&self) -> ::windows::runtime::Result<IDWriteFontSet1> {
7332 let mut result__: <IDWriteFontSet1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7333 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet1>(result__)
7334 }
7335 }
7336 unsafe impl ::windows::runtime::Interface for IDWriteFontCollection2 {
7337 type Vtable = IDWriteFontCollection2_abi;
7338 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1363163590, 17943, 16484, [191, 139, 146, 234, 131, 229, 6, 224]);
7339 }
7340 impl ::std::convert::From<IDWriteFontCollection2> for ::windows::runtime::IUnknown {
from(value: IDWriteFontCollection2) -> Self7341 fn from(value: IDWriteFontCollection2) -> Self {
7342 unsafe { ::std::mem::transmute(value) }
7343 }
7344 }
7345 impl ::std::convert::From<&IDWriteFontCollection2> for ::windows::runtime::IUnknown {
from(value: &IDWriteFontCollection2) -> Self7346 fn from(value: &IDWriteFontCollection2) -> Self {
7347 ::std::convert::From::from(::std::clone::Clone::clone(value))
7348 }
7349 }
7350 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDWriteFontCollection2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7351 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7352 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7353 }
7354 }
7355 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDWriteFontCollection2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>7356 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7357 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7358 }
7359 }
7360 impl ::std::convert::From<IDWriteFontCollection2> for IDWriteFontCollection1 {
from(value: IDWriteFontCollection2) -> Self7361 fn from(value: IDWriteFontCollection2) -> Self {
7362 unsafe { ::std::mem::transmute(value) }
7363 }
7364 }
7365 impl ::std::convert::From<&IDWriteFontCollection2> for IDWriteFontCollection1 {
from(value: &IDWriteFontCollection2) -> Self7366 fn from(value: &IDWriteFontCollection2) -> Self {
7367 ::std::convert::From::from(::std::clone::Clone::clone(value))
7368 }
7369 }
7370 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFontCollection1> for IDWriteFontCollection2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection1>7371 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection1> {
7372 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFontCollection1>::into(self))
7373 }
7374 }
7375 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFontCollection1> for &IDWriteFontCollection2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection1>7376 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection1> {
7377 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFontCollection1>::into(::std::clone::Clone::clone(self)))
7378 }
7379 }
7380 impl ::std::convert::From<IDWriteFontCollection2> for IDWriteFontCollection {
from(value: IDWriteFontCollection2) -> Self7381 fn from(value: IDWriteFontCollection2) -> Self {
7382 unsafe { ::std::mem::transmute(value) }
7383 }
7384 }
7385 impl ::std::convert::From<&IDWriteFontCollection2> for IDWriteFontCollection {
from(value: &IDWriteFontCollection2) -> Self7386 fn from(value: &IDWriteFontCollection2) -> Self {
7387 ::std::convert::From::from(::std::clone::Clone::clone(value))
7388 }
7389 }
7390 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFontCollection> for IDWriteFontCollection2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection>7391 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection> {
7392 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFontCollection>::into(self))
7393 }
7394 }
7395 impl<'a> ::windows::runtime::IntoParam<'a, IDWriteFontCollection> for &IDWriteFontCollection2 {
into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection>7396 fn into_param(self) -> ::windows::runtime::Param<'a, IDWriteFontCollection> {
7397 ::windows::runtime::Param::Owned(::std::convert::Into::<IDWriteFontCollection>::into(::std::clone::Clone::clone(self)))
7398 }
7399 }
7400 #[repr(C)]
7401 #[doc(hidden)]
7402 pub struct IDWriteFontCollection2_abi(
7403 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7404 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7405 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7406 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
7407 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, index: u32, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7408 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, familyname: super::super::Foundation::PWSTR, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
7409 #[cfg(not(feature = "Win32_Foundation"))] usize,
7410 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontface: ::windows::runtime::RawPtr, font: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7411 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7412 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, index: u32, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7413 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, index: u32, fontfamily: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7414 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, familyname: super::super::Foundation::PWSTR, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32, fontlist: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7415 #[cfg(not(feature = "Win32_Foundation"))] usize,
7416 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> DWRITE_FONT_FAMILY_MODEL,
7417 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fontset: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
7418 );
7419 #[repr(transparent)]
7420 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7421 pub struct IDWriteFontCollection3(::windows::runtime::IUnknown);
7422 impl IDWriteFontCollection3 {
GetFontFamilyCount(&self) -> u327423 pub unsafe fn GetFontFamilyCount(&self) -> u32 {
7424 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self)))
7425 }
GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily>7426 pub unsafe fn GetFontFamily(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily> {
7427 let mut result__: <IDWriteFontFamily as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7428 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily>(result__)
7429 }
7430 #[cfg(feature = "Win32_Foundation")]
FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>7431 pub unsafe fn FindFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, index: *mut u32, exists: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
7432 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), familyname.into_param().abi(), ::std::mem::transmute(index), ::std::mem::transmute(exists)).ok()
7433 }
GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont>7434 pub unsafe fn GetFontFromFontFace<'a, Param0: ::windows::runtime::IntoParam<'a, IDWriteFontFace>>(&self, fontface: Param0) -> ::windows::runtime::Result<IDWriteFont> {
7435 let mut result__: <IDWriteFont as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7436 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), fontface.into_param().abi(), &mut result__).from_abi::<IDWriteFont>(result__)
7437 }
GetFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet>7438 pub unsafe fn GetFontSet(&self) -> ::windows::runtime::Result<IDWriteFontSet> {
7439 let mut result__: <IDWriteFontSet as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7440 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IDWriteFontSet>(result__)
7441 }
GetFontFamily2(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily1>7442 pub unsafe fn GetFontFamily2(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily1> {
7443 let mut result__: <IDWriteFontFamily1 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7444 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily1>(result__)
7445 }
GetFontFamily3(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily2>7446 pub unsafe fn GetFontFamily3(&self, index: u32) -> ::windows::runtime::Result<IDWriteFontFamily2> {
7447 let mut result__: <IDWriteFontFamily2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7448 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(index), &mut result__).from_abi::<IDWriteFontFamily2>(result__)
7449 }
7450 #[cfg(feature = "Win32_Foundation")]
GetMatchingFonts<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontList2>7451 pub unsafe fn GetMatchingFonts<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, familyname: Param0, fontaxisvalues: *const DWRITE_FONT_AXIS_VALUE, fontaxisvaluecount: u32) -> ::windows::runtime::Result<IDWriteFontList2> {
7452 let mut result__: <IDWriteFontList2 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
7453 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), familyname.into_param().abi(), ::std::mem::transmute(fontaxisvalues), ::std::mem::transmute(fontaxisvaluecount), &mut result__).from_abi::<IDWriteFontList2>(result__)
7454 }
GetFontFamilyModel(&self) -> DWRITE_FONT_FAMILY_MODEL7455 pub unsafe fn GetFontFamilyModel(&self) -> DWRITE_FONT_FAMILY_MODEL {
7456 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self)))
7457 }
GetFontSet2(&self) -> ::windows::runtime::Result<IDWriteFontSet1>7458