[PATCH] include: Update to latest dwrite revision
Nikolay Sivov
nsivov at codeweavers.com
Sun Oct 9 15:35:59 CDT 2016
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
include/d2dbasetypes.h | 12 ------
include/dcommon.h | 14 +++++++
include/dwrite_3.idl | 101 +++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 115 insertions(+), 12 deletions(-)
diff --git a/include/d2dbasetypes.h b/include/d2dbasetypes.h
index e5acff2..b231081 100644
--- a/include/d2dbasetypes.h
+++ b/include/d2dbasetypes.h
@@ -29,12 +29,6 @@ typedef struct D3DCOLORVALUE
typedef D3DCOLORVALUE D2D_COLOR_F;
-typedef struct D2D_POINT_2F
-{
- FLOAT x;
- FLOAT y;
-} D2D_POINT_2F;
-
typedef struct D2D_MATRIX_3X2_F
{
float _11;
@@ -59,12 +53,6 @@ typedef struct D2D_SIZE_F
float height;
} D2D_SIZE_F;
-typedef struct D2D_SIZE_U
-{
- UINT32 width;
- UINT32 height;
-} D2D_SIZE_U;
-
typedef struct D2D_POINT_2U
{
UINT32 x;
diff --git a/include/dcommon.h b/include/dcommon.h
index 56445a3..a516e8a 100644
--- a/include/dcommon.h
+++ b/include/dcommon.h
@@ -43,4 +43,18 @@ typedef struct D2D1_PIXEL_FORMAT
D2D1_ALPHA_MODE alphaMode;
} D2D1_PIXEL_FORMAT;
+typedef struct D2D_POINT_2F
+{
+ FLOAT x;
+ FLOAT y;
+} D2D_POINT_2F, D2D1_POINT_2F;
+
+typedef POINT D2D_POINT_2L, D2D1_POINT_2L;
+
+typedef struct D2D_SIZE_U
+{
+ UINT32 width;
+ UINT32 height;
+} D2D_SIZE_U, D2D1_SIZE_U;
+
#endif /* __WINE_DCOMMON_H */
diff --git a/include/dwrite_3.idl b/include/dwrite_3.idl
index 9e7a4c6..afe7e84 100644
--- a/include/dwrite_3.idl
+++ b/include/dwrite_3.idl
@@ -397,3 +397,104 @@ interface IDWriteFactory3 : IDWriteFactory2
HRESULT GetFontDownloadQueue(IDWriteFontDownloadQueue **queue);
}
+
+typedef enum DWRITE_GLYPH_IMAGE_FORMATS
+{
+ DWRITE_GLYPH_IMAGE_FORMATS_NONE = 0,
+ DWRITE_GLYPH_IMAGE_FORMATS_TRUETYPE = 1 << 0,
+ DWRITE_GLYPH_IMAGE_FORMATS_CFF = 1 << 1,
+ DWRITE_GLYPH_IMAGE_FORMATS_COLR = 1 << 2,
+ DWRITE_GLYPH_IMAGE_FORMATS_SVG = 1 << 3,
+ DWRITE_GLYPH_IMAGE_FORMATS_PNG = 1 << 4,
+ DWRITE_GLYPH_IMAGE_FORMATS_JPEG = 1 << 5,
+ DWRITE_GLYPH_IMAGE_FORMATS_TIFF = 1 << 6,
+ DWRITE_GLYPH_IMAGE_FORMATS_PREMULTIPLIED_B8G8R8A8 = 1 << 7
+} DWRITE_GLYPH_IMAGE_FORMATS;
+
+typedef struct DWRITE_GLYPH_IMAGE_DATA
+{
+ void const *imageData;
+ UINT32 imageDataSize;
+ UINT32 uniqueDataId;
+ UINT32 pixelsPerEm;
+ D2D1_SIZE_U pixelSize;
+ D2D1_POINT_2L horizontalLeftOrigin;
+ D2D1_POINT_2L horizontalRightOrigin;
+ D2D1_POINT_2L verticalTopOrigin;
+ D2D1_POINT_2L verticalBottomOrigin;
+} DWRITE_GLYPH_IMAGE_DATA;
+
+[
+ local,
+ object,
+ uuid(27f2a904-4eb8-441d-9678-0563f53e3e2f)
+]
+interface IDWriteFontFace4 : IDWriteFontFace3
+{
+ HRESULT GetGlyphImageFormats_(
+ UINT16 glyph,
+ UINT32 ppem_first,
+ UINT32 ppem_last,
+ DWRITE_GLYPH_IMAGE_FORMATS *formats);
+ DWRITE_GLYPH_IMAGE_FORMATS GetGlyphImageFormats();
+ HRESULT GetGlyphImageData(
+ UINT16 glyph,
+ UINT32 ppem,
+ DWRITE_GLYPH_IMAGE_FORMATS format,
+ DWRITE_GLYPH_IMAGE_DATA *data,
+ void **context);
+ void ReleaseGlyphImageData(void *context);
+}
+
+typedef struct DWRITE_COLOR_GLYPH_RUN1
+{
+ DWRITE_GLYPH_RUN glyphRun;
+ DWRITE_GLYPH_RUN_DESCRIPTION *glyphRunDescription;
+ FLOAT baselineOriginX;
+ FLOAT baselineOriginY;
+ DWRITE_COLOR_F runColor;
+ UINT16 paletteIndex;
+ DWRITE_GLYPH_IMAGE_FORMATS glyphImageFormat;
+ DWRITE_MEASURING_MODE measuringMode;
+} DWRITE_COLOR_GLYPH_RUN1;
+
+[
+ local,
+ object,
+ uuid(7c5f86da-c7a1-4f05-b8e1-55a179fe5a35)
+]
+interface IDWriteColorGlyphRunEnumerator1 : IDWriteColorGlyphRunEnumerator
+{
+ HRESULT GetCurrentRun(
+ DWRITE_COLOR_GLYPH_RUN1 const **run);
+}
+
+[
+ local,
+ object,
+ uuid(4b0b5bd3-0797-4549-8ac5-fe915cc53856)
+]
+interface IDWriteFactory4 : IDWriteFactory3
+{
+ HRESULT TranslateColorGlyphRun(
+ D2D1_POINT_2F baseline_origin,
+ DWRITE_GLYPH_RUN const *run,
+ DWRITE_GLYPH_RUN_DESCRIPTION const *run_desc,
+ DWRITE_GLYPH_IMAGE_FORMATS desired_formats,
+ DWRITE_MEASURING_MODE measuring_mode,
+ DWRITE_MATRIX const *transform,
+ UINT32 palette,
+ IDWriteColorGlyphRunEnumerator1 **layers);
+
+ HRESULT ComputeGlyphOrigins_(
+ DWRITE_GLYPH_RUN const *run,
+ D2D1_POINT_2F baseline_origin,
+ D2D1_POINT_2F *origins);
+
+ HRESULT ComputeGlyphOrigins(
+ DWRITE_GLYPH_RUN const *run,
+ DWRITE_MEASURING_MODE measuring_mode,
+ D2D1_POINT_2F baseline_origin,
+ DWRITE_MATRIX const *transform,
+ D2D1_POINT_2F *origins);
+}
--
2.9.3
More information about the wine-patches
mailing list