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
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
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
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
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
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
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
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
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
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
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
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
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
Nikolay Sivov
91ab9018d2
dwrite: Implement font set object stub.
...
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
eac1ca616d
dwrite: Implement set builder methods that don't specify font properties.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-03 21:54:44 +01:00
Nikolay Sivov
76f421b090
dwrite: Use correct glyph origins during rendering.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-22 19:59:16 +01:00
Nikolay Sivov
4914f51c09
dwrite: Change remaining traces to have consistent format.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 15:41:02 +01:00
Nikolay Sivov
d905919cfa
dwrite: Fix vtable variables types.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 17:10:37 +01:00
Nikolay Sivov
dc9f12170c
dwrite: Add font set builder stub.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Nikolay Sivov
612652bb9c
dwrite: Zero initialize font data structure.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Nikolay Sivov
5197fd7c91
dwrite: Zero-initialize run analysis object structure.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 22:11:07 +01:00
Nikolay Sivov
24508594ba
dwrite: Use consistent trace format for rendering object.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-02 19:08:04 +01:00
Nikolay Sivov
62b6b9a952
dwrite: Use consistent trace format for font data access objects.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-02 19:08:04 +01:00
Nikolay Sivov
feefc6a908
dwrite/font: Reimplement HasVerticalGlyphVariants() flag using general shaping logic.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:30:06 +01:00
Nikolay Sivov
5f219eccd5
dwrite/font: Use consistent traces for the font object.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 13:29:57 +01:00
Nikolay Sivov
ab94abb14f
dwrite: Add partial implementation for IDWriteFontFace5::Equals().
...
Issue with missing method spotted by Brendan Shanks.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 19:07:55 +02:00
Nikolay Sivov
c440d87464
dwrite: Implement another GetFontFamily() variant.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-11 15:51:19 +02:00
Nikolay Sivov
8cddbdd785
dwrite: Fix CreateInMemoryFontFileLoader() prototype.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-10 22:38:49 +02:00
Nikolay Sivov
f51d0487a7
dwrite: Silence HasVariations() fixme.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-10 22:38:49 +02:00
Nikolay Sivov
03fe6c64bc
dwrite: Implement GetVerticalGlyphVariants().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-10 22:38:49 +02:00
Nikolay Sivov
f48ecfc83e
dwrite: Return ranges for selected cmap.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-10 22:38:49 +02:00
Nikolay Sivov
a767467d2e
dwrite: Get rid of cmap cache.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 21:23:33 +02:00
Nikolay Sivov
1cfa1c6930
dwrite: Remove unused field from fontface data structure.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 21:23:33 +02:00
Nikolay Sivov
745452ee94
dwrite: Do not require fontface object for HasCharacter().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 21:23:33 +02:00