2 * Copyright 2012 Nikolay Sivov for CodeWeavers
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.
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.
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
19 import
"dxgiformat.idl";
29 long left
, top
, right
, bottom
;
32 typedef unsigned int UINT32
;
35 typedef enum DWRITE_MEASURING_MODE
37 DWRITE_MEASURING_MODE_NATURAL
,
38 DWRITE_MEASURING_MODE_GDI_CLASSIC
,
39 DWRITE_MEASURING_MODE_GDI_NATURAL
40 } DWRITE_MEASURING_MODE
;
42 typedef enum DWRITE_GLYPH_IMAGE_FORMATS
44 DWRITE_GLYPH_IMAGE_FORMATS_NONE
= 0,
45 DWRITE_GLYPH_IMAGE_FORMATS_TRUETYPE
= 1 << 0,
46 DWRITE_GLYPH_IMAGE_FORMATS_CFF
= 1 << 1,
47 DWRITE_GLYPH_IMAGE_FORMATS_COLR
= 1 << 2,
48 DWRITE_GLYPH_IMAGE_FORMATS_SVG
= 1 << 3,
49 DWRITE_GLYPH_IMAGE_FORMATS_PNG
= 1 << 4,
50 DWRITE_GLYPH_IMAGE_FORMATS_JPEG
= 1 << 5,
51 DWRITE_GLYPH_IMAGE_FORMATS_TIFF
= 1 << 6,
52 DWRITE_GLYPH_IMAGE_FORMATS_PREMULTIPLIED_B8G8R8A8
= 1 << 7
53 } DWRITE_GLYPH_IMAGE_FORMATS
;
55 typedef enum D2D1_ALPHA_MODE
57 D2D1_ALPHA_MODE_UNKNOWN
= 0,
58 D2D1_ALPHA_MODE_PREMULTIPLIED
= 1,
59 D2D1_ALPHA_MODE_STRAIGHT
= 2,
60 D2D1_ALPHA_MODE_IGNORE
= 3,
61 D2D1_ALPHA_MODE_FORCE_DWORD
= 0xffffffff
64 typedef struct D2D1_PIXEL_FORMAT
67 D2D1_ALPHA_MODE alphaMode
;
70 typedef struct D2D_POINT_2F
74 } D2D_POINT_2F
, D2D1_POINT_2F
;
76 typedef POINT D2D_POINT_2L
, D2D1_POINT_2L
;
78 typedef struct D2D_VECTOR_2F
84 typedef struct D2D_VECTOR_3F
91 typedef struct D2D_VECTOR_4F
99 typedef RECT D2D_RECT_L
, D2D1_RECT_L
;
101 typedef struct D2D_SIZE_U
105 } D2D_SIZE_U
, D2D1_SIZE_U
;
107 typedef struct D2D_MATRIX_3X2_F
132 typedef struct D2D_MATRIX_4X3_F
148 typedef struct D2D_MATRIX_4X4_F
154 float _11
, _12
, _13
, _14
;
155 float _21
, _22
, _23
, _24
;
156 float _31
, _32
, _33
, _34
;
157 float _41
, _42
, _43
, _44
;
164 typedef struct D2D_MATRIX_5X4_F
170 float _11
, _12
, _13
, _14
;
171 float _21
, _22
, _23
, _24
;
172 float _31
, _32
, _33
, _34
;
173 float _41
, _42
, _43
, _44
;
174 float _51
, _52
, _53
, _54
;