Commit Graph

2010 Commits

Author SHA1 Message Date
Aric Stewart 781b88b7c5 gdi32/tests: Expand tests skipped in Arabic to also skip in Hebrew.
Signed-off-by: Aric Stewart <aric@codeweavers.com>
2015-10-01 23:29:57 +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 efb8afcfdc gdi32/tests: Avoid excessive traces for fonts with OS/2 version 4 tables. 2015-09-11 16:05:23 +09:00
Alexandre Julliard 58fe3afff5 gdi32: Add an intermediate pointer to avoid a compiler warning. 2015-09-10 19:47:24 +09:00
Gerald Pfeifer 775de7922e gdi32: Avoid two cases of shift overflow in get_glyph_indices. 2015-09-08 15:10:59 +09:00
Alistair Leslie-Hughes 8348c0ebe0 gdi32/tests: Add enhanced metafile GetPath test. 2015-09-01 21:12:10 +09:00
Nikolay Sivov 7889b17425 gdi32: Added GetFontRealizationInfo() export. 2015-09-01 19:28:16 +09:00
Nikolay Sivov adb0f582e0 gdi32/tests: Add names to data structure GetFontRealizationInfo returns, explicitly test with older variant fields. 2015-09-01 19:27:20 +09:00
Huw Davies 5021e91940 gdi32/tests: 64-bit GetFontFileInfo may fail with error ERROR_NOACCESS. 2015-08-20 20:35:20 +09:00
Huw Davies 76c321d5e6 gdi32: Add tests for GetFontRealizationInfo, GetFontFileInfo and GetFontFileData. 2015-08-17 14:52:15 +09:00
Francois Gouget f8a7d6ed74 Assorted spelling fixes. 2015-08-07 23:50:48 +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
Dmitry Timoshkov 5289c9fd92 gdi32: Add a test for enumerating substituted fonts.
EnumFontFamilies(NULL) should not enumerate substituted fonts,
but EnumFontFamilies("MS Shell Dlg") should do.
2015-07-17 19:28:32 +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
Huw Davies c81ff0f8cf gdi32/tests: Japanese Win 7 uses MS Shell Dlg as its default GUI font. 2015-06-19 20:14:38 +09:00
Huw Davies 002cf965e1 gdi32/tests: Fix Courier test on Arabic locales. 2015-06-18 21:41:02 +09:00
Nikolay Sivov ce58518c6e gdi32: Return GCP_USEKERNING if font has kerning pairs support. 2015-06-08 15:29:53 +09:00
Thomas Faller 9244cac3af gdi32: Prevent unneeded operations by flag check. 2015-06-04 15:57:41 +09:00
Huw Davies 0c1f329053 gdi32: Prevent the underline / strikeout width getting rounded to zero. 2015-05-19 19:24:43 +09:00
Francois Gouget 150d920310 gdi32/tests: Silence some font traces that generate too many lines. 2015-05-11 15:19:04 +09:00
Patrick Rudolph d2a91a3aed gdi32: Add stub functions. 2015-04-17 17:32:46 +09:00
Bruno Jesus 5c323a540c gdi32: Support negative count values in GetBitmapBits. 2015-04-08 16:23:49 +09:00
Thomas Faber 8a390c8661 gdi32: Avoid uninitialized variable use in EnumEnhMetaFile (MSVC). 2015-03-30 20:05:16 +09:00
Michael Stefaniuc 8293cf33e0 gdi32: Remove double parentheses, not a misplaced pair (PVS-Studio). 2015-03-06 20:32:00 +09:00
Alexandre Julliard 336be2f694 gdi32: Use shorter constants for byte and word masks to avoid warnings. 2015-03-04 21:50:35 +09:00
Michael Müller e618ab65ed gdi32: Fix arguments for OSMesaMakeCurrent when using 16 bit formats. 2015-02-26 20:10:08 +09:00
Thomas Faber 656bc70f80 gdi32/tests: Avoid variable length arrays (MSVC). 2015-02-17 22:28:14 +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
Michael Stefaniuc 80218d19ef gdi32/tests: Don't clear a variable before it goes out of scope (PVS-Studio). 2014-11-28 17:04:21 +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 d83ae0ef40 gdi32: Remove unused function (Clang). 2014-11-25 19:49:36 +01:00
Nikolay Sivov 2f0a4a4425 gdi32: Remove undefs for names that are never defined. 2014-11-25 19:49:30 +01:00
André Hentschel d9d1725295 gdi32: Remove unused string (Clang). 2014-11-20 22:32:04 +09:00
Amine Khaldi b9f18b3431 gdi32/tests: Add basic tests for the handling of dwCount parameter in ExtCreateRegion. 2014-11-03 16:35:11 +09:00
Michael Stefaniuc b5a405af2f gdi32: Remove a basically unused variable (PVS-Studio). 2014-11-03 16:34:52 +09:00
André Hentschel 88e8102570 gdi32: Fix typo in a condition (PVS-Studio). 2014-10-28 14:05:19 +09:00
Alexandre Julliard 55f24da978 gdi32: Check the hatch masks instead of the rop masks for the null and mask optimization case. 2014-10-27 17:35:44 +09:00
Matteo Bruni a71f25d239 gdi32/tests: Add a test for GetGlyphOutline with an insufficient buffer. 2014-10-09 18:24:53 +02:00
Matteo Bruni 112a7f7f97 gdi32: Don't overflow the buffer in GetGlyphOutline. 2014-10-09 18:24:47 +02:00
Gerald Pfeifer ff05f2dec6 gdi32: Remove unused constant bit_fields_565. 2014-08-11 23:55:19 +02:00
Thomas Faber 07ca1afbd3 gdi32: Do not omit mandatory argument to WriteFile. 2014-07-14 17:22:39 +02:00