[1166] | 1 | /*
|
---|
| 2 | * Copyright 2013 Nikolay Sivov for CodeWeavers
|
---|
| 3 | *
|
---|
| 4 | * This library is free software; you can redistribute it and/or
|
---|
| 5 | * modify it under the terms of the GNU Lesser General Public
|
---|
| 6 | * License as published by the Free Software Foundation; either
|
---|
| 7 | * version 2.1 of the License, or (at your option) any later version.
|
---|
| 8 | *
|
---|
| 9 | * This library is distributed in the hope that it will be useful,
|
---|
| 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
| 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
| 12 | * Lesser General Public License for more details.
|
---|
| 13 | *
|
---|
| 14 | * You should have received a copy of the GNU Lesser General Public
|
---|
| 15 | * License along with this library; if not, write to the Free Software
|
---|
| 16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
---|
| 17 | */
|
---|
| 18 |
|
---|
| 19 | import "dwrite.idl";
|
---|
| 20 |
|
---|
| 21 | typedef enum DWRITE_PANOSE_FAMILY
|
---|
| 22 | {
|
---|
| 23 | DWRITE_PANOSE_FAMILY_ANY,
|
---|
| 24 | DWRITE_PANOSE_FAMILY_NO_FIT,
|
---|
| 25 | DWRITE_PANOSE_FAMILY_TEXT_DISPLAY,
|
---|
| 26 | DWRITE_PANOSE_FAMILY_SCRIPT,
|
---|
| 27 | DWRITE_PANOSE_FAMILY_DECORATIVE,
|
---|
| 28 | DWRITE_PANOSE_FAMILY_SYMBOL,
|
---|
| 29 | DWRITE_PANOSE_FAMILY_PICTORIAL = DWRITE_PANOSE_FAMILY_SYMBOL
|
---|
| 30 | } DWRITE_PANOSE_FAMILY;
|
---|
| 31 |
|
---|
| 32 | typedef enum DWRITE_PANOSE_SERIF_STYLE
|
---|
| 33 | {
|
---|
| 34 | DWRITE_PANOSE_SERIF_STYLE_ANY,
|
---|
| 35 | DWRITE_PANOSE_SERIF_STYLE_NO_FIT,
|
---|
| 36 | DWRITE_PANOSE_SERIF_STYLE_COVE,
|
---|
| 37 | DWRITE_PANOSE_SERIF_STYLE_OBTUSE_COVE,
|
---|
| 38 | DWRITE_PANOSE_SERIF_STYLE_SQUARE_COVE,
|
---|
| 39 | DWRITE_PANOSE_SERIF_STYLE_OBTUSE_SQUARE_COVE,
|
---|
| 40 | DWRITE_PANOSE_SERIF_STYLE_SQUARE,
|
---|
| 41 | DWRITE_PANOSE_SERIF_STYLE_THIN,
|
---|
| 42 | DWRITE_PANOSE_SERIF_STYLE_OVAL,
|
---|
| 43 | DWRITE_PANOSE_SERIF_STYLE_EXAGGERATED,
|
---|
| 44 | DWRITE_PANOSE_SERIF_STYLE_TRIANGLE,
|
---|
| 45 | DWRITE_PANOSE_SERIF_STYLE_NORMAL_SANS,
|
---|
| 46 | DWRITE_PANOSE_SERIF_STYLE_OBTUSE_SANS,
|
---|
| 47 | DWRITE_PANOSE_SERIF_STYLE_PERPENDICULAR_SANS,
|
---|
| 48 | DWRITE_PANOSE_SERIF_STYLE_FLARED,
|
---|
| 49 | DWRITE_PANOSE_SERIF_STYLE_ROUNDED,
|
---|
| 50 | DWRITE_PANOSE_SERIF_STYLE_SCRIPT,
|
---|
| 51 | DWRITE_PANOSE_SERIF_STYLE_PERP_SANS = DWRITE_PANOSE_SERIF_STYLE_PERPENDICULAR_SANS,
|
---|
| 52 | DWRITE_PANOSE_SERIF_STYLE_BONE = DWRITE_PANOSE_SERIF_STYLE_OVAL
|
---|
| 53 | } DWRITE_PANOSE_SERIF_STYLE;
|
---|
| 54 |
|
---|
| 55 | typedef enum DWRITE_PANOSE_WEIGHT
|
---|
| 56 | {
|
---|
| 57 | DWRITE_PANOSE_WEIGHT_ANY,
|
---|
| 58 | DWRITE_PANOSE_WEIGHT_NO_FIT,
|
---|
| 59 | DWRITE_PANOSE_WEIGHT_VERY_LIGHT,
|
---|
| 60 | DWRITE_PANOSE_WEIGHT_LIGHT,
|
---|
| 61 | DWRITE_PANOSE_WEIGHT_THIN,
|
---|
| 62 | DWRITE_PANOSE_WEIGHT_BOOK,
|
---|
| 63 | DWRITE_PANOSE_WEIGHT_MEDIUM,
|
---|
| 64 | DWRITE_PANOSE_WEIGHT_DEMI,
|
---|
| 65 | DWRITE_PANOSE_WEIGHT_BOLD,
|
---|
| 66 | DWRITE_PANOSE_WEIGHT_HEAVY,
|
---|
| 67 | DWRITE_PANOSE_WEIGHT_BLACK,
|
---|
| 68 | DWRITE_PANOSE_WEIGHT_EXTRA_BLACK,
|
---|
| 69 | DWRITE_PANOSE_WEIGHT_NORD = DWRITE_PANOSE_WEIGHT_EXTRA_BLACK
|
---|
| 70 | } DWRITE_PANOSE_WEIGHT;
|
---|
| 71 |
|
---|
| 72 | typedef enum DWRITE_PANOSE_PROPORTION
|
---|
| 73 | {
|
---|
| 74 | DWRITE_PANOSE_PROPORTION_ANY,
|
---|
| 75 | DWRITE_PANOSE_PROPORTION_NO_FIT,
|
---|
| 76 | DWRITE_PANOSE_PROPORTION_OLD_STYLE,
|
---|
| 77 | DWRITE_PANOSE_PROPORTION_MODERN,
|
---|
| 78 | DWRITE_PANOSE_PROPORTION_EVEN_WIDTH,
|
---|
| 79 | DWRITE_PANOSE_PROPORTION_EXPANDED,
|
---|
| 80 | DWRITE_PANOSE_PROPORTION_CONDENSED,
|
---|
| 81 | DWRITE_PANOSE_PROPORTION_VERY_EXPANDED,
|
---|
| 82 | DWRITE_PANOSE_PROPORTION_VERY_CONDENSED,
|
---|
| 83 | DWRITE_PANOSE_PROPORTION_MONOSPACED
|
---|
| 84 | } DWRITE_PANOSE_PROPORTION;
|
---|
| 85 |
|
---|
| 86 | typedef enum DWRITE_PANOSE_CONTRAST
|
---|
| 87 | {
|
---|
| 88 | DWRITE_PANOSE_CONTRAST_ANY,
|
---|
| 89 | DWRITE_PANOSE_CONTRAST_NO_FIT,
|
---|
| 90 | DWRITE_PANOSE_CONTRAST_NONE,
|
---|
| 91 | DWRITE_PANOSE_CONTRAST_VERY_LOW,
|
---|
| 92 | DWRITE_PANOSE_CONTRAST_LOW,
|
---|
| 93 | DWRITE_PANOSE_CONTRAST_MEDIUM_LOW,
|
---|
| 94 | DWRITE_PANOSE_CONTRAST_MEDIUM,
|
---|
| 95 | DWRITE_PANOSE_CONTRAST_MEDIUM_HIGH,
|
---|
| 96 | DWRITE_PANOSE_CONTRAST_HIGH,
|
---|
| 97 | DWRITE_PANOSE_CONTRAST_VERY_HIGH,
|
---|
| 98 | DWRITE_PANOSE_CONTRAST_HORIZONTAL_LOW,
|
---|
| 99 | DWRITE_PANOSE_CONTRAST_HORIZONTAL_MEDIUM,
|
---|
| 100 | DWRITE_PANOSE_CONTRAST_HORIZONTAL_HIGH,
|
---|
| 101 | DWRITE_PANOSE_CONTRAST_BROKEN
|
---|
| 102 | } DWRITE_PANOSE_CONTRAST;
|
---|
| 103 |
|
---|
| 104 | typedef enum DWRITE_PANOSE_STROKE_VARIATION
|
---|
| 105 | {
|
---|
| 106 | DWRITE_PANOSE_STROKE_VARIATION_ANY,
|
---|
| 107 | DWRITE_PANOSE_STROKE_VARIATION_NO_FIT,
|
---|
| 108 | DWRITE_PANOSE_STROKE_VARIATION_NO_VARIATION,
|
---|
| 109 | DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_DIAGONAL,
|
---|
| 110 | DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_TRANSITIONAL,
|
---|
| 111 | DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_VERTICAL,
|
---|
| 112 | DWRITE_PANOSE_STROKE_VARIATION_GRADUAL_HORIZONTAL,
|
---|
| 113 | DWRITE_PANOSE_STROKE_VARIATION_RAPID_VERTICAL,
|
---|
| 114 | DWRITE_PANOSE_STROKE_VARIATION_RAPID_HORIZONTAL,
|
---|
| 115 | DWRITE_PANOSE_STROKE_VARIATION_INSTANT_VERTICAL,
|
---|
| 116 | DWRITE_PANOSE_STROKE_VARIATION_INSTANT_HORIZONTAL
|
---|
| 117 | } DWRITE_PANOSE_STROKE_VARIATION;
|
---|
| 118 |
|
---|
| 119 | typedef enum DWRITE_PANOSE_ARM_STYLE
|
---|
| 120 | {
|
---|
| 121 | DWRITE_PANOSE_ARM_STYLE_ANY,
|
---|
| 122 | DWRITE_PANOSE_ARM_STYLE_NO_FIT,
|
---|
| 123 | DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_HORIZONTAL,
|
---|
| 124 | DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_WEDGE,
|
---|
| 125 | DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_VERTICAL,
|
---|
| 126 | DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_SINGLE_SERIF,
|
---|
| 127 | DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_DOUBLE_SERIF,
|
---|
| 128 | DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_HORIZONTAL,
|
---|
| 129 | DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_WEDGE,
|
---|
| 130 | DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_VERTICAL,
|
---|
| 131 | DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_SINGLE_SERIF,
|
---|
| 132 | DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_DOUBLE_SERIF,
|
---|
| 133 | DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_HORZ = DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_HORIZONTAL,
|
---|
| 134 | DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_VERT = DWRITE_PANOSE_ARM_STYLE_STRAIGHT_ARMS_VERTICAL,
|
---|
| 135 | DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_HORZ = DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_HORIZONTAL,
|
---|
| 136 | DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_WEDGE = DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_WEDGE,
|
---|
| 137 | DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_VERT = DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_VERTICAL,
|
---|
| 138 | DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_SINGLE_SERIF = DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_SINGLE_SERIF,
|
---|
| 139 | DWRITE_PANOSE_ARM_STYLE_BENT_ARMS_DOUBLE_SERIF = DWRITE_PANOSE_ARM_STYLE_NONSTRAIGHT_ARMS_DOUBLE_SERIF
|
---|
| 140 | } DWRITE_PANOSE_ARM_STYLE;
|
---|
| 141 |
|
---|
| 142 | typedef enum DWRITE_PANOSE_LETTERFORM
|
---|
| 143 | {
|
---|
| 144 | DWRITE_PANOSE_LETTERFORM_ANY,
|
---|
| 145 | DWRITE_PANOSE_LETTERFORM_NO_FIT,
|
---|
| 146 | DWRITE_PANOSE_LETTERFORM_NORMAL_CONTACT,
|
---|
| 147 | DWRITE_PANOSE_LETTERFORM_NORMAL_WEIGHTED,
|
---|
| 148 | DWRITE_PANOSE_LETTERFORM_NORMAL_BOXED,
|
---|
| 149 | DWRITE_PANOSE_LETTERFORM_NORMAL_FLATTENED,
|
---|
| 150 | DWRITE_PANOSE_LETTERFORM_NORMAL_ROUNDED,
|
---|
| 151 | DWRITE_PANOSE_LETTERFORM_NORMAL_OFF_CENTER,
|
---|
| 152 | DWRITE_PANOSE_LETTERFORM_NORMAL_SQUARE,
|
---|
| 153 | DWRITE_PANOSE_LETTERFORM_OBLIQUE_CONTACT,
|
---|
| 154 | DWRITE_PANOSE_LETTERFORM_OBLIQUE_WEIGHTED,
|
---|
| 155 | DWRITE_PANOSE_LETTERFORM_OBLIQUE_BOXED,
|
---|
| 156 | DWRITE_PANOSE_LETTERFORM_OBLIQUE_FLATTENED,
|
---|
| 157 | DWRITE_PANOSE_LETTERFORM_OBLIQUE_ROUNDED,
|
---|
| 158 | DWRITE_PANOSE_LETTERFORM_OBLIQUE_OFF_CENTER,
|
---|
| 159 | DWRITE_PANOSE_LETTERFORM_OBLIQUE_SQUARE
|
---|
| 160 | } DWRITE_PANOSE_LETTERFORM;
|
---|
| 161 |
|
---|
| 162 | typedef enum DWRITE_PANOSE_MIDLINE
|
---|
| 163 | {
|
---|
| 164 | DWRITE_PANOSE_MIDLINE_ANY,
|
---|
| 165 | DWRITE_PANOSE_MIDLINE_NO_FIT,
|
---|
| 166 | DWRITE_PANOSE_MIDLINE_STANDARD_TRIMMED,
|
---|
| 167 | DWRITE_PANOSE_MIDLINE_STANDARD_POINTED,
|
---|
| 168 | DWRITE_PANOSE_MIDLINE_STANDARD_SERIFED,
|
---|
| 169 | DWRITE_PANOSE_MIDLINE_HIGH_TRIMMED,
|
---|
| 170 | DWRITE_PANOSE_MIDLINE_HIGH_POINTED,
|
---|
| 171 | DWRITE_PANOSE_MIDLINE_HIGH_SERIFED,
|
---|
| 172 | DWRITE_PANOSE_MIDLINE_CONSTANT_TRIMMED,
|
---|
| 173 | DWRITE_PANOSE_MIDLINE_CONSTANT_POINTED,
|
---|
| 174 | DWRITE_PANOSE_MIDLINE_CONSTANT_SERIFED,
|
---|
| 175 | DWRITE_PANOSE_MIDLINE_LOW_TRIMMED,
|
---|
| 176 | DWRITE_PANOSE_MIDLINE_LOW_POINTED,
|
---|
| 177 | DWRITE_PANOSE_MIDLINE_LOW_SERIFED
|
---|
| 178 | } DWRITE_PANOSE_MIDLINE;
|
---|
| 179 |
|
---|
| 180 | typedef enum DWRITE_PANOSE_XHEIGHT
|
---|
| 181 | {
|
---|
| 182 | DWRITE_PANOSE_XHEIGHT_ANY,
|
---|
| 183 | DWRITE_PANOSE_XHEIGHT_NO_FIT,
|
---|
| 184 | DWRITE_PANOSE_XHEIGHT_CONSTANT_SMALL,
|
---|
| 185 | DWRITE_PANOSE_XHEIGHT_CONSTANT_STANDARD,
|
---|
| 186 | DWRITE_PANOSE_XHEIGHT_CONSTANT_LARGE,
|
---|
| 187 | DWRITE_PANOSE_XHEIGHT_DUCKING_SMALL,
|
---|
| 188 | DWRITE_PANOSE_XHEIGHT_DUCKING_STANDARD,
|
---|
| 189 | DWRITE_PANOSE_XHEIGHT_DUCKING_LARGE,
|
---|
| 190 | DWRITE_PANOSE_XHEIGHT_CONSTANT_STD = DWRITE_PANOSE_XHEIGHT_CONSTANT_STANDARD,
|
---|
| 191 | DWRITE_PANOSE_XHEIGHT_DUCKING_STD = DWRITE_PANOSE_XHEIGHT_DUCKING_STANDARD
|
---|
| 192 | } DWRITE_PANOSE_XHEIGHT;
|
---|
| 193 |
|
---|
| 194 | typedef enum DWRITE_PANOSE_TOOL_KIND
|
---|
| 195 | {
|
---|
| 196 | DWRITE_PANOSE_TOOL_KIND_ANY,
|
---|
| 197 | DWRITE_PANOSE_TOOL_KIND_NO_FIT,
|
---|
| 198 | DWRITE_PANOSE_TOOL_KIND_FLAT_NIB,
|
---|
| 199 | DWRITE_PANOSE_TOOL_KIND_PRESSURE_POINT,
|
---|
| 200 | DWRITE_PANOSE_TOOL_KIND_ENGRAVED,
|
---|
| 201 | DWRITE_PANOSE_TOOL_KIND_BALL,
|
---|
| 202 | DWRITE_PANOSE_TOOL_KIND_BRUSH,
|
---|
| 203 | DWRITE_PANOSE_TOOL_KIND_ROUGH,
|
---|
| 204 | DWRITE_PANOSE_TOOL_KIND_FELT_PEN_BRUSH_TIP,
|
---|
| 205 | DWRITE_PANOSE_TOOL_KIND_WILD_BRUSH
|
---|
| 206 | } DWRITE_PANOSE_TOOL_KIND;
|
---|
| 207 |
|
---|
| 208 | typedef enum DWRITE_PANOSE_SPACING
|
---|
| 209 | {
|
---|
| 210 | DWRITE_PANOSE_SPACING_ANY,
|
---|
| 211 | DWRITE_PANOSE_SPACING_NO_FIT,
|
---|
| 212 | DWRITE_PANOSE_SPACING_PROPORTIONAL_SPACED,
|
---|
| 213 | DWRITE_PANOSE_SPACING_MONOSPACED
|
---|
| 214 | } DWRITE_PANOSE_SPACING;
|
---|
| 215 |
|
---|
| 216 | typedef enum DWRITE_PANOSE_ASPECT_RATIO
|
---|
| 217 | {
|
---|
| 218 | DWRITE_PANOSE_ASPECT_RATIO_ANY,
|
---|
| 219 | DWRITE_PANOSE_ASPECT_RATIO_NO_FIT,
|
---|
| 220 | DWRITE_PANOSE_ASPECT_RATIO_VERY_CONDENSED,
|
---|
| 221 | DWRITE_PANOSE_ASPECT_RATIO_CONDENSED,
|
---|
| 222 | DWRITE_PANOSE_ASPECT_RATIO_NORMAL,
|
---|
| 223 | DWRITE_PANOSE_ASPECT_RATIO_EXPANDED,
|
---|
| 224 | DWRITE_PANOSE_ASPECT_RATIO_VERY_EXPANDED
|
---|
| 225 | } DWRITE_PANOSE_ASPECT_RATIO;
|
---|
| 226 |
|
---|
| 227 | typedef enum DWRITE_PANOSE_SCRIPT_TOPOLOGY
|
---|
| 228 | {
|
---|
| 229 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_ANY,
|
---|
| 230 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_NO_FIT,
|
---|
| 231 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_ROMAN_DISCONNECTED,
|
---|
| 232 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_ROMAN_TRAILING,
|
---|
| 233 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_ROMAN_CONNECTED,
|
---|
| 234 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_CURSIVE_DISCONNECTED,
|
---|
| 235 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_CURSIVE_TRAILING,
|
---|
| 236 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_CURSIVE_CONNECTED,
|
---|
| 237 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_BLACKLETTER_DISCONNECTED,
|
---|
| 238 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_BLACKLETTER_TRAILING,
|
---|
| 239 | DWRITE_PANOSE_SCRIPT_TOPOLOGY_BLACKLETTER_CONNECTED
|
---|
| 240 | } DWRITE_PANOSE_SCRIPT_TOPOLOGY;
|
---|
| 241 |
|
---|
| 242 | typedef enum DWRITE_PANOSE_SCRIPT_FORM
|
---|
| 243 | {
|
---|
| 244 | DWRITE_PANOSE_SCRIPT_FORM_ANY,
|
---|
| 245 | DWRITE_PANOSE_SCRIPT_FORM_NO_FIT,
|
---|
| 246 | DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_NO_WRAPPING,
|
---|
| 247 | DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_SOME_WRAPPING,
|
---|
| 248 | DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_MORE_WRAPPING,
|
---|
| 249 | DWRITE_PANOSE_SCRIPT_FORM_UPRIGHT_EXTREME_WRAPPING,
|
---|
| 250 | DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_NO_WRAPPING,
|
---|
| 251 | DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_SOME_WRAPPING,
|
---|
| 252 | DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_MORE_WRAPPING,
|
---|
| 253 | DWRITE_PANOSE_SCRIPT_FORM_OBLIQUE_EXTREME_WRAPPING,
|
---|
| 254 | DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_NO_WRAPPING,
|
---|
| 255 | DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_SOME_WRAPPING,
|
---|
| 256 | DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_MORE_WRAPPING,
|
---|
| 257 | DWRITE_PANOSE_SCRIPT_FORM_EXAGGERATED_EXTREME_WRAPPING
|
---|
| 258 | } DWRITE_PANOSE_SCRIPT_FORM;
|
---|
| 259 |
|
---|
| 260 | typedef enum DWRITE_PANOSE_FINIALS
|
---|
| 261 | {
|
---|
| 262 | DWRITE_PANOSE_FINIALS_ANY,
|
---|
| 263 | DWRITE_PANOSE_FINIALS_NO_FIT,
|
---|
| 264 | DWRITE_PANOSE_FINIALS_NONE_NO_LOOPS,
|
---|
| 265 | DWRITE_PANOSE_FINIALS_NONE_CLOSED_LOOPS,
|
---|
| 266 | DWRITE_PANOSE_FINIALS_NONE_OPEN_LOOPS,
|
---|
| 267 | DWRITE_PANOSE_FINIALS_SHARP_NO_LOOPS,
|
---|
| 268 | DWRITE_PANOSE_FINIALS_SHARP_CLOSED_LOOPS,
|
---|
| 269 | DWRITE_PANOSE_FINIALS_SHARP_OPEN_LOOPS,
|
---|
| 270 | DWRITE_PANOSE_FINIALS_TAPERED_NO_LOOPS,
|
---|
| 271 | DWRITE_PANOSE_FINIALS_TAPERED_CLOSED_LOOPS,
|
---|
| 272 | DWRITE_PANOSE_FINIALS_TAPERED_OPEN_LOOPS,
|
---|
| 273 | DWRITE_PANOSE_FINIALS_ROUND_NO_LOOPS,
|
---|
| 274 | DWRITE_PANOSE_FINIALS_ROUND_CLOSED_LOOPS,
|
---|
| 275 | DWRITE_PANOSE_FINIALS_ROUND_OPEN_LOOPS
|
---|
| 276 | } DWRITE_PANOSE_FINIALS;
|
---|
| 277 |
|
---|
| 278 | typedef enum DWRITE_PANOSE_XASCENT
|
---|
| 279 | {
|
---|
| 280 | DWRITE_PANOSE_XASCENT_ANY,
|
---|
| 281 | DWRITE_PANOSE_XASCENT_NO_FIT,
|
---|
| 282 | DWRITE_PANOSE_XASCENT_VERY_LOW,
|
---|
| 283 | DWRITE_PANOSE_XASCENT_LOW,
|
---|
| 284 | DWRITE_PANOSE_XASCENT_MEDIUM,
|
---|
| 285 | DWRITE_PANOSE_XASCENT_HIGH,
|
---|
| 286 | DWRITE_PANOSE_XASCENT_VERY_HIGH
|
---|
| 287 | } DWRITE_PANOSE_XASCENT;
|
---|
| 288 |
|
---|
| 289 | typedef enum DWRITE_PANOSE_DECORATIVE_CLASS
|
---|
| 290 | {
|
---|
| 291 | DWRITE_PANOSE_DECORATIVE_CLASS_ANY,
|
---|
| 292 | DWRITE_PANOSE_DECORATIVE_CLASS_NO_FIT,
|
---|
| 293 | DWRITE_PANOSE_DECORATIVE_CLASS_DERIVATIVE,
|
---|
| 294 | DWRITE_PANOSE_DECORATIVE_CLASS_NONSTANDARD_TOPOLOGY,
|
---|
| 295 | DWRITE_PANOSE_DECORATIVE_CLASS_NONSTANDARD_ELEMENTS,
|
---|
| 296 | DWRITE_PANOSE_DECORATIVE_CLASS_NONSTANDARD_ASPECT,
|
---|
| 297 | DWRITE_PANOSE_DECORATIVE_CLASS_INITIALS,
|
---|
| 298 | DWRITE_PANOSE_DECORATIVE_CLASS_CARTOON,
|
---|
| 299 | DWRITE_PANOSE_DECORATIVE_CLASS_PICTURE_STEMS,
|
---|
| 300 | DWRITE_PANOSE_DECORATIVE_CLASS_ORNAMENTED,
|
---|
| 301 | DWRITE_PANOSE_DECORATIVE_CLASS_TEXT_AND_BACKGROUND,
|
---|
| 302 | DWRITE_PANOSE_DECORATIVE_CLASS_COLLAGE,
|
---|
| 303 | DWRITE_PANOSE_DECORATIVE_CLASS_MONTAGE
|
---|
| 304 | } DWRITE_PANOSE_DECORATIVE_CLASS;
|
---|
| 305 |
|
---|
| 306 | typedef enum DWRITE_PANOSE_ASPECT
|
---|
| 307 | {
|
---|
| 308 | DWRITE_PANOSE_ASPECT_ANY,
|
---|
| 309 | DWRITE_PANOSE_ASPECT_NO_FIT,
|
---|
| 310 | DWRITE_PANOSE_ASPECT_SUPER_CONDENSED,
|
---|
| 311 | DWRITE_PANOSE_ASPECT_VERY_CONDENSED,
|
---|
| 312 | DWRITE_PANOSE_ASPECT_CONDENSED,
|
---|
| 313 | DWRITE_PANOSE_ASPECT_NORMAL,
|
---|
| 314 | DWRITE_PANOSE_ASPECT_EXTENDED,
|
---|
| 315 | DWRITE_PANOSE_ASPECT_VERY_EXTENDED,
|
---|
| 316 | DWRITE_PANOSE_ASPECT_SUPER_EXTENDED,
|
---|
| 317 | DWRITE_PANOSE_ASPECT_MONOSPACED
|
---|
| 318 | } DWRITE_PANOSE_ASPECT;
|
---|
| 319 |
|
---|
| 320 | typedef enum DWRITE_PANOSE_FILL
|
---|
| 321 | {
|
---|
| 322 | DWRITE_PANOSE_FILL_ANY,
|
---|
| 323 | DWRITE_PANOSE_FILL_NO_FIT,
|
---|
| 324 | DWRITE_PANOSE_FILL_STANDARD_SOLID_FILL,
|
---|
| 325 | DWRITE_PANOSE_FILL_NO_FILL,
|
---|
| 326 | DWRITE_PANOSE_FILL_PATTERNED_FILL,
|
---|
| 327 | DWRITE_PANOSE_FILL_COMPLEX_FILL,
|
---|
| 328 | DWRITE_PANOSE_FILL_SHAPED_FILL,
|
---|
| 329 | DWRITE_PANOSE_FILL_DRAWN_DISTRESSED
|
---|
| 330 | } DWRITE_PANOSE_FILL;
|
---|
| 331 |
|
---|
| 332 | typedef enum DWRITE_PANOSE_LINING
|
---|
| 333 | {
|
---|
| 334 | DWRITE_PANOSE_LINING_ANY,
|
---|
| 335 | DWRITE_PANOSE_LINING_NO_FIT,
|
---|
| 336 | DWRITE_PANOSE_LINING_NONE,
|
---|
| 337 | DWRITE_PANOSE_LINING_INLINE,
|
---|
| 338 | DWRITE_PANOSE_LINING_OUTLINE,
|
---|
| 339 | DWRITE_PANOSE_LINING_ENGRAVED,
|
---|
| 340 | DWRITE_PANOSE_LINING_SHADOW,
|
---|
| 341 | DWRITE_PANOSE_LINING_RELIEF,
|
---|
| 342 | DWRITE_PANOSE_LINING_BACKDROP
|
---|
| 343 | } DWRITE_PANOSE_LINING;
|
---|
| 344 |
|
---|
| 345 | typedef enum DWRITE_PANOSE_DECORATIVE_TOPOLOGY
|
---|
| 346 | {
|
---|
| 347 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_ANY,
|
---|
| 348 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_NO_FIT,
|
---|
| 349 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_STANDARD,
|
---|
| 350 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_SQUARE,
|
---|
| 351 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_MULTIPLE_SEGMENT,
|
---|
| 352 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_ART_DECO,
|
---|
| 353 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_UNEVEN_WEIGHTING,
|
---|
| 354 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_DIVERSE_ARMS,
|
---|
| 355 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_DIVERSE_FORMS,
|
---|
| 356 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_LOMBARDIC_FORMS,
|
---|
| 357 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_UPPER_CASE_IN_LOWER_CASE,
|
---|
| 358 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_IMPLIED_TOPOLOGY,
|
---|
| 359 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_HORSESHOE_E_AND_A,
|
---|
| 360 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_CURSIVE,
|
---|
| 361 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_BLACKLETTER,
|
---|
| 362 | DWRITE_PANOSE_DECORATIVE_TOPOLOGY_SWASH_VARIANCE
|
---|
| 363 | } DWRITE_PANOSE_DECORATIVE_TOPOLOGY;
|
---|
| 364 |
|
---|
| 365 | typedef enum DWRITE_PANOSE_CHARACTER_RANGES
|
---|
| 366 | {
|
---|
| 367 | DWRITE_PANOSE_CHARACTER_RANGES_ANY,
|
---|
| 368 | DWRITE_PANOSE_CHARACTER_RANGES_NO_FIT,
|
---|
| 369 | DWRITE_PANOSE_CHARACTER_RANGES_EXTENDED_COLLECTION,
|
---|
| 370 | DWRITE_PANOSE_CHARACTER_RANGES_LITERALS,
|
---|
| 371 | DWRITE_PANOSE_CHARACTER_RANGES_NO_LOWER_CASE,
|
---|
| 372 | DWRITE_PANOSE_CHARACTER_RANGES_SMALL_CAPS
|
---|
| 373 | } DWRITE_PANOSE_CHARACTER_RANGES;
|
---|
| 374 |
|
---|
| 375 | typedef enum DWRITE_PANOSE_SYMBOL_KIND
|
---|
| 376 | {
|
---|
| 377 | DWRITE_PANOSE_SYMBOL_KIND_ANY,
|
---|
| 378 | DWRITE_PANOSE_SYMBOL_KIND_NO_FIT,
|
---|
| 379 | DWRITE_PANOSE_SYMBOL_KIND_MONTAGES,
|
---|
| 380 | DWRITE_PANOSE_SYMBOL_KIND_PICTURES,
|
---|
| 381 | DWRITE_PANOSE_SYMBOL_KIND_SHAPES,
|
---|
| 382 | DWRITE_PANOSE_SYMBOL_KIND_SCIENTIFIC,
|
---|
| 383 | DWRITE_PANOSE_SYMBOL_KIND_MUSIC,
|
---|
| 384 | DWRITE_PANOSE_SYMBOL_KIND_EXPERT,
|
---|
| 385 | DWRITE_PANOSE_SYMBOL_KIND_PATTERNS,
|
---|
| 386 | DWRITE_PANOSE_SYMBOL_KIND_BOARDERS,
|
---|
| 387 | DWRITE_PANOSE_SYMBOL_KIND_ICONS,
|
---|
| 388 | DWRITE_PANOSE_SYMBOL_KIND_LOGOS,
|
---|
| 389 | DWRITE_PANOSE_SYMBOL_KIND_INDUSTRY_SPECIFIC
|
---|
| 390 | } DWRITE_PANOSE_SYMBOL_KIND;
|
---|
| 391 |
|
---|
| 392 | typedef enum DWRITE_PANOSE_SYMBOL_ASPECT_RATIO
|
---|
| 393 | {
|
---|
| 394 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_ANY,
|
---|
| 395 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NO_FIT,
|
---|
| 396 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NO_WIDTH,
|
---|
| 397 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_EXCEPTIONALLY_WIDE,
|
---|
| 398 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_SUPER_WIDE,
|
---|
| 399 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_VERY_WIDE,
|
---|
| 400 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_WIDE,
|
---|
| 401 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NORMAL,
|
---|
| 402 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_NARROW,
|
---|
| 403 | DWRITE_PANOSE_SYMBOL_ASPECT_RATIO_VERY_NARROW
|
---|
| 404 | } DWRITE_PANOSE_SYMBOL_ASPECT_RATIO;
|
---|
| 405 |
|
---|
| 406 | typedef enum DWRITE_OUTLINE_THRESHOLD
|
---|
| 407 | {
|
---|
| 408 | DWRITE_OUTLINE_THRESHOLD_ANTIALIASED,
|
---|
| 409 | DWRITE_OUTLINE_THRESHOLD_ALIASED
|
---|
| 410 | } DWRITE_OUTLINE_THRESHOLD;
|
---|
| 411 |
|
---|
| 412 | typedef enum DWRITE_BASELINE
|
---|
| 413 | {
|
---|
| 414 | DWRITE_BASELINE_DEFAULT,
|
---|
| 415 | DWRITE_BASELINE_ROMAN,
|
---|
| 416 | DWRITE_BASELINE_CENTRAL,
|
---|
| 417 | DWRITE_BASELINE_MATH,
|
---|
| 418 | DWRITE_BASELINE_HANGING,
|
---|
| 419 | DWRITE_BASELINE_IDEOGRAPHIC_BOTTOM,
|
---|
| 420 | DWRITE_BASELINE_IDEOGRAPHIC_TOP,
|
---|
| 421 | DWRITE_BASELINE_MINIMUM,
|
---|
| 422 | DWRITE_BASELINE_MAXIMUM
|
---|
| 423 | } DWRITE_BASELINE;
|
---|
| 424 |
|
---|
| 425 | typedef enum DWRITE_VERTICAL_GLYPH_ORIENTATION
|
---|
| 426 | {
|
---|
| 427 | DWRITE_VERTICAL_GLYPH_ORIENTATION_DEFAULT,
|
---|
| 428 | DWRITE_VERTICAL_GLYPH_ORIENTATION_STACKED
|
---|
| 429 | } DWRITE_VERTICAL_GLYPH_ORIENTATION;
|
---|
| 430 |
|
---|
| 431 | typedef enum DWRITE_GLYPH_ORIENTATION_ANGLE
|
---|
| 432 | {
|
---|
| 433 | DWRITE_GLYPH_ORIENTATION_ANGLE_0_DEGREES,
|
---|
| 434 | DWRITE_GLYPH_ORIENTATION_ANGLE_90_DEGREES,
|
---|
| 435 | DWRITE_GLYPH_ORIENTATION_ANGLE_180_DEGREES,
|
---|
| 436 | DWRITE_GLYPH_ORIENTATION_ANGLE_270_DEGREES
|
---|
| 437 | } DWRITE_GLYPH_ORIENTATION_ANGLE;
|
---|
| 438 |
|
---|
| 439 | typedef struct DWRITE_FONT_METRICS1
|
---|
| 440 | {
|
---|
| 441 | UINT16 designUnitsPerEm;
|
---|
| 442 | UINT16 ascent;
|
---|
| 443 | UINT16 descent;
|
---|
| 444 | INT16 lineGap;
|
---|
| 445 | UINT16 capHeight;
|
---|
| 446 | UINT16 xHeight;
|
---|
| 447 | INT16 underlinePosition;
|
---|
| 448 | UINT16 underlineThickness;
|
---|
| 449 | INT16 strikethroughPosition;
|
---|
| 450 | UINT16 strikethroughThickness;
|
---|
| 451 | INT16 glyphBoxLeft;
|
---|
| 452 | INT16 glyphBoxTop;
|
---|
| 453 | INT16 glyphBoxRight;
|
---|
| 454 | INT16 glyphBoxBottom;
|
---|
| 455 | INT16 subscriptPositionX;
|
---|
| 456 | INT16 subscriptPositionY;
|
---|
| 457 | INT16 subscriptSizeX;
|
---|
| 458 | INT16 subscriptSizeY;
|
---|
| 459 | INT16 superscriptPositionX;
|
---|
| 460 | INT16 superscriptPositionY;
|
---|
| 461 | INT16 superscriptSizeX;
|
---|
| 462 | INT16 superscriptSizeY;
|
---|
| 463 | BOOL hasTypographicMetrics;
|
---|
| 464 | } DWRITE_FONT_METRICS1;
|
---|
| 465 |
|
---|
| 466 | typedef struct DWRITE_CARET_METRICS
|
---|
| 467 | {
|
---|
| 468 | INT16 slopeRise;
|
---|
| 469 | INT16 slopeRun;
|
---|
| 470 | INT16 offset;
|
---|
| 471 | } DWRITE_CARET_METRICS;
|
---|
| 472 |
|
---|
| 473 | typedef union DWRITE_PANOSE
|
---|
| 474 | {
|
---|
| 475 | UINT8 values[10];
|
---|
| 476 | UINT8 familyKind;
|
---|
| 477 | struct
|
---|
| 478 | {
|
---|
| 479 | UINT8 familyKind;
|
---|
| 480 | UINT8 serifStyle;
|
---|
| 481 | UINT8 weight;
|
---|
| 482 | UINT8 proportion;
|
---|
| 483 | UINT8 contrast;
|
---|
| 484 | UINT8 strokeVariation;
|
---|
| 485 | UINT8 armStyle;
|
---|
| 486 | UINT8 letterform;
|
---|
| 487 | UINT8 midline;
|
---|
| 488 | UINT8 xHeight;
|
---|
| 489 | } text;
|
---|
| 490 | struct
|
---|
| 491 | {
|
---|
| 492 | UINT8 familyKind;
|
---|
| 493 | UINT8 toolKind;
|
---|
| 494 | UINT8 weight;
|
---|
| 495 | UINT8 spacing;
|
---|
| 496 | UINT8 aspectRatio;
|
---|
| 497 | UINT8 contrast;
|
---|
| 498 | UINT8 scriptTopology;
|
---|
| 499 | UINT8 scriptForm;
|
---|
| 500 | UINT8 finials;
|
---|
| 501 | UINT8 xAscent;
|
---|
| 502 | } script;
|
---|
| 503 | struct
|
---|
| 504 | {
|
---|
| 505 | UINT8 familyKind;
|
---|
| 506 | UINT8 decorativeClass;
|
---|
| 507 | UINT8 weight;
|
---|
| 508 | UINT8 aspect;
|
---|
| 509 | UINT8 contrast;
|
---|
| 510 | UINT8 serifVariant;
|
---|
| 511 | UINT8 fill;
|
---|
| 512 | UINT8 lining;
|
---|
| 513 | UINT8 decorativeTopology;
|
---|
| 514 | UINT8 characterRange;
|
---|
| 515 | } decorative;
|
---|
| 516 | struct
|
---|
| 517 | {
|
---|
| 518 | UINT8 familyKind;
|
---|
| 519 | UINT8 symbolKind;
|
---|
| 520 | UINT8 weight;
|
---|
| 521 | UINT8 spacing;
|
---|
| 522 | UINT8 aspectRatioAndContrast;
|
---|
| 523 | UINT8 aspectRatio94;
|
---|
| 524 | UINT8 aspectRatio119;
|
---|
| 525 | UINT8 aspectRatio157;
|
---|
| 526 | UINT8 aspectRatio163;
|
---|
| 527 | UINT8 aspectRatio211;
|
---|
| 528 | } symbol;
|
---|
| 529 | } DWRITE_PANOSE;
|
---|
| 530 |
|
---|
| 531 | typedef struct DWRITE_UNICODE_RANGE
|
---|
| 532 | {
|
---|
| 533 | UINT32 first;
|
---|
| 534 | UINT32 last;
|
---|
| 535 | } DWRITE_UNICODE_RANGE;
|
---|
| 536 |
|
---|
| 537 | typedef struct DWRITE_SCRIPT_PROPERTIES
|
---|
| 538 | {
|
---|
| 539 | UINT32 isoScriptCode;
|
---|
| 540 | UINT32 isoScriptNumber;
|
---|
| 541 | UINT32 clusterLookahead;
|
---|
| 542 | UINT32 justificationCharacter;
|
---|
| 543 | UINT32 restrictCaretToClusters : 1;
|
---|
| 544 | UINT32 usesWordDividers : 1;
|
---|
| 545 | UINT32 isDiscreteWriting : 1;
|
---|
| 546 | UINT32 isBlockWriting : 1;
|
---|
| 547 | UINT32 isDistributedWithinCluster : 1;
|
---|
| 548 | UINT32 isConnectedWriting : 1;
|
---|
| 549 | UINT32 isCursiveWriting : 1;
|
---|
| 550 | UINT32 reserved : 25;
|
---|
| 551 | } DWRITE_SCRIPT_PROPERTIES;
|
---|
| 552 |
|
---|
| 553 | typedef struct DWRITE_JUSTIFICATION_OPPORTUNITY
|
---|
| 554 | {
|
---|
| 555 | FLOAT expansionMinimum;
|
---|
| 556 | FLOAT expansionMaximum;
|
---|
| 557 | FLOAT compressionMaximum;
|
---|
| 558 | UINT32 expansionPriority : 8;
|
---|
| 559 | UINT32 compressionPriority : 8;
|
---|
| 560 | UINT32 allowResidualExpansion : 1;
|
---|
| 561 | UINT32 allowResidualCompression : 1;
|
---|
| 562 | UINT32 applyToLeadingEdge : 1;
|
---|
| 563 | UINT32 applyToTrailingEdge : 1;
|
---|
| 564 | UINT32 reserved : 12;
|
---|
| 565 | } DWRITE_JUSTIFICATION_OPPORTUNITY;
|
---|
| 566 |
|
---|
| 567 | interface IDWriteTextAnalysisSource1;
|
---|
| 568 | interface IDWriteTextAnalysisSink1;
|
---|
| 569 | interface IDWriteRenderingParams1;
|
---|
| 570 |
|
---|
| 571 | [
|
---|
| 572 | local,
|
---|
| 573 | object,
|
---|
| 574 | uuid(30572f99-dac6-41db-a16e-0486307e606a)
|
---|
| 575 | ]
|
---|
| 576 | interface IDWriteFactory1 : IDWriteFactory
|
---|
| 577 | {
|
---|
| 578 | HRESULT GetEudcFontCollection(IDWriteFontCollection **collection,
|
---|
| 579 | [defaultvalue(FALSE)] BOOL check_for_updates);
|
---|
| 580 | HRESULT CreateCustomRenderingParams(FLOAT gamma,
|
---|
| 581 | FLOAT enhcontrast,
|
---|
| 582 | FLOAT enhcontrast_grayscale,
|
---|
| 583 | FLOAT cleartype_level,
|
---|
| 584 | DWRITE_PIXEL_GEOMETRY geometry,
|
---|
| 585 | DWRITE_RENDERING_MODE mode,
|
---|
| 586 | IDWriteRenderingParams1** params);
|
---|
| 587 | }
|
---|
| 588 |
|
---|
| 589 | [
|
---|
| 590 | local,
|
---|
| 591 | object,
|
---|
| 592 | uuid(a71efdb4-9fdb-4838-ad90-cfc3be8c3daf)
|
---|
| 593 | ]
|
---|
| 594 | interface IDWriteFontFace1 : IDWriteFontFace
|
---|
| 595 | {
|
---|
| 596 | void GetMetrics(DWRITE_FONT_METRICS1 *metrics);
|
---|
| 597 | HRESULT GetGdiCompatibleMetrics(FLOAT em_size,
|
---|
| 598 | FLOAT pixels_per_dip,
|
---|
| 599 | const DWRITE_MATRIX *transform,
|
---|
| 600 | DWRITE_FONT_METRICS1 *metrics);
|
---|
| 601 | void GetCaretMetrics(DWRITE_CARET_METRICS *metrics);
|
---|
| 602 | HRESULT GetUnicodeRanges(UINT32 max_count,
|
---|
| 603 | DWRITE_UNICODE_RANGE *ranges,
|
---|
| 604 | UINT32 *count);
|
---|
| 605 | BOOL IsMonospacedFont();
|
---|
| 606 | HRESULT GetDesignGlyphAdvances(UINT32 glyph_count,
|
---|
| 607 | UINT16 const *indices,
|
---|
| 608 | INT32 *advances,
|
---|
| 609 | [defaultvalue(FALSE)] BOOL is_sideways);
|
---|
| 610 | HRESULT GetGdiCompatibleGlyphAdvances(FLOAT em_size,
|
---|
| 611 | FLOAT pixels_per_dip,
|
---|
| 612 | const DWRITE_MATRIX *transform,
|
---|
| 613 | BOOL use_gdi_natural,
|
---|
| 614 | BOOL is_sideways,
|
---|
| 615 | UINT32 glyph_count,
|
---|
| 616 | const UINT16 *indices,
|
---|
| 617 | INT32 *advances);
|
---|
| 618 |
|
---|
| 619 | HRESULT GetKerningPairAdjustments(UINT32 glyph_count,
|
---|
| 620 | const UINT16 *indices,
|
---|
| 621 | INT32 *adjustments);
|
---|
| 622 | BOOL HasKerningPairs();
|
---|
| 623 | HRESULT GetRecommendedRenderingMode(FLOAT font_emsize,
|
---|
| 624 | FLOAT dpiX,
|
---|
| 625 | FLOAT dpiY,
|
---|
| 626 | const DWRITE_MATRIX *transform,
|
---|
| 627 | BOOL is_sideways,
|
---|
| 628 | DWRITE_OUTLINE_THRESHOLD threshold,
|
---|
| 629 | DWRITE_MEASURING_MODE measuring_mode,
|
---|
| 630 | DWRITE_RENDERING_MODE *rendering_mode);
|
---|
| 631 |
|
---|
| 632 | HRESULT GetVerticalGlyphVariants(UINT32 glyph_count,
|
---|
| 633 | const UINT16 *nominal_indices,
|
---|
| 634 | UINT16 *vertical_indices);
|
---|
| 635 | BOOL HasVerticalGlyphVariants();
|
---|
| 636 | }
|
---|
| 637 |
|
---|
| 638 | [
|
---|
| 639 | local,
|
---|
| 640 | object,
|
---|
| 641 | uuid(acd16696-8c14-4f5d-877e-fe3fc1d32738)
|
---|
| 642 | ]
|
---|
| 643 | interface IDWriteFont1 : IDWriteFont
|
---|
| 644 | {
|
---|
| 645 | void GetMetrics(DWRITE_FONT_METRICS1 *metrics);
|
---|
| 646 | void GetPanose(DWRITE_PANOSE *panose);
|
---|
| 647 | HRESULT GetUnicodeRanges(UINT32 max_count,
|
---|
| 648 | DWRITE_UNICODE_RANGE *ranges,
|
---|
| 649 | UINT32 *count);
|
---|
| 650 | BOOL IsMonospacedFont();
|
---|
| 651 | }
|
---|
| 652 |
|
---|
| 653 | [
|
---|
| 654 | local,
|
---|
| 655 | object,
|
---|
| 656 | uuid(94413cf4-a6fc-4248-8b50-6674348fcad3)
|
---|
| 657 | ]
|
---|
| 658 | interface IDWriteRenderingParams1 : IDWriteRenderingParams
|
---|
| 659 | {
|
---|
| 660 | FLOAT GetGrayscaleEnhancedContrast();
|
---|
| 661 | }
|
---|
| 662 |
|
---|
| 663 | [
|
---|
| 664 | local,
|
---|
| 665 | object,
|
---|
| 666 | uuid(80dad800-e21f-4e83-96ce-bfcce500db7c)
|
---|
| 667 | ]
|
---|
| 668 | interface IDWriteTextAnalyzer1 : IDWriteTextAnalyzer
|
---|
| 669 | {
|
---|
| 670 | HRESULT ApplyCharacterSpacing(FLOAT leading_spacing,
|
---|
| 671 | FLOAT trailing_spacing,
|
---|
| 672 | FLOAT min_advance_width,
|
---|
| 673 | UINT32 len,
|
---|
| 674 | UINT32 glyph_count,
|
---|
| 675 | UINT16 const *clustermap,
|
---|
| 676 | FLOAT const *advances,
|
---|
| 677 | DWRITE_GLYPH_OFFSET const *offsets,
|
---|
| 678 | DWRITE_SHAPING_GLYPH_PROPERTIES const *props,
|
---|
| 679 | FLOAT *modified_advances,
|
---|
| 680 | DWRITE_GLYPH_OFFSET *modified_offsets);
|
---|
| 681 | HRESULT GetBaseline(IDWriteFontFace *face,
|
---|
| 682 | DWRITE_BASELINE baseline,
|
---|
| 683 | BOOL vertical,
|
---|
| 684 | BOOL is_simulation_allowed,
|
---|
| 685 | DWRITE_SCRIPT_ANALYSIS sa,
|
---|
| 686 | const WCHAR *localeName,
|
---|
| 687 | INT32 *baseline_coord,
|
---|
| 688 | BOOL *exists);
|
---|
| 689 |
|
---|
| 690 | HRESULT AnalyzeVerticalGlyphOrientation(
|
---|
| 691 | IDWriteTextAnalysisSource1* source,
|
---|
| 692 | UINT32 text_pos,
|
---|
| 693 | UINT32 len,
|
---|
| 694 | IDWriteTextAnalysisSink1 *sink);
|
---|
| 695 |
|
---|
| 696 | HRESULT GetGlyphOrientationTransform(
|
---|
| 697 | DWRITE_GLYPH_ORIENTATION_ANGLE angle,
|
---|
| 698 | BOOL is_sideways,
|
---|
| 699 | DWRITE_MATRIX *transform);
|
---|
| 700 |
|
---|
| 701 | HRESULT GetScriptProperties(DWRITE_SCRIPT_ANALYSIS sa, DWRITE_SCRIPT_PROPERTIES *props);
|
---|
| 702 |
|
---|
| 703 | HRESULT GetTextComplexity(const WCHAR *text,
|
---|
| 704 | UINT32 len,
|
---|
| 705 | IDWriteFontFace *face,
|
---|
| 706 | BOOL *is_simple,
|
---|
| 707 | UINT32 *len_read,
|
---|
| 708 | UINT16 *indices);
|
---|
| 709 | HRESULT GetJustificationOpportunities(
|
---|
| 710 | IDWriteFontFace *face,
|
---|
| 711 | FLOAT font_em_size,
|
---|
| 712 | DWRITE_SCRIPT_ANALYSIS sa,
|
---|
| 713 | UINT32 length,
|
---|
| 714 | UINT32 glyph_count,
|
---|
| 715 | const WCHAR *text,
|
---|
| 716 | const UINT16 *clustermap,
|
---|
| 717 | const DWRITE_SHAPING_GLYPH_PROPERTIES *prop,
|
---|
| 718 | DWRITE_JUSTIFICATION_OPPORTUNITY *jo);
|
---|
| 719 |
|
---|
| 720 | HRESULT JustifyGlyphAdvances(
|
---|
| 721 | FLOAT width,
|
---|
| 722 | UINT32 glyph_count,
|
---|
| 723 | const DWRITE_JUSTIFICATION_OPPORTUNITY *jo,
|
---|
| 724 | const FLOAT *advances,
|
---|
| 725 | const DWRITE_GLYPH_OFFSET *offsets,
|
---|
| 726 | FLOAT *justifiedadvances,
|
---|
| 727 | DWRITE_GLYPH_OFFSET *justifiedoffsets);
|
---|
| 728 |
|
---|
| 729 | HRESULT GetJustifiedGlyphs(
|
---|
| 730 | IDWriteFontFace *face,
|
---|
| 731 | FLOAT font_em_size,
|
---|
| 732 | DWRITE_SCRIPT_ANALYSIS sa,
|
---|
| 733 | UINT32 length,
|
---|
| 734 | UINT32 glyph_count,
|
---|
| 735 | UINT32 max_glyphcount,
|
---|
| 736 | const UINT16 *clustermap,
|
---|
| 737 | const UINT16 *indices,
|
---|
| 738 | const FLOAT *advances,
|
---|
| 739 | const FLOAT *justifiedadvances,
|
---|
| 740 | const DWRITE_GLYPH_OFFSET *justifiedoffsets,
|
---|
| 741 | const DWRITE_SHAPING_GLYPH_PROPERTIES *prop,
|
---|
| 742 | UINT32 *actual_count,
|
---|
| 743 | UINT16 *modified_clustermap,
|
---|
| 744 | UINT16 *modified_indices,
|
---|
| 745 | FLOAT *modified_advances,
|
---|
| 746 | DWRITE_GLYPH_OFFSET *modified_offsets);
|
---|
| 747 | }
|
---|
| 748 |
|
---|
| 749 | [
|
---|
| 750 | local,
|
---|
| 751 | object,
|
---|
| 752 | uuid(639cfad8-0fb4-4b21-a58a-067920120009)
|
---|
| 753 | ]
|
---|
| 754 | interface IDWriteTextAnalysisSource1 : IDWriteTextAnalysisSource
|
---|
| 755 | {
|
---|
| 756 | HRESULT GetVerticalGlyphOrientation(
|
---|
| 757 | UINT32 pos,
|
---|
| 758 | UINT32 *length,
|
---|
| 759 | DWRITE_VERTICAL_GLYPH_ORIENTATION *orientation,
|
---|
| 760 | UINT8 *bidi_level);
|
---|
| 761 | }
|
---|
| 762 |
|
---|
| 763 | [
|
---|
| 764 | local,
|
---|
| 765 | object,
|
---|
| 766 | uuid(b0d941a0-85e7-4d8b-9fd3-5ced9934482a)
|
---|
| 767 | ]
|
---|
| 768 | interface IDWriteTextAnalysisSink1 : IDWriteTextAnalysisSink
|
---|
| 769 | {
|
---|
| 770 | HRESULT SetGlyphOrientation(
|
---|
| 771 | UINT32 pos,
|
---|
| 772 | UINT32 length,
|
---|
| 773 | DWRITE_GLYPH_ORIENTATION_ANGLE angle,
|
---|
| 774 | UINT8 adjusted_bidilevel,
|
---|
| 775 | BOOL is_sideways,
|
---|
| 776 | BOOL is_rtl);
|
---|
| 777 | }
|
---|
| 778 |
|
---|
| 779 | [
|
---|
| 780 | local,
|
---|
| 781 | object,
|
---|
| 782 | uuid(9064d822-80a7-465c-a986-df65f78b8feb)
|
---|
| 783 | ]
|
---|
| 784 | interface IDWriteTextLayout1 : IDWriteTextLayout
|
---|
| 785 | {
|
---|
| 786 | HRESULT SetPairKerning(
|
---|
| 787 | BOOL is_pairkerning_enabled,
|
---|
| 788 | DWRITE_TEXT_RANGE range);
|
---|
| 789 |
|
---|
| 790 | HRESULT GetPairKerning(
|
---|
| 791 | UINT32 position,
|
---|
| 792 | BOOL *is_pairkerning_enabled,
|
---|
| 793 | DWRITE_TEXT_RANGE *range);
|
---|
| 794 |
|
---|
| 795 | HRESULT SetCharacterSpacing(
|
---|
| 796 | FLOAT leading_spacing,
|
---|
| 797 | FLOAT trailing_spacing,
|
---|
| 798 | FLOAT minimum_advance_width,
|
---|
| 799 | DWRITE_TEXT_RANGE range);
|
---|
| 800 |
|
---|
| 801 | HRESULT GetCharacterSpacing(
|
---|
| 802 | UINT32 position,
|
---|
| 803 | FLOAT* leading_spacing,
|
---|
| 804 | FLOAT* trailing_spacing,
|
---|
| 805 | FLOAT* minimum_advance_width,
|
---|
| 806 | [defaultvalue(NULL)] DWRITE_TEXT_RANGE *range);
|
---|
| 807 | }
|
---|
| 808 |
|
---|
| 809 | typedef enum DWRITE_TEXT_ANTIALIAS_MODE
|
---|
| 810 | {
|
---|
| 811 | DWRITE_TEXT_ANTIALIAS_MODE_CLEARTYPE,
|
---|
| 812 | DWRITE_TEXT_ANTIALIAS_MODE_GRAYSCALE
|
---|
| 813 | } DWRITE_TEXT_ANTIALIAS_MODE;
|
---|
| 814 |
|
---|
| 815 | [
|
---|
| 816 | local,
|
---|
| 817 | object,
|
---|
| 818 | uuid(791e8298-3ef3-4230-9880-c9bdecc42064)
|
---|
| 819 | ]
|
---|
| 820 | interface IDWriteBitmapRenderTarget1 : IDWriteBitmapRenderTarget
|
---|
| 821 | {
|
---|
| 822 | DWRITE_TEXT_ANTIALIAS_MODE GetTextAntialiasMode();
|
---|
| 823 | HRESULT SetTextAntialiasMode(DWRITE_TEXT_ANTIALIAS_MODE mode);
|
---|
| 824 | }
|
---|