Akihiro Sagawa
68f9fb556d
gdi32: Fix synthetic bold outline text metrics.
...
Without this fix, synthetic tmAveCharWidth value unintentionally affects
SCALE_X calculation.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 16:55:08 +01:00
Akihiro Sagawa
c17a8f32c4
gdi32: Fix ABC width calculations when using vertical font.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-08 10:20:24 +01:00
Akihiro Sagawa
2a402a427a
gdi32: Fix ABC width calculations when applying transformations internally.
...
This fixes a regression introduced by f6bc356860
.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-08 10:20:16 +01:00
Huw Davies
ccc871dcd0
gdi32: Set otmMacLineGap from the line gap in the hhea table.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-19 19:49:02 +01:00
Alex Henrie
d819609255
gdi32: Scale outline font metrics as signed integers.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-19 19:49:01 +01:00
Fabian Maurer
6f790606c0
gdi32: In AddFaceToList allow fonts with long names and add tests.
...
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-28 22:00:39 +01:00
Nikolay Sivov
d82321006d
gdi32: Pick first charmap if none was selected using preferred encoding.
...
FreeType 2.8.1 has similar logic removed from WinFNT module,
that always pre-selected first charmap.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 11:20:08 +02:00
Nikolay Sivov
2bd5f6e057
gdi32: Remove runtime check for FT_Set_Charmap().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 11:20:01 +02:00
Huw Davies
2dfb09893c
gdi32: Try to read the dpi from the user key first.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-27 22:22:47 +02:00
Piotr Caban
3471b59ae0
gdi32: Only delete unmodified font keys in delete_external_font_keys.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-26 10:59:40 +02:00
Piotr Caban
93def703cf
gdi32: Allocate smaller buffer in delete_external_font_keys helper.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-26 10:59:40 +02:00
Nikolay Sivov
215e8b10a8
gdi32: Trace charmap encoding as 4 bytes tag.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-06 19:00:20 +02:00
Nikolay Sivov
533d800d42
gdi32: Cleanup otmfsType bit mask from reserved bits.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 10:00:02 +01:00
Ken Thomases
d684831f4a
gdi32: Get the font URL directly from the descriptor on macOS 10.6 and later.
...
It's significantly faster than the roundabout way that's necessary for
10.5, which is especially important for users with many fonts installed.
Issue identified by Andrew Eikum.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-29 19:14:22 +01:00
Nikolay Sivov
fcd0f6b074
gdi32: Append "TrueType" suffix to registry key names.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-15 18:28:41 +09:00
Nikolay Sivov
492b10ef6c
gdi32: Simplify font table name tracing.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-15 18:28:38 +09:00
Nikolay Sivov
7e50116b52
gdi32: Support special 'ttcf' tag in GetFontData().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-12 20:38:20 +09:00
Nikolay Sivov
cd68821780
gdi32: Keep font tables tags defined in one place.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-12 20:38:02 +09:00
Huw Davies
0f2a776a59
gdi32: Convert a few uses of get_dc_ptr() to get_physdev_dc().
...
In these cases we have the PHYSDEV meaning we own the DC already.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 23:43:35 +09:00
Jactry Zeng
5bf4345824
gdi32: Load system fonts on Android.
...
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 17:08:30 +09:00
Alexandre Julliard
1eac54ef7d
gdi32: Take into account the fontdir directory specified at build time.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-17 19:44:01 +09:00
Nikolay Sivov
4b05cac391
gdi32: Use a macro instead of accessing FT_Face flags directly.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 19:20:50 +09:00
Alexandre Julliard
0bbeaae678
make_unicode: Mark most data tables as hidden.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-25 00:25:01 +09:00
Nikolay Sivov
932838faa3
gdi32: Only REG_SZ and REG_MULTI_SZ types make sense for font replacement, ignore the rest.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:06:54 +09:00
Nikolay Sivov
c98f40e227
gdi32: Fix otmfsSelection to have bold style set in case of bold simulation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 13:40:28 +09:00
Nikolay Sivov
6389f41135
gdi32: Fix otmfsSelection to have italic style set in case of oblique simulation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 23:27:13 +09:00
Akihiro Sagawa
a8d426e93a
gdi32: Implement synthesizing bold glyphs for bitmap fonts.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:54 +09:00
Akihiro Sagawa
ba79c19d09
gdi32: Return an boolean value whether synthesizing bold glyph is success.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:49 +09:00
Akihiro Sagawa
34e7361790
gdi32: Fix the advance width in synthetic bold glyphs with scaling.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:43 +09:00
Akihiro Sagawa
f0831ecd2f
gdi32: Add a helper function to calculate the glyph advance metric.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:39 +09:00
Akihiro Sagawa
79ab7456ed
gdi32: Fixup the internal ntmFlags for bitmap fonts.
...
The value is used not for APIs, but for our fake-bold implementation.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 11:48:47 +01:00
Qian Hong
e50cd3b06b
gdi32: Initialize system font link registry.
...
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 23:10:06 +09:00
Dmitry Timoshkov
d774442e8d
gdi32: Fix heap corruption.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:34 +09:00
Nikolay Sivov
819d36786e
gdi32: Improve structure layout of data returned by GetFontRealizationInfo().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 13:00:32 +09:00
Nikolay Sivov
6f7dfe2cea
gdi32: Implement GetFontFileInfo().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2015-10-05 22:27:11 +09:00
Nikolay Sivov
7f4c158a39
gdi32: Return font ids from GetFontRealizationInfo().
2015-10-01 23:00:24 +09:00
Ken Thomases
a05cdaa1b8
gdi32: Antialias fake bold or italic fonts regardless of GASP table.
...
If the client requests a bold typeface of a font which doesn't actually provide
a bold typeface, Wine fakes it using FT_Outline_Embolden(). Likewise, it fakes
italic by apply a shear transform.
These techniques work passably when antialiasing is in effect. However, when
antialiasing is disabled at small sizes by the font's GASP table, the results
are horrible. The glyphs have many spurs or appear furry.
On the theory that fonts disable antialiasing via the GASP table at small sizes
because hinting should produce pixel-perfect results and that that rationale is
voided by the application of procedural bolding or italicizing, we ignore the
GASP table and always antialias for fake bold or italic fonts.
There is a new registry setting to disable this and revert to the previous
behavior:
[HKEY_CURRENT_USER\Software\Wine\Fonts]
"AntialiasFakeBoldOrItalic"="n"
Signed-off-by: Ken Thomases <ken@codeweavers.com>
2015-10-01 16:31:54 +09:00
Nikolay Sivov
af5884ffe5
gdi32/freetype: Handle fonts with broken usWinDescent values.
2015-10-01 16:29:40 +09:00
Nikolay Sivov
7889b17425
gdi32: Added GetFontRealizationInfo() export.
2015-09-01 19:28:16 +09:00
Huw Davies
76c321d5e6
gdi32: Add tests for GetFontRealizationInfo, GetFontFileInfo and GetFontFileData.
2015-08-17 14:52:15 +09:00
Daniel Lehman
22c51eeabf
gdi32: Check for NULL pointer in GetOutlineTextMetrics.
2015-07-28 13:41:46 +02:00
Dmitry Timoshkov
50b6b376cb
gdi32: EnumFontFamilies should enumerate substituted fonts only when directly asked for.
2015-07-17 19:29:10 +09:00
Jactry Zeng
c015447d07
gdi32: Add multiple font replacement support.
2015-07-17 16:40:29 +09:00
Jactry Zeng
cb59350ed9
gdi32: Add a helper to map font replacement.
2015-07-17 16:40:29 +09:00
Nikolay Sivov
d5c9a8a57a
gdi32: Clarify offsets and sizes in vdmx table lookup code.
2015-06-30 14:36:41 +09:00
Nikolay Sivov
7ebdd58556
gdi32: Add a separate helper to load FT_Short values (Coverity).
2015-06-29 19:07:45 +09:00
Nikolay Sivov
885394bb0a
gdi32/freetype: Properly handle loading of FT_Long-sized types (Valgrind).
2015-06-22 19:16:48 +09:00
Ken Thomases
e9c36154e3
gdi32: Change an ERR to a WARN for fonts with too-long names.
...
The situation is commonplace on Macs and benign.
2015-02-16 19:18:39 +09:00
Aric Stewart
ecbda5686d
gdi32: Do not install fonts with a family name that is too long.
2015-01-20 16:34:22 +01:00
Nikolay Sivov
88202b3d9b
gdi32: Remove some useless returns.
2014-12-15 13:40:27 +01:00
Nikolay Sivov
0c507a1768
gdi32: Clarify read length values used with get_font_data().
2014-11-26 17:35:14 +01:00
André Hentschel
d9d1725295
gdi32: Remove unused string (Clang).
2014-11-20 22:32:04 +09:00
Michael Stefaniuc
b5a405af2f
gdi32: Remove a basically unused variable (PVS-Studio).
2014-11-03 16:34:52 +09:00
Matteo Bruni
112a7f7f97
gdi32: Don't overflow the buffer in GetGlyphOutline.
2014-10-09 18:24:47 +02:00
Huw Davies
c66f0019ff
gdi32: In a Hebrew locale the last char of a symbol font is reported as 0xf896 rather than 0xf0ff.
2014-05-07 18:57:35 +02:00
Alex Henrie
d2dce849b5
gdi32: Simplify family_matches and face_matches.
2014-05-07 10:22:08 +02:00
Akihiro Sagawa
04e8b00ab0
gdi32: Improve the font enumeration order for complex script locales.
2014-03-12 20:27:43 +01:00
Akihiro Sagawa
e06d2dbc67
gdi32: Fix regression due to sub-pixel shift calculations fixes.
2014-01-27 14:13:28 +01:00
Akihiro Sagawa
f6475ace5f
gdi32: Improve vertical writing metrics.
2014-01-13 17:37:38 +01:00
Akihiro Sagawa
f6bc356860
gdi32: Fix ABC metrics for rotated font.
2014-01-13 17:37:35 +01:00
Akihiro Sagawa
e9188970a7
gdi32: Fix sub-pixel shift calculations for vertical writing.
2014-01-13 17:37:33 +01:00
Akihiro Sagawa
d33602564b
gdi32: Use the vertAdvance value for cellIncX if vertical metrics are available.
2014-01-13 17:37:32 +01:00
Akihiro Sagawa
ebccff8225
gdi32: Relax vertical face requirements.
2014-01-09 18:07:15 +01:00
Frédéric Delanoy
91f2435469
Assorted spelling fixes.
2014-01-09 17:39:59 +01:00
Akihiro Sagawa
a88a121059
gdi32: Use ANSI character code as glyph index for bitmap fonts.
2013-12-11 18:16:59 +01:00
Akihiro Sagawa
882398b0a9
gdi32: Return ANSI character code as glyph index for bitmap fonts.
2013-12-11 16:30:22 +01:00
Aric Stewart
ff0717d004
gdi32: Use vertical orientation table to determine rotation.
2013-12-04 21:18:55 +01:00
Alexandre Julliard
67f9b6e3c5
configure: Update FreeType configure checks for the changed headers location.
2013-11-30 11:55:26 +01:00
Akihiro Sagawa
99ceb599bb
gdi32: Synthesize bold glyphs for outline fonts.
2013-10-21 20:23:55 +02:00
Akihiro Sagawa
cab2cacb8e
gdi32: Adjust fake bold outline font metrics.
2013-10-21 20:23:55 +02:00
Alexandre Julliard
67d452d8ac
gdi32: Always initialize the em_scale variable.
2013-10-21 17:08:54 +02:00
Alexandre Julliard
6fb92b79fa
gdi32: Remove freetype compatibility cruft that doesn't compile.
2013-10-07 13:32:06 +02:00
Akihiro Sagawa
88acc9c899
gdi32: Don't modify output glyph metrics unless the function succeeds.
2013-10-03 20:06:51 +02:00
Akihiro Sagawa
042b39a82b
gdi32: Fix the B spacing value of empty glyph.
2013-10-02 20:17:03 +02:00
Akihiro Sagawa
db86409db6
gdi32: Return fake BBox when requesting empty glyph metrics.
2013-10-01 19:26:17 +02:00
Akihiro Sagawa
e2bce62a6d
gdi32: Return GDI_ERROR when requested empty glyph bitmaps.
2013-09-26 19:56:57 +02:00
Aric Stewart
5aa1f6b7a5
Unicode Private Use Area is also rotated by tategaki.
2013-09-09 22:09:58 +02:00
Huw Davies
2f20032dd3
gdi32: Skip vdmx records with charset == 0.
2013-08-28 16:14:40 +02:00
Huw Davies
d089ca67e3
gdi32: Reset ppem to zero if we fail to find a matching height.
2013-08-28 16:14:39 +02:00
Huw Davies
bb5aa8862c
Revert "gdi32: Do not use VDMX for mapping of negative font heights, based on a test case.".
...
This reverts commit 7d3cb53cf1
.
2013-08-28 16:14:39 +02:00
Alexandre Julliard
87c2581c54
gdi32: Use Microsoft and Unicode encodings in priority for font names.
2013-08-16 19:11:33 +02:00
Akihiro Sagawa
7444c1d6b0
gdi32: Adjust bitmap font height when it has an external leading.
...
This fixes wine test failures in Japanese locale.
2013-07-31 22:26:56 +02:00
Akihiro Sagawa
dc241a8371
gdi32: Add a helper function to get bitmap size.
2013-07-31 22:26:56 +02:00
Akihiro Sagawa
01280cff91
Revert "gdi32: Use the default character when the glyph is missing.".
...
This reverts commit 15aa8daf64
.
It breaks the default character rendering in some bitmap fonts, e.g. Fixedsys.
2013-07-31 22:26:56 +02:00
Alexandre Julliard
60d29d1d0d
gdi32: Don't load linked fonts only to look up control characters.
2013-07-01 19:51:17 +02:00
Alexandre Julliard
e531306f7a
gdi32: Put vertical font families after their horizontal counterpart in the font list.
2013-06-20 22:14:35 +02:00
Alexandre Julliard
102b2785f4
gdi32: Add support for loading name strings in Apple Unicode format.
2013-06-20 22:14:35 +02:00
Alexandre Julliard
3d0f044883
gdi32: Add support for loading name strings in Macintosh format.
2013-06-20 22:14:34 +02:00
Alexandre Julliard
b05b637c91
gdi32: Improve font name localization by not requiring a strict language match.
2013-06-20 22:14:32 +02:00
Aric Stewart
f5ec65ad8e
gdi32: Update Arabic font defaults.
...
With help from Mosaab Alzoubi <moceap@hotmail.com>.
2013-06-11 18:07:59 +02:00
Aric Stewart
ceb81eee20
gdi32: Turn off tategaki if the unicode code point is outside of the rotated ranges.
2013-06-05 20:30:58 +02:00
Aric Stewart
72f584aef8
gdi32: Fix up glyph metrics for tategaki glyphs.
2013-05-28 19:42:24 +02:00
Aric Stewart
cf891b04a0
gdi32: Fix Tategaki rotation.
...
Tategaki does not ignore orientation rotation, instead it always
rotates affect glyphs by 90 degrees inside their cell.
2013-05-28 19:42:15 +02:00
Akihiro Sagawa
15aa8daf64
gdi32: Use the default character when the glyph is missing.
2013-05-22 19:32:26 +02:00
Akihiro Sagawa
f6ea5c8a0f
gdi32: Add a helper to get the default character index.
2013-05-22 19:32:23 +02:00
Aric Stewart
1ff63bb893
gdi32: Vertical glyphs can be written tategaki even without a vertical GSUB feature.
...
It is only based on the presence of the '@' character in the font name.
2013-05-21 12:07:43 +02:00
Aric Stewart
accad0957c
gdi32: Load the vertical feature when loading the GSUB table.
2013-05-21 12:07:30 +02:00
Aric Stewart
70cdd2ff9a
gdi32: Vertical glyph replacements are not applied in GetGlyphOutline if glyph is specified by index.
2013-05-21 12:06:42 +02:00
Aric Stewart
546c587036
gdi32: GetGlyphIndices does substitute glyph.
2013-05-20 12:06:25 +02:00
Akihiro Sagawa
8f8363ede6
gdi32: Ignore the lfHeight value when it exceeds the limit.
2013-05-08 14:29:06 +02:00
Sam Edwards
21dbe1c949
gdi32: Clip font glyphs to fit within text metrics.
2013-05-02 12:32:53 +02:00
Sam Edwards
a7dee44c24
gdi32: Improve glyph positioning for the subpixel case in get_glyph_outline.
2013-05-02 12:31:13 +02:00
Sam Edwards
53ec9b3291
gdi32: Prevent another possible buffer overflow in get_glyph_outline.
2013-04-30 12:34:27 +02:00
Sam Edwards
147765a505
gdi32: Prevent possible buffer overflows in get_glyph_outline.
2013-04-19 10:42:36 +02:00
Akihiro Sagawa
e5f1508031
gdi32: Improve fixed-pitch advance calculation as well as outline text metrics.
2013-04-04 19:38:46 +02:00
Akihiro Sagawa
3a96891061
gdi32: Improve outline text metrics calculation, especially if unitsPerEm is not power of 2.
2013-04-04 19:38:43 +02:00
Akihiro Sagawa
786b931e45
gdi32: Introduce macros to calculate outline text metrics.
2013-04-04 19:38:40 +02:00
Alexandre Julliard
591a31ba67
gdi32: Increment the face refcount when loading the same font file multiple times.
2013-03-04 11:36:04 +01:00
Alexandre Julliard
93c1389b7c
gdi32: Store the font stat information when loading it.
2013-03-04 11:35:28 +01:00
Byeongsik Jeon
1c846e70f0
gdi32: Fix the GdiGetCodePage() support ANSI_CHARSET font associated charset.
2013-02-27 19:23:44 +01:00
Akihiro Sagawa
9aa8300f99
gdi32: Ensure a fixed-pitch full-width character has double advance of a half-width character.
2013-02-07 15:53:48 +01:00
Andrew Talbot
f98f70fb41
gdi32: Avoid signed-unsigned integer comparisons.
2013-01-21 12:51:15 +01:00
Alexandre Julliard
0b10f0b854
gdi32: Initialize fontconfig even when fonts are cached.
2013-01-15 14:30:36 +01:00
Alexandre Julliard
4fc8bf18f3
gdi32: Implement RemoveFontResource.
2013-01-15 14:30:22 +01:00
Alexandre Julliard
4d72b082ed
gdi32: Keep the main font cache key open.
2013-01-15 14:30:09 +01:00
Alexandre Julliard
ab0ad4f5d8
gdi32: Add helper functions to compute font paths for AddFontResource.
2013-01-15 14:30:09 +01:00
Alexandre Julliard
0f40a031e7
gdi32: Store the vertical flag together with the other font flags.
2013-01-15 14:30:04 +01:00
Alexandre Julliard
f90696e813
gdi32: Store the full flags in the face object, and add a flag for fonts added through AddFontResource.
2013-01-15 14:29:12 +01:00
Alexandre Julliard
865078b05a
gdi32: Add ref counting to the face and family objects.
2013-01-14 15:19:14 +01:00
Alexandre Julliard
634840579c
gdi32: Avoid creating a family object just to retrieve the font data.
2013-01-14 14:48:20 +01:00
Alexandre Julliard
bbf3e8621a
gdi32: Remove from the GetTextExtentExPoint entry points parameters that can't be handled by the driver.
2012-12-18 19:26:25 +01:00
Alexandre Julliard
ff5d68ccb2
gdi32: Fix handling of rotation matrices in GetGlyphOutline.
2012-12-14 13:12:19 +01:00
Alexandre Julliard
b057c5f140
gdi32: Fix handling of font orientation in advanced graphics mode.
2012-12-10 17:36:23 +01:00
Alexandre Julliard
75fff47f94
gdi32: Add ref counting to the font objects and simplify the cache management.
2012-12-10 13:42:23 +01:00
Alexandre Julliard
06dced4eaa
gdi32: Keep track of the number of fonts on the unused list.
2012-12-07 14:39:49 +01:00
Alexandre Julliard
d3c128346b
gdi32: Simplify list processing by using the LIST_FOR_EACH_ENTRY macro.
2012-12-07 14:29:28 +01:00
Alexandre Julliard
8cca615f02
gdi32: Don't store a font pointer in the generic part of the DC.
2012-12-05 21:13:54 +01:00
Alexandre Julliard
baedf81b11
gdi32: Don't create a separate font handle for linked fonts.
2012-12-05 21:13:29 +01:00
Alexandre Julliard
6144824965
gdi32: Remove special handling for linked fonts in ExtTextOut.
2012-12-05 20:23:50 +01:00
Alexandre Julliard
e8b6701fe1
gdi32: Store and return ABC metrics from get_glyph_outline.
2012-12-04 18:14:56 +01:00
Alexandre Julliard
ebaf5ea176
gdi32: Don't load bitmap glyphs when using subpixel rendering in GetGlyphOutline.
2012-11-15 21:21:39 +01:00
Piotr Caban
b696558f04
gdi32: Ignore contours containing one point in get_glyph_outline function.
2012-11-13 16:55:55 +01:00
Alexandre Julliard
7fdba1f3dd
gdi32: Use the fontconfig anti-aliasing setup even for non-fontconfig fonts.
2012-11-06 11:47:28 +01:00
Alexandre Julliard
ddba05547f
gdi32: Get rid of the non-standard flags in GetRasterizerCaps.
2012-11-06 11:00:48 +01:00
Alexandre Julliard
5c02c352d9
gdi32: Determine the default anti-aliasing parameters in the null driver SelectFont entry point.
2012-11-05 16:15:25 +01:00
Alexandre Julliard
9d888b371f
gdi32: Set the font anti-aliasing flags from the fontconfig information if available.
2012-11-02 19:47:09 +01:00
Alexandre Julliard
123da6f888
gdi32: Move checking of the subpixel support and gasp flags to freetype.c.
2012-11-02 17:21:45 +01:00
Alexandre Julliard
ccc034c27e
gdi32: Store the anti-aliasing flags in the DC when selecting a font.
2012-11-02 16:41:23 +01:00
Alexandre Julliard
6164d533a9
gdi32: Add a parameter to return anti-aliasing flags in the SelectFont driver entry point.
2012-11-02 16:41:21 +01:00
Alexandre Julliard
a04f73808e
gdi32: Store the fontconfig anti-aliasing flags for each font.
2012-11-01 15:09:16 +01:00
Alexandre Julliard
24cdd74c6f
gdi32: Store the font file name in Unicode in the font cache.
2012-11-01 15:09:15 +01:00
Alexandre Julliard
c1f8a0bf61
gdi32: Avoid some redundant registry calls while loading the font cache.
2012-11-01 15:09:15 +01:00
Huw Davies
7cd8dc6bf2
gdi32: Use a symbol charmap if all else fails.
2012-10-26 16:29:29 +02:00
Huw Davies
8ef70039d3
gdi32: Simplify the code for charmap selection.
2012-10-26 16:29:26 +02:00
Alexandre Julliard
86abd84167
gdi32: Fix mapping of symbol font glyphs even when no encoding is specified.
2012-10-25 11:54:33 +02:00
André Hentschel
f5df798611
gdi32: Fix free of address-of expression (coverity).
2012-10-25 11:48:15 +02:00
Huw Davies
0941fefbc0
gdi32: Correctly map the 256-level bitmap to the 5, 17 and 65-level bitmaps.
2012-10-01 12:12:15 +02:00
Alexandre Julliard
7eb49ae703
gdi32: Enumerate a default charset if no other valid charset was found.
2012-09-27 14:39:24 +02:00
Francois Gouget
5f55a71b70
Assorted spelling fixes.
2012-09-24 22:27:29 +02:00
Qian Hong
df8be7b81a
gdi32: Prepend at in get_outline_text_metrics for vertical fonts.
2012-09-12 16:04:53 +02:00
Qian Hong
97904fd1ff
gdi32: Prepend at when create vertical font face.
2012-09-12 16:04:34 +02:00
Qian Hong
6c1e264e8e
gdi32: Fixed localized font full name (UNIQUE ID).
2012-09-12 16:04:03 +02:00
Qian Hong
de5972081e
gdi32: Fixed get_name_table_entry for symbol fonts.
2012-09-11 11:15:33 +02:00
Qian Hong
80dbd4e9cf
gdi32: Fixed localized font style name.
2012-09-11 11:15:27 +02:00
Alexandre Julliard
05c32b9b89
gdi32: Move the SwapBuffers entry point to the OpenGL driver.
2012-09-10 11:38:28 +02:00
Qian Hong
245308597f
gdi32: Fixed family and face name on non English locale.
2012-09-07 13:33:47 +02:00
Qian Hong
733aca30f4
gdi32: Read otmpFullName from TT_NAME_ID_UNIQUE_ID.
2012-09-07 13:32:56 +02:00
Qian Hong
abc8f2c6c2
gdi32: Read otmpFaceName from TT_NAME_ID_FULL_NAME.
2012-09-07 13:32:35 +02:00
Michael Stefaniuc
4d3a7aa268
gdi32: Avoid TRUE:FALSE conditional expressions.
2012-08-13 17:29:23 +02:00
Alexandre Julliard
96e80c2623
gdi32: Move DescribePixelFormat and SetPixelFormat to the WGL driver.
2012-07-30 22:12:13 +02:00
Alexandre Julliard
6a9dcd51a2
gdi32: Remove the remaining OpenGL entry points from the DC driver.
2012-06-28 18:52:23 +02:00
Alexandre Julliard
7a031d9b92
opengl32: Add the concept of a WGL driver.
2012-06-28 14:37:31 +02:00
Alexandre Julliard
ee21554893
gdi32: Remove OpenGL functions that don't use an HDC from the driver entry points.
2012-06-25 16:25:57 +02:00
Alexandre Julliard
93758c43fd
gdi32: Remove the CreateBitmap and DeleteBitmap driver entry points.
2012-05-29 21:06:41 +02:00
Alexandre Julliard
fdc4682e31
gdi32: Remove the CopyBitmap driver entry point.
2012-05-24 22:09:19 +02:00
Dmitry Timoshkov
82a4c5a6a3
gdi32: Set tmDigitizedAspectX/Y to 96 instead of 300 for consistency.
2012-05-09 12:06:34 +02:00
Alexandre Julliard
147174ff1c
winex11: Implement wglGetPbufferDCARB with a DC escape and remove it from the GDI driver interface.
2012-05-08 14:35:44 +02:00
Alexandre Julliard
e94d3b4e08
gdi32: Add a priority mechanism for pushing drivers on the stack in a defined order.
2012-05-08 12:16:50 +02:00
Dmitry Timoshkov
5476c0e2b9
gdi32: ntmCellHeight and ntmAvgWidth should be in font units.
2012-04-24 18:44:07 +02:00
Dmitry Timoshkov
57fbf1434c
gdi32: Enumerated font size should not be too large.
...
This reverts commit f4625d1ae1
.
2012-04-24 18:43:45 +02:00
Alexandre Julliard
582a2f511f
gdi32: Add a GetBoundsRect driver entry point.
2012-04-16 13:53:23 +02:00
Dmitry Timoshkov
34608a5108
gdi32: Add large fonts support for MS Sans Serif.
2012-04-13 16:09:45 +02:00
Dmitry Timoshkov
1f00c01ea5
gdi32: Add more verbose messages to indicate when a font is being added/replaced/refused to load.
2012-04-09 17:28:46 +02:00
Dmitry Timoshkov
e7a1362880
gdi32: Fix a typo in faces_equal() preventing loading all sizes of a bitmap font.
2012-04-09 17:28:43 +02:00
Ken Thomases
9cb7a97981
gdi32: On Mac OS X, find fonts using Core Text rather than FontConfig, by default.
2012-04-05 14:51:34 +02:00
Ken Thomases
272cf2a973
Revert "gdi32: Load fonts from default Mac external font paths.".
...
This reverts commit 85a71387da
.
2012-04-05 14:51:33 +02:00
Kusanagi Kouichi
c0c7547f37
gdi32: Improve font cache.
2012-04-02 18:37:48 +02:00
Kusanagi Kouichi
35c84cddcc
gdi32: Use helper functions when loading font from cache.
2012-03-30 15:30:01 +02:00
Huw Davies
105caa28bf
gdi32: Implement CreateScalableFontResource.
...
Based on patches by Jeremy White and Dmitry Timoshkov.
2012-03-29 18:16:06 +02:00
Huw Davies
7ac623f380
gdi32: Add a helper to create a new FreeType face.
2012-03-29 18:15:39 +02:00
Huw Davies
0318951aac
gdi32: Separate face creation from face insertion.
2012-03-27 13:43:53 +02:00
Huw Davies
2489c3285c
gdi32: Remove the loop over bitmap sizes. FreeType lists different sizes as separate faces.
...
Windows format bitmap fonts have been enumerated as separate faces
since FreeType 2.1.5, since we require 2.1.9 for bitmap support we can
safely drop this loop.
2012-03-27 13:43:50 +02:00
Huw Davies
8d50bb6711
gdi32: Add a helper to free a face object and fix a potential memory leak.
2012-03-27 13:43:46 +02:00
Huw Davies
b5115f77bc
gdi32: Add a helper to retrieve the fontsignature.
2012-03-27 13:43:42 +02:00
Huw Davies
45d79feaf5
gdi32: Add a helper to retrieve a bitmap font's internal leading.
2012-03-27 13:43:36 +02:00
Huw Davies
afae44da25
gdi32: Add a helper to retrieve the ntm flags.
2012-03-27 13:43:34 +02:00
Huw Davies
37eb386739
gdi32: Add a helper to retrieve the font version.
2012-03-27 13:43:31 +02:00
Huw Davies
e27a633b93
gdi32: Add a helper to create a family.
2012-03-27 13:43:29 +02:00
Huw Davies
7ad330deef
gdi32: Add a helper to retrieve the family pointer.
2012-03-27 13:43:26 +02:00
Huw Davies
c6af1d5416
gdi32: Add a helper to retrieve the family names and simplify the logic.
2012-03-27 13:43:24 +02:00
Huw Davies
18d19e7f18
gdi32: Remove unused variable.
2012-03-16 16:52:51 +01:00
Kusanagi Kouichi
6a49adeee6
gdi32: find_face_from_filename() needs to take font replacements into account.
2012-03-14 17:28:05 +01:00
Kusanagi Kouichi
d77104b93d
gdi32: Remove unused parameters and code, and a useless wrapper function.
2012-03-13 10:38:04 +01:00
Kusanagi Kouichi
eab0257492
gdi32: Simplify font replacement loading.
2012-03-13 10:37:51 +01:00
Kusanagi Kouichi
4bb0e2d076
gdi32: Add a helper function to get face list from family.
2012-03-13 10:37:45 +01:00
Kusanagi Kouichi
fc03398cd5
gdi32: Add a helper function to create a full name from a family name and a style name.
2012-03-13 10:37:01 +01:00
Kusanagi Kouichi
d696d5fee8
gdi32: Move font signature of font link from Face to SYSTEM_LINKS.
2012-03-13 10:36:45 +01:00
Kusanagi Kouichi
e86519c9b3
gdi32: Add a helper function to find font link.
2012-03-13 10:36:19 +01:00
Kusanagi Kouichi
4dc04ae867
gdi32: Initialize font signature of "System" font link.
2012-02-21 15:01:03 +01:00
Alexandre Julliard
691c37ca9f
gdi32: Fix font orientation when mirroring in compatible mode.
...
Inspired by a patch from Alexander Kochetkov.
2012-02-16 18:51:55 +01:00