Commit Graph

856 Commits

Author SHA1 Message Date
Nikolay Sivov 7e0d10250c dwrite: Multiply run analysis transform by dpi scale factor.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 15:24:39 +02:00
Nikolay Sivov 470ed3c559 dwrite: Avoid possible out-of-bounds cluster metrics access.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45535
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 12:07:04 +02:00
Michael Stefaniuc 962b31c80b include: Add a generic available ARRAY_SIZE().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 10:39:15 +02:00
Nikolay Sivov d4eeb162bb tools: Update to Unicode 11.0.0.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-03 12:01:40 +02:00
Michael Stefaniuc 7b5668a6e7 include: Make ARRAY_SIZE() available in wine/test.h.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-25 12:09:17 +02:00
Nikolay Sivov abe71945ef dwrite/tests: Skip some tests on variable fonts.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-23 09:22:32 +02:00
Nikolay Sivov 3493792da3 dwrite/tests: Remove a test failing after recent update.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-23 09:22:28 +02:00
Nikolay Sivov e5966d7475 dwrite: Properly truncate face name to LOGFONT size.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 21:58:02 +02:00
Nikolay Sivov 63bdcf97a7 dwrite/tests: Use ARRAY_SIZE() macro in tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 21:58:02 +02:00
Nikolay Sivov 8b9ba16e9a dwrite: Support IDWriteTextFormat2 for layout.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 00:05:36 +02:00
Nikolay Sivov f3908ad676 dwrite: Support IDWriteFontList1 for font families.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 00:05:26 +02:00
Piotr Caban 71b3ba57f7 dwrite: Fix features dumping in analyzer_dump_user_features.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Nikolay Sivov<nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 11:03:28 +02:00
André Hentschel 383fbf04cf dwrite/tests: Use fabs for floating point numbers (clang).
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-28 10:19:23 +02:00
Nikolay Sivov d31651b705 dwrite: Use ARRAY_SIZE() macro.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:24:48 +01:00
Michael Stefaniuc 062948f57e dwrite/tests: Use the global HeapAlloc() wrappers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-31 09:46:26 +01:00
Michael Stefaniuc b01b1383d9 dwrite: Use the global HeapAlloc() wrappers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 10:00:03 +01:00
Nikolay Sivov f9e0b6a1e4 dwrite/tests: Add missing return value test (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-08 22:47:24 +01:00
Lucian Poston d00f9bce6c dwrite: Stub SetIncrementalTabStop with S_OK.
Signed-off-by: Lucian Poston <lucian.poston@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-27 16:15:40 +01:00
Nikolay Sivov e5276c766b dwrite: Set lfItalic style to get more compatible results for gdiinterop.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 12:14:03 +01:00
Nikolay Sivov f577fc8fa2 dwrite/tests: Some tests for font set properties.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-20 08:36:11 +02:00
Nikolay Sivov aa9fc63514 dwrite: Reuse streams when initializing font data and creating faces.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-18 15:37:48 +02:00
Huw Davies 625293289c dwrite: Avoid using RegQueryInfoKey().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 15:26:40 +02:00
Nikolay Sivov e3a29a6c1d dwrite/tests: Fix object instance leak (Valgrind).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 15:26:32 +02:00
Andrey Gusev de4e3dda47 dwrite/tests: Fix a typo in ok() message.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-13 15:09:07 +02:00
Nikolay Sivov c4d9176196 dwrite: Recognize CFF2 table as CFF variant.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 15:24:40 +02:00
Nikolay Sivov d8e42057e0 dwrite: Recognize CBLC/CBDT image formats.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 15:24:40 +02:00
Nikolay Sivov c6a1fdcc0d dwrite: Read whole table directory with a single call when looking for table entry.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 15:24:40 +02:00
Nikolay Sivov 9bf92459d3 dwrite: Implement AnalyzeContainerType().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 15:24:40 +02:00
Nikolay Sivov fb8226f639 dwrite: Implement IDWriteInMemoryFontFileLoader.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-06 21:48:49 +02:00
Nikolay Sivov 4236c47023 dwrite/tests: Some more tests for in-memory loader.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-05 19:33:08 +02:00
Huw Davies cd746afd0d dwrite: Use the correct array index.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-02 13:23:34 +02:00
Nikolay Sivov 3fbc00b593 dwrite: Consider inline objects overhang metrics for overall layout overhang metrics.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-02 10:14:13 +02:00
Jacek Caban 850b67f28f dwrite: Properly free mappings in fontfallbackbuilder_Release.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-02 10:14:13 +02:00
Nikolay Sivov 43c16a25eb dwrite: Use single per-process local file loader.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-25 22:21:41 +02:00
Nikolay Sivov 8dc81ed2a4 dwrite: Implement AddMapping().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:13:17 +02:00
Nikolay Sivov e1a41faf76 dwrite: Add warning message for unsupported interfaces.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:13:10 +02:00
Nikolay Sivov f2090cb415 dwrite/tests: Fix fallback builder test skip.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:13:06 +02:00
Nikolay Sivov c3252c3774 dwrite: Added custom IDWriteFontFallback stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-21 14:04:42 +02:00
Nikolay Sivov 3acbf50068 dwrite: Added IDWriteFontFallbackBuilder stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-20 20:04:27 +02:00
Nikolay Sivov 39dbf09b3f dwrite/tests: Added a helper to initialize test text source.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-14 11:22:33 +02:00
Nikolay Sivov 096df5f5ba dwrite: Support DWRITE_TRIMMING_GRANULARITY_WORD mode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-11 18:43:28 +02:00
Francois Gouget 2f86c81f7f dwrite: Factory_release_cached_fontface() is unused so remove it.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 16:23:14 +02:00
Nikolay Sivov 899c622934 dwrite: Fix 8bpp bitmap copy.
Spotted by Matteo.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-07 09:07:03 +02:00
Nikolay Sivov c4917bdbdf dwrite: Use 8bpp bitmaps in grayscale mode.
Problem analyzed by Kimmo Myllyvirta.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 17:47:34 +02:00
Nikolay Sivov 0a63390841 dwrite: Validate buffer size passed to CreateAlphaTexture() against analysis texture type.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 17:47:32 +02:00
Nikolay Sivov 55aedbffa6 dwrite: Handle 8bpp gray bitmaps for bitmap target.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 17:47:31 +02:00
Nikolay Sivov 0ea60ffecd dwrite: Fix proportional spacing method.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-28 14:57:10 +02:00
Nikolay Sivov 1df4e64bbf dwrite: Improve empty contours handling in GetGlyphRunOutline().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 08:06:55 +02:00
Nikolay Sivov 1b16af0062 dwrite: Remove unused call.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 08:06:42 +02:00
Nikolay Sivov cc49c40f05 dwrite: Set leading text alignment for default trimming sign.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 17:46:29 +02:00