Nikolay Sivov
430145e431
dwrite: Check for allocation failures of glyph buffers.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-11 18:30:50 +02:00
Alexandre Julliard
4da6dc6384
dwrite: Avoid wcsncpy().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 21:33:15 +02:00
Sven Baars
7ed4810a0e
dwrite: Fix some memory leaks (Coverity).
...
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Nikolay Sivov
defb7d9c76
dwrite/tests: Add glyph origin tests for sideways mode.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-15 17:41:40 +02:00
Nikolay Sivov
fcd8508993
dwrite: Use wide-char literals.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-31 22:16:25 +02:00
Nikolay Sivov
db516804cc
dwrite: Build with msvcrt.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
f4d84acf26
dwrite/layout: Reuse glyph origins calculation helper to get run boxes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
69cfb81b29
dwrite: Explicitly cast to signed type for abs().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
8bcdac04a8
dwrite: Move outline dumping helpers.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
aab6ebb734
dwrite: Use ntdll exports for freetype mutex.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
3bb778a637
dwrite: Pass simulation mask when getting a glyph outline.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
ca08a5e722
dwrite: Introduce interface to font backend.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
d77110a40c
dwrite: Use FT_MulDiv() in freetype integration.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
f3d777ba7d
dwrite: Introduce callback interface to initialize freetype face objects.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
ff983fe75f
dwrite/tests: Add some tests for CreateFontCollectionFromFontSet().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
183394cd86
dwrite: Use D3DCOLORVALUE equivalent to avoid nameless unions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-23 20:58:37 +01:00
Jacek Caban
b39b9eea39
include: Don't default to WINE_NO_NAMELESS_EXTENSION for Wine build.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 21:48:38 +01:00
Nikolay Sivov
ae3422c615
dwrite: Return complete outline data from freetype integration code.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 18:52:57 +01:00
Francois Gouget
9d5e17654d
dwrite: Fix the case of FreeType in a comment.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 20:36:43 +01:00
Nikolay Sivov
0ed0fd05c3
dwrite: Request one glyph outline at a time in GetGlyphRunOutline().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 10:51:54 +01:00
Nikolay Sivov
6f9e1e078e
dwrite/gdiinterop: Pass target transform when getting recommended rendering mode.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 10:51:52 +01:00
Nikolay Sivov
a56112c330
dwrite: Implement IDWriteFontSet1::CreateFontResource().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 10:51:50 +01:00
Nikolay Sivov
6fea399a84
dwrite/tests: Extend tests for synthesized axis values.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 10:51:47 +01:00
Nikolay Sivov
d871f04bbd
dwrite: Test simulations mask bitwise for consistency.
...
This has no functional impact. Internal function is only called with
one bit set at a time, but there is no reason to make it more confusing.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 10:51:44 +01:00
Nikolay Sivov
fc1f50c515
dwrite/tests: Test font set properties that should be always available.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-12 17:28:27 +01:00
Nikolay Sivov
2bc442aa1b
dwrite: Add a helper to return font list item.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-12 17:28:27 +01:00
Nikolay Sivov
8010ede257
dwrite: Enable 'meta' table properties for the font set.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-12 17:28:27 +01:00
Nikolay Sivov
3fb3b87210
dwrite/tests: Reduce number of skipped test messages to one per test.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-12 17:28:26 +01:00
Nikolay Sivov
9c5f2853ec
dwrite/tests: Remove tests failing on Win10 20H2.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-12 17:28:26 +01:00
Nikolay Sivov
e729b26026
dwrite/tests: Add a test for matching in system font set.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Nikolay Sivov
318ebc89dc
dwrite: Implement GetSystemFontSet().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Nikolay Sivov
1f8d7489b7
dwrite: Use properly capitalized weight names for constructed face names.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Nikolay Sivov
118b080a08
dwrite: Use same name for refcount field across different object structures.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Nikolay Sivov
24f085badd
dwrite: Make font data reference assignment more compact.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Nikolay Sivov
b6ffd6cb78
dwrite: Initial implementation of fontset filtering.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:09:29 +01:00
Nikolay Sivov
0ce34328bd
dwrite: Partially implement GetPropertyValues().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:09:27 +01:00
Nikolay Sivov
dc37782f66
dwrite: Make font set entries refcounted.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:09:24 +01:00
Nikolay Sivov
98608f2099
dwrite: Lowercase locale names in localized strings pairs.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:09:21 +01:00
Nikolay Sivov
2d8f32be7d
dwrite: Look for English name strings in mac platform records.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:09:18 +01:00
Nikolay Sivov
9ea3450301
dwrite: Remove unused type definitions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 12:01:54 +01:00
Nikolay Sivov
968a9e6b0c
dwrite: Read legacy kerning table directly.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 12:01:52 +01:00
Nikolay Sivov
f8e3cba746
dwrite: Check for vertical variants only when asked.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 12:01:50 +01:00
Nikolay Sivov
a8e29f0ed7
dwrite/tests: Handle missing English font names.
...
Same as 0e4172a0c2
but for another test file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 12:01:47 +01:00
Nikolay Sivov
7b540f8bc8
dwrite: Limit to exactly one font file per fontface.
...
Multiple files only existed in initial API version, formats using multiple
files were never supported, and newer API often operates on a single file
instance.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 12:01:43 +01:00
Nikolay Sivov
df9e20fadc
dwrite: Remove duplicated trace call.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 12:01:41 +01:00
Giovanni Mascellani
23d6ac27db
dwrite/tests: Remove overzealous test.
...
While this test happens to always be true on Windows, this is just a
property of the fallback fonts installed on the system, not a property
of the code. Since we cannot control the fonts installed on users'
computers, it makes no sense to do this test.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-05 17:55:44 +01:00
Nikolay Sivov
3049c94753
dwrite: Implement GetFontSet() for families.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-04 21:43:26 +01:00
Nikolay Sivov
f40c2a19e2
dwrite: Return font set for matched font list.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-04 21:43:26 +01:00
Nikolay Sivov
c8ac1909bc
dwrite: Silence GetPropertyValues() fixme.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-04 21:43:26 +01:00
Nikolay Sivov
a6bdbc7146
dwrite: Implement IDWriteFontSet::GetFontFaceReference().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-04 21:43:26 +01:00