Commit Graph

161 Commits

Author SHA1 Message Date
Nikolay Sivov 7fc7f2f074 dwrite: Use current layout fallback when creating run font faces.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-15 13:41:23 +09:00
Nikolay Sivov 4d512f9e4e dwrite: Keep factory reference for each layout.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-15 13:41:16 +09:00
Nikolay Sivov af206b1b2d dwrite: Implement stub for system IDWriteFontFallback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-15 13:41:13 +09:00
Nikolay Sivov f26b4a3575 dwrite: Fetch all glyphs at once instead of locking/unlocking for every glyph.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 23:26:21 +09:00
Nikolay Sivov 8a4db9fd90 dwrite: Implement color glyph run decomposition.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 20:13:33 +09:00
Nikolay Sivov e94264e6bd dwrite: Improve SetScriptAnalysis()/SetBidiLevel() tracing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-02 14:39:17 +09:00
Nikolay Sivov feca77fb0c dwrite: Set isNewline cluster flag.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:17 +09:00
Nikolay Sivov ff8f129af6 dwrite: Use callback freetype API to implement GetGlyphRunOutline().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-19 20:48:07 +09:00
Nikolay Sivov 170e31a8b2 dwrite: Added support for transform in glyph run analysis.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 00:33:27 +09:00
Nikolay Sivov 08a3e4f29f dwrite: Respect transform when calculating glyph advances for run analysis.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-20 00:30:37 +09:00
Nikolay Sivov a22d5ed948 dwrite: Force reported English family/face names to resolved values. 2015-09-01 19:27:07 +09:00
Nikolay Sivov 26fbbdc48b dwrite: Implement grayscale rendering mode. 2015-08-27 21:43:46 +09:00
Nikolay Sivov 2c4ba8a008 dwrite: Cleanup rendering interface with freetype. 2015-08-27 17:10:20 +09:00
Nikolay Sivov b9f05239d2 dwrite: Return advances using freetype cache system. 2015-08-24 18:41:34 +09:00
Nikolay Sivov 2ac68e91a4 dwrite: Improve face name extraction. 2015-08-13 15:04:14 +09:00
Nikolay Sivov fb013d7acd dwrite: Fix family name extraction order. 2015-08-13 15:04:12 +09:00
Nikolay Sivov 93d24de308 dwrite: Added IDWriteColorGlyphRunEnumerator stub. 2015-08-07 14:18:01 +09:00
Nikolay Sivov fd35a1af6a dwrite: Implement GetPaletteEntries(). 2015-08-07 14:17:58 +09:00
Nikolay Sivov 5734c2ed98 dwrite: Implement GetPaletteEntryCount(). 2015-08-07 14:17:53 +09:00
Nikolay Sivov 20571725f3 dwrite: Implement GetColorPaletteCount(). 2015-08-07 14:17:51 +09:00
Nikolay Sivov 14e4996f6c dwrite: Implement CreateGlyphRunAnalysis() from IDWriteFactory2. 2015-08-07 14:17:48 +09:00
Nikolay Sivov 8133684816 dwrite: Use right charmap for symbol encoding. 2015-08-07 00:05:06 +09:00
Nikolay Sivov ab7c65ae43 dwrite: Implement IsSymbolFont(). 2015-08-07 00:05:04 +09:00
Nikolay Sivov 720c430594 dwrite: Advances and offsets are optional for IDWriteGlyphRunAnalysis. 2015-08-04 12:21:58 +02:00
Nikolay Sivov e08b77b0a9 dwrite: Implement CreateAlphaTexture(). 2015-07-31 12:07:26 +02:00
Nikolay Sivov 6d1f47902b dwrite: Translate rendered bitmap bounds to given origin. 2015-07-31 12:07:23 +02:00
Nikolay Sivov b50416aa5f dwrite: Implement GetAlphaTextureBounds(). 2015-07-29 21:44:01 +02:00
Nikolay Sivov fb35557db9 dwrite: Store run info for IDWriteGlyphRunAnalysis instance. 2015-07-29 20:57:02 +02:00
Nikolay Sivov e877cfbcfa dwrite: Implement GetRecommendedRenderingMode(). 2015-07-28 13:41:45 +02:00
Nikolay Sivov e94d977006 dwrite: Partially implement GetGdiCompatibleGlyphAdvances(). 2015-07-15 23:19:13 +09:00
Nikolay Sivov 849bb99b76 dwrite: Implement GetGdiCompatibleMetrics(). 2015-07-08 19:12:12 +09:00
Nikolay Sivov 50bf5fca34 dwrite: Implement GetPanose(). 2015-07-07 16:52:21 +09:00
Nikolay Sivov 6fd4f963f6 dwrite: Initial implementation of Draw() for trimming sign. 2015-06-15 15:29:03 +09:00
Nikolay Sivov 6304a0f50a dwrite: Check format directions in CreateEllipsisTrimmingSign(). 2015-06-15 15:29:03 +09:00
Nikolay Sivov f4790714fe dwrite: Added IDWriteGlyphRunAnalysis stub. 2015-05-19 22:57:43 +09:00
Nikolay Sivov 7e480d3c6d dwrite: Implement GetKerningPairAdjustments(). 2015-03-16 21:42:40 +09:00
Nikolay Sivov 23c2ef2fcd dwrite: Implement HasKerningPairs(). 2015-03-16 21:42:40 +09:00
Nikolay Sivov 6ff14a9213 dwrite: Use FreeType CMAP cache system instead of parsing tables manually. 2015-02-23 15:26:02 +09:00
Nikolay Sivov 5a318c3e8b dwrite: Set facename field of a LOGFONT in ConvertFontFaceToLOGFONT(). 2015-02-19 17:50:56 +09:00
Nikolay Sivov c949ff5d24 dwrite: Implement GetGlyphCount(). 2015-02-05 22:19:06 +09:00
Nikolay Sivov 8f9bca9103 dwrite: Implement GetCaretMetrics(). 2015-02-03 20:53:07 +09:00
Nikolay Sivov 6b0623fb2f dwrite: Initial implementation of GetTypographicFeatures(). 2015-01-26 12:06:18 +01:00
Nikolay Sivov 05fd95e5e4 dwrite: Store additional properties for gdi-compatible layouts. 2015-01-09 11:50:20 +01:00
Francois Gouget 3b87dbe062 dwrite: Make free_glyph_outline() static. 2015-01-05 20:17:22 +01:00
Nikolay Sivov 00ea0b72b6 dwrite: Added stub EUDC font collection. 2014-12-17 13:05:18 +01:00
Nikolay Sivov bbe6655280 dwrite: Support outlines with oblique simulation. 2014-12-16 16:31:30 +01:00
Nikolay Sivov 17a24679b4 dwrite: Initial GetGlyphRunOutline() implementation. 2014-12-15 13:41:16 +01:00
Nikolay Sivov 44bb2ba295 dwrite: Block creation of unsupported face types. 2014-12-11 16:41:14 +01:00
Nikolay Sivov de741ffe52 dwrite: Update to IDWriteFactory2. 2014-12-09 18:57:06 +01:00
Nikolay Sivov 730b2f4c66 dwrite: Implement IsMonospacedFont(). 2014-12-09 18:57:01 +01:00
Nikolay Sivov 9978bfb6d7 dwrite: Partially implement GetDesignGlyphMetrics(). 2014-12-08 16:48:45 +01:00
Nikolay Sivov 82e66b4b47 dwrite: Fix lineGap metric using 'hhea' table values. 2014-11-28 17:04:45 +01:00
Nikolay Sivov a77b9ed0c7 dwrite: Load freetype on module attach, create one FT_Face per fontface. 2014-11-21 18:10:51 +09:00
Nikolay Sivov 53fb0cc711 dwrite: Implement compatible reference key for local files and remaining loader methods. 2014-11-17 19:30:17 +09:00
Nikolay Sivov 53209e7017 dwrite: Remove OpenType language id from cache. 2014-11-10 19:25:41 +09:00
Nikolay Sivov a8ad62aa51 dwrite: Implement ConvertFontToLOGFONT(). 2014-11-07 20:57:04 +09:00
Nikolay Sivov 6ce8cc149e dwrite: Implement GetMetrics() for DWRITE_FONT_METRICS1. 2014-11-07 20:57:02 +09:00
Nikolay Sivov 19869997d4 dwrite: Added a separate helper to fill font metrics structure. 2014-11-06 15:01:25 +09:00
Nikolay Sivov cae5d19338 dwrite: Implement system font collection as any other font collection. 2014-10-30 12:00:12 +09:00
Nikolay Sivov fbf2557cd7 dwrite: Implement custom font collections. 2014-10-24 19:58:06 +09:00
Nikolay Sivov 35e9b6d85d dwrite: Pass raw NAME table pointer to table reading code. 2014-10-24 19:58:05 +09:00
Nikolay Sivov 42882f7f75 dwrite: Cache fontface instances at factory level. 2014-10-24 19:58:05 +09:00
Nikolay Sivov b4dc4e257c dwrite: Remove unused parameter. 2014-10-22 21:02:05 +09:00
Nikolay Sivov 04a237fe18 dwrite: Implement GetInformationalStrings(). 2014-10-21 18:49:14 +09:00
Nikolay Sivov a088f7d381 dwrite: Implement CreateFontFromLOGFONT() on top of system font collection. 2014-10-20 21:32:47 +09:00
Nikolay Sivov ea11f85a94 dwrite: Store factory pointer gdiinterop was created from. 2014-10-20 21:32:44 +09:00
Nikolay Sivov d02d35a7b1 dwrite: Create IDWriteFontFace2 instance for IDWriteFont. 2014-10-17 14:40:48 +09:00
Nikolay Sivov 571307edc2 dwrite: Hide BiDi helpers. 2014-10-17 14:40:31 +09:00
Nikolay Sivov 4c0ec6700c dwrite: Implement GetUnicodeRanges(). 2014-10-16 13:00:16 +09:00
Nikolay Sivov d3cdec0e66 dwrite: Use better integer types for cmap helpers. 2014-10-16 13:00:12 +09:00
Nikolay Sivov d8a66e634c dwrite: Refuse to create IDWriteFontFace with invalid collection index. 2014-10-15 21:31:51 +09:00
Nikolay Sivov 1e65a32e26 dwrite: Pass stream pointer to OpenType parsing code. 2014-10-08 13:13:38 +02:00
Nikolay Sivov 3b1e8bf824 dwrite: Use public macro to define OpenType tags. 2014-10-07 20:22:02 +02:00
Nikolay Sivov c9bb307c35 dwrite: Store OpenType language tag in shaping cache. 2014-10-07 20:22:01 +02:00
Nikolay Sivov cb8556c171 dwrite: Introduce cache to be used by shaping engines. 2014-10-07 20:22:00 +02:00
Nikolay Sivov 3704072911 dwrite: Mirror characters in case of RTL direction. 2014-10-06 17:36:26 +02:00
Nikolay Sivov 1843972e0e dwrite: Initial implementation of GetGlyphs(). 2014-10-06 17:36:01 +02:00
Nikolay Sivov 7c035744f6 dwrite: Implement CreateNumberSubstitution(). 2014-10-02 22:55:02 +02:00
Nikolay Sivov fdd8454ef8 dwrite: Implement AnalyzeBidi(). 2014-10-01 12:01:05 +02:00
Nikolay Sivov c67f930a9f dwrite: Added IDWriteTypography implementation. 2014-09-19 10:49:45 +02:00
Aric Stewart 5d3eaf57ca dwrite: Shift to using localized string for family name. 2014-09-05 13:39:53 +02:00
Aric Stewart 1d6147ec9a dwrite: Shift get_font_properties to opentype. 2014-09-05 13:39:20 +02:00
Aric Stewart 2ec9fbb205 dwrite: Implement GetGlyphIndices from the CMAP table. 2014-09-03 17:32:13 +02:00
Aric Stewart f49c740907 dwrite: Add the system font collection to the dwrite factory object. 2014-09-02 15:07:44 +02:00
Aric Stewart bfaacf80da dwrite: Initialize realloc'ed memory to zero. 2014-08-29 20:36:43 +02:00
Aric Stewart 95466a1c2f dwrite: Beginning implementation of IDWriteLocalFontFileLoader. 2014-08-26 22:18:41 +02:00
Aric Stewart bc77ee6818 dwrite: Implement TryGetFontTable and ReleaseFontTable. 2014-08-20 19:57:10 +02:00
Aric Stewart 26977d4a4b dwrite: Initial implementation of CreateFontFace. 2014-08-20 19:52:03 +02:00
Aric Stewart 366c40813c dwrite: Beginning implementation of IDWriteFontFile_Analyze. 2014-08-20 19:51:48 +02:00
Aric Stewart bb9721bd29 dwrite: Initial implementation of CreateCustomFontFileReference. 2014-08-20 19:51:04 +02:00
Nikolay Sivov 289043f4de dwrite: Store maximum width/height for text layout. 2014-08-04 16:18:20 +02:00
Nikolay Sivov 1c23bf04c7 dwrite: Added some layout tests, simplify debug output for text ranges. 2014-07-30 11:27:14 -05:00
Nikolay Sivov 27e86cfc36 dwrite: Added partial implementation for CreateEllipsisTrimmingSign(). 2014-04-08 09:25:50 +02:00
Nikolay Sivov 5e4d5ebde7 dwrite: Implement ConvertFontFaceToLOGFONT(). 2014-01-06 17:05:31 +01:00
André Hentschel 7e2cac2602 dwrite: Fix possible NULL pointer access in heap_strdup*. 2012-11-19 16:36:29 +01:00
Nikolay Sivov 45c7798c36 dwrite: Added a stub for IDWriteTextAnalyzer. 2012-10-29 14:43:22 +01:00
Nikolay Sivov 2250f0e533 dwrite: Derive some format data for text layout from specified text format. 2012-10-24 14:20:20 +02:00
Nikolay Sivov a30faec10e dwrite: Implement IDWriteTextFormat::GetFontCollection(). 2012-10-23 13:20:49 +02:00
Nikolay Sivov a291a7adf8 dwrite: Keep a single instance of system font collection. 2012-10-23 13:20:44 +02:00
Nikolay Sivov f0f1735495 dwrite: Add all installed font families to system font collection. 2012-10-22 12:21:28 +02:00