Nikolay Sivov
|
2e79405eec
|
dwrite: Simplify glyph properties helpers by using current glyph buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-29 20:05:30 +02:00 |
Nikolay Sivov
|
9479f87b8a
|
dwrite: Add stub handler for ligature substitution.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-28 20:18:32 +02:00 |
Nikolay Sivov
|
2e4d71c721
|
dwrite: Update glyph component count on multiple substitution.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-28 20:18:32 +02:00 |
Nikolay Sivov
|
9f31bf0e1c
|
dwrite: Implement multiple substitution (GSUB lookup 2).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-28 20:18:32 +02:00 |
Nikolay Sivov
|
684dd31cc2
|
dwrite: Use GPOS handlers for subtables, not whole lookups.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-28 20:18:31 +02:00 |
Nikolay Sivov
|
a66668c129
|
dwrite: Keep text properties zero initialized.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-28 20:18:31 +02:00 |
Nikolay Sivov
|
cd8cdc7893
|
dwrite: Mark some of default ignorables as ZWS.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-27 10:22:56 +02:00 |
Nikolay Sivov
|
47272be6aa
|
dwrite: Use cluster map to apply use feature ranges.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-27 10:20:58 +02:00 |
Nikolay Sivov
|
d5058fb304
|
dwrite: Implement alternate substitution (GSUB lookup 3).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-27 10:20:54 +02:00 |
Nikolay Sivov
|
3abcf68af9
|
dwrite: Handle extension substitution (GSUB lookup 7).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-27 10:20:47 +02:00 |
Nikolay Sivov
|
3cf308d1b8
|
dwrite: Reference currently used layout table in context.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-27 10:20:41 +02:00 |
Nikolay Sivov
|
c9814f9098
|
dwrite: Use global cursor to glyph array for substitutions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-26 10:41:24 +02:00 |
Nikolay Sivov
|
2b5500ce12
|
dwrite: Prefetch all lookup entry fields when collecting them.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-26 10:41:22 +02:00 |
Nikolay Sivov
|
76b1f3fd72
|
dwrite: Use temporary buffers for GetGlyphs().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-26 10:41:20 +02:00 |
Nikolay Sivov
|
5625a8e52d
|
dwrite: Only enable single substitution lookups for chained substitution.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-26 10:41:18 +02:00 |
Nikolay Sivov
|
e5c6a7beb3
|
dwrite: Update glyph properties on single substitution.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-26 10:41:15 +02:00 |
Nikolay Sivov
|
db3eb6fc0b
|
dwrite: Simplify single substitution helper.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-25 20:22:37 +02:00 |
Nikolay Sivov
|
7f427f258d
|
dwrite: Use prefetched glyph class to match with lookup mask.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-25 20:22:35 +02:00 |
Nikolay Sivov
|
b1f215dd78
|
dwrite: Set glyph class properties when applying GPOS.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-25 20:22:33 +02:00 |
Nikolay Sivov
|
a99e466547
|
dwrite: Set glyph class for all initial glyphs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-25 20:22:31 +02:00 |
Nikolay Sivov
|
4490f8a274
|
dwrite: Fix array indexing when merging features.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-25 20:22:29 +02:00 |
Nikolay Sivov
|
da55f010df
|
dwrite: Use mirrored character only if font supports it.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-22 14:32:02 +02:00 |
Nikolay Sivov
|
bb91e877b3
|
dwrite: Silence warning for name entries with platform 3/encoding 10.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-22 14:32:02 +02:00 |
Nikolay Sivov
|
8962f82210
|
dwrite: Set per-glyph feature mask.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-22 14:32:02 +02:00 |
Nikolay Sivov
|
b8625c7f03
|
dwrite: Keep track of shaping stage feature applies to.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-22 14:32:02 +02:00 |
Nikolay Sivov
|
7780d7856b
|
dwrite: Propagate feature mask to lookups collected from it.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-22 14:32:02 +02:00 |
Nikolay Sivov
|
c8f409ed93
|
dwrite: Keep user features values.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-21 20:25:50 +02:00 |
Nikolay Sivov
|
bd0abb5968
|
dwrite: Append enabled user features that apply to whole text.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-21 20:25:50 +02:00 |
Nikolay Sivov
|
b9f580c990
|
dwrite: Enable 'vert' feature.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-21 20:25:50 +02:00 |
Nikolay Sivov
|
093d6966be
|
dwrite: Set feature indices before collecting lookups.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-21 20:25:50 +02:00 |
Nikolay Sivov
|
2aaa6d1af9
|
dwrite: Remove feature duplicates before applying them.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-21 20:25:50 +02:00 |
Gijs Vermeulen
|
23543f2005
|
dwrite: Set ret on unimplemented lookup in opentype_layout_apply_gsub_lookup.
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-11 21:24:58 +02:00 |
Nikolay Sivov
|
1f90b33daf
|
dwrite: Enable global directional substitution features.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-06 19:02:03 +02:00 |
Nikolay Sivov
|
7e02e2e993
|
dwrite: Update DWRITE_SHAPING_TEXT_PROPERTIES definition.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-06 19:02:01 +02:00 |
Nikolay Sivov
|
eadd97cbce
|
dwrite: Use feature tags directly instead of SDK symbols.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-05 20:53:02 +02:00 |
Nikolay Sivov
|
33ec962e27
|
dwrite: Enable common positional features for all scripts.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-05 20:53:02 +02:00 |
Nikolay Sivov
|
075f5b73fe
|
dwrite: Partially implement chaining contextual substitution (GSUB lookup 6).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-04 12:39:09 +02:00 |
Nikolay Sivov
|
a6be957919
|
dwrite: Implement single substitution lookup (GSUB lookup 1).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-04 12:39:09 +02:00 |
Nikolay Sivov
|
5eb742687d
|
dwrite: Add a helper to collect gsub/gpos lookups.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-04 12:39:09 +02:00 |
Nikolay Sivov
|
bd6a500ab0
|
dwrite: Add helper functions to collect default GSUB features.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-04 12:39:09 +02:00 |
Nikolay Sivov
|
7208bc40dc
|
dwrite: Initialize GSUB offsets in shaping cache.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-04 12:39:09 +02:00 |
Nikolay Sivov
|
b8f1aed6d9
|
dwrite: Add separate structure for top level gsub/gpos offsets.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-05-04 12:39:09 +02:00 |
Nikolay Sivov
|
73a6470d86
|
dwrite: Use unsigned types for single-bit fields.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-04-24 11:31:42 +02:00 |
Francois Gouget
|
e24bd0b9d3
|
dwrite: Include config.h for HAVE___BUILTIN_POPCOUNT.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-04-21 21:30:48 +02:00 |
Alexandre Julliard
|
51903ba30e
|
dwrite: Use standard dlopen() instead of the libwine wrappers.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-04-06 21:21:41 +02:00 |
Alexandre Julliard
|
b83af7c763
|
unicode: Update data tables to Unicode 13.0.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-03-13 13:23:11 +01:00 |
Nikolay Sivov
|
52a55f3e04
|
dwrite: Simplify LB22 rule according to Unicode 13.0 algorithm.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-03-13 09:41:26 +01:00 |
Nikolay Sivov
|
c18d2d1c0d
|
dwrite/tests: Use wide string literals for some tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-02-16 20:46:01 +01:00 |
Nikolay Sivov
|
6ee109c5aa
|
dwrite: Add partial implementation for IDWriteFontFaceReference1::CreateFontFace().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-02-11 22:39:59 +01:00 |
Alexandre Julliard
|
44ce5d9283
|
unicode: Support fetching a zip containining the data files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
|
2020-02-09 09:48:42 +01:00 |