Commit Graph

469 Commits

Author SHA1 Message Date
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
Kusanagi Kouichi 758796e704 gdi32: Add traces for skipped font replacements. 2012-02-15 16:27:11 +01:00
Kusanagi Kouichi 15a6aefb8f gdi32: Use find_family_from_any_name to find a replacement family. 2012-02-15 16:27:11 +01:00
Aric Stewart 05a9d4ce94 gdi32: Rebuild the internal SystemLink every time. 2012-02-14 19:15:48 +01:00
Aric Stewart 85a71387da gdi32: Load fonts from default Mac external font paths. 2012-02-09 11:58:48 -06:00
Akihiro Sagawa 286854fb06 gdi32: Consider whether the logical font face is vertical when selecting. 2012-02-08 13:54:40 -06:00
Aric Stewart f83762e678 gdi32: Allow font replacements to be specified either in localized name or English name. 2012-02-08 10:53:40 -06:00
Akihiro Sagawa d53dc01143 gdi32: Restore the vertical font flag from the cache. 2012-02-07 14:03:12 -06:00
Aric Stewart e7a79b5565 gdi32: Keep our internal generated system links separate and append them to any user defined system links. 2012-02-07 09:35:50 -06:00
Aric Stewart a8a2f87135 gdi32: In update_system_links if the font we are trying to link has already been substituted or localized we need to check against that name also. 2012-02-01 16:42:43 +01:00
Alexandre Julliard fbbf3ba408 gdi32: Get rid of the CreateDIBSection driver entry point. 2012-01-10 16:13:29 +01:00
Kusanagi Kouichi fecb1d8b6f gdi32: GetGlyphIndices doesn't substitute glyph. 2012-01-10 11:22:41 +01:00
Kusanagi Kouichi 53385314d0 gdi32: Substitute glyph for vertical font only. 2011-12-20 20:06:33 +01:00
Kusanagi Kouichi 69a26387b3 gdi32: Add vertical fonts to font list. 2011-12-20 20:06:32 +01:00
Kusanagi Kouichi 65f809248f gdi32: Split AddFontToList into two functions. 2011-12-20 20:06:32 +01:00
Kusanagi Kouichi 4dfe084bba gdi32: Merge two ifs. 2011-12-20 20:06:31 +01:00
Kusanagi Kouichi 6c268cf1c5 gdi32: Use find_family_from_name and LIST_FOR_EACH instead of open-coding them. 2011-12-20 20:06:31 +01:00
Kusanagi Kouichi 5bdbf6c681 gdi32: Add a helper function to convert a string from A to W. 2011-12-20 20:06:30 +01:00
Francois Gouget 2ae10acb61 gdi32: Avoid hardcoding the Unicode string literal lengths. 2011-12-16 17:40:41 +01:00
Kusanagi Kouichi b5446ddb45 gdi32: Don't remove leading '@' from face name. 2011-12-13 18:59:12 +01:00
Kusanagi Kouichi bf8a100639 gdi32: Don't use preferred family name. 2011-12-13 18:59:11 +01:00
Alexandre Julliard 27eb63b082 gdi32: GetCharABCWidthsFloatW must succeed with non-TrueType fonts. 2011-12-12 11:14:25 +01:00
Huw Davies 48b1e66309 gdi32: Use an array of masks to simplify the bitmap conversion. 2011-11-16 17:00:19 +01:00
Huw Davies 6c9c9107d4 gdi32: Return valid anti-alias format bitmaps if the glyph is a monochrome bitmap. 2011-11-16 17:00:15 +01:00
Huw Davies f3fab96393 gdi32: Add a helper to return the maximum level to use for a given anti-aliasing format. 2011-11-16 17:00:10 +01:00
Marcus Meissner 4222ccf1cf gdi32: Fixed loop end setting (Coverity). 2011-11-14 15:25:19 +01:00
Alexandre Julliard 9391c6a757 gdi32: Add a CopyBitmap driver entry point. 2011-11-08 19:25:05 +01:00
Akihiro Sagawa 35a928a0f8 gdi32: Use the translated string as a charset name. 2011-11-07 19:34:47 +01:00
Alexandre Julliard 95cba0c0f4 gdi32: Add a DC driver entry point for GdiGradientFill. 2011-10-31 23:51:38 +01:00
Ken Thomases 14efc6eb24 gdi32: Allow ~-based paths in HKCU\Software\Wine\Fonts:Path. 2011-10-27 12:24:52 +02:00
Alexandre Julliard 7fbb16d4ba gdi32: Implement GdiRealizationInfo as a standard driver entry point. 2011-10-26 12:41:32 +02:00
Alexandre Julliard 8796831a9f gdi32: Implement FontIsLinked as a standard driver entry point. 2011-10-26 12:41:32 +02:00
Alexandre Julliard e31c51b65e gdi32: Implement GetFontData as a standard driver entry point. 2011-10-26 12:41:31 +02:00
Alexandre Julliard 441d6cfcd4 gdi32: Implement GetTextFace as a standard driver entry point. 2011-10-26 12:41:31 +02:00
Alexandre Julliard a2de6a8766 gdi32: Implement GetTextExtentExPointI as a standard driver entry point. 2011-10-26 12:41:30 +02:00
Alexandre Julliard 1740f34ffb gdi32: Implement GetTextCharsetInfo as a standard driver entry point. 2011-10-26 12:41:30 +02:00
Alexandre Julliard ce8d7b4601 gdi32: Implement GetOutlineTextMetrics as a standard driver entry point. 2011-10-26 12:41:29 +02:00
Alexandre Julliard 0c96820104 gdi32: Implement GetKerningPairs as a standard driver entry point. 2011-10-26 12:41:29 +02:00
Alexandre Julliard 6376b4cf6f gdi32: Implement GetGlyphOutline as a standard driver entry point. 2011-10-25 16:57:28 +02:00
Alexandre Julliard ff96c4dd4e gdi32: Implement GetGlyphIndices as a standard driver entry point. 2011-10-25 16:57:27 +02:00
Alexandre Julliard 90ecea9739 gdi32: Implement GetFontUnicodeRanges as a standard driver entry point. 2011-10-25 16:57:27 +02:00
Alexandre Julliard 23c7c0469c gdi32: Reimplement GetCharABCWidthsFloat using the integer version. 2011-10-25 16:57:27 +02:00
Alexandre Julliard 27208a0ec5 gdi32: Implement GetCharABCWidthsI as a standard driver entry point. 2011-10-25 16:57:27 +02:00
Alexandre Julliard e5a0fa7089 gdi32: Implement GetCharABCWidths as a standard driver entry point. 2011-10-25 16:57:26 +02:00
Alexandre Julliard a8444d7fd1 gdi32: Add driver entry points for a number of font functions. 2011-10-24 23:45:37 +02:00
Alexandre Julliard 2b1b11d681 gdi32: Rename the EnumDeviceFonts entry point to EnumFonts since it's not limited to device fonts. 2011-10-24 23:34:33 +02:00
Alexandre Julliard cbd81d391c gdi32: Implement EnumDeviceFonts as a standard driver entry point. 2011-10-24 23:34:28 +02:00
Alexandre Julliard 873bf81d3b gdi32: Don't return outline metrics for bitmap fonts. 2011-10-24 23:34:05 +02:00
Alexandre Julliard 20070d0838 gdi32: Implement GetTextMetrics as a standard driver entry point. 2011-10-24 20:03:53 +02:00
Alexandre Julliard ca4177997c gdi32: Add a few helper functions for computing font metrics. 2011-10-24 20:03:09 +02:00
Alexandre Julliard 5c1c7a6576 gdi32: Implement GetCharWidthW as a standard driver entry point. 2011-10-20 17:05:11 +02:00
Alexandre Julliard 6ad9eb805c gdi32: Implement GetTextExtentExPointW as a standard driver entry point. 2011-10-20 17:04:35 +02:00
Alexandre Julliard ef0fe44327 gdi32: Implement SelectFont as a standard driver entry point. 2011-10-19 18:22:05 +02:00
Alexandre Julliard 885a4a5c08 gdi32: Add an initial Freetype font driver. 2011-10-19 18:22:01 +02:00
Huw Davies 3b9669017b gdi32: Add the liberation fonts to the default fallback lists. 2011-10-12 17:10:03 +02:00
Huw Davies 230b42055c gdi32: Move to a more scalable mechanism for picking the default fonts. 2011-10-12 17:09:58 +02:00
Huw Davies bb47bab3cd gdi32: Now that we require a less ancient freetype, we can assume several other functions are also present. 2011-10-11 13:37:50 +02:00
Huw Davies 6ee2eaeff2 gdi32: Remove no longer needed include file. 2011-10-11 13:37:50 +02:00
Huw Davies 570e68b822 gdi32: Require that we have freetype's FT_Load_Sfnt_Table function and remove the hacky fallback. 2011-10-10 15:42:38 +02:00
Huw Davies 5bd2db4521 gdi32: Move some common default fonts to the head of the font list. 2011-10-06 16:47:22 -05:00
Huw Davies 17e72c816b gdi32: Load the font properties from the cache if it exists. 2011-10-06 16:47:20 -05:00
Huw Davies a155292f98 gdi32: Cache the loaded font list properties. 2011-10-06 16:47:17 -05:00
Huw Davies 63070bdf89 gdi32: Move the font list initialisation to a separate function. 2011-10-06 16:47:14 -05:00
Huw Davies ab1373d847 gdi32: Keep track of the english family name if there's a localised name as well. 2011-10-06 16:47:11 -05:00
Huw Davies b4430319f1 gdi32: Use a separate variable to indicate the default has been retrieved. 2011-09-28 17:25:10 +02:00
Josh Juran b27e814de6 gdi32: Simplify logic in WineEngGetFontData(). 2011-09-12 10:07:21 +02:00
Grazvydas Ignotas 4a463e0650 gdi32: Use correct name for elfFullName. 2011-08-24 12:14:46 +02:00
Huw Davies 33532613a8 gdi32: Don't load a font replacement if any face of the real family exists. 2011-08-04 18:42:33 +02:00
Frédéric Delanoy b5a33dab88 dlls: Assorted spelling fixes. 2011-08-02 20:47:51 +02:00
Ken Thomases e6d6fbf6e9 gdi32: Fix leak of FullName of replaced font face. 2011-05-17 10:45:24 +02:00
Grazvydas Ignotas adcce5d712 gdi32: Implement font selection by its full name. 2011-05-12 20:00:51 +02:00
Grazvydas Ignotas 0374102625 gdi32: Refactor get_facename to retrieve other names too. 2011-05-12 19:58:43 +02:00
Konstantin L. Metlov fb787da66a gdi32: Handle pre-Unicode symbol TTFs with symbols at U+00XX. 2011-05-11 19:50:35 +02:00
Konstantin L. Metlov 834378183a gdi32: Handle pre-Unicode "broken" symbol TTFs with symbols at U+00XX. 2011-05-09 17:36:43 +02:00
Alexandre Julliard 7c06fef8b6 gdi32: Fix a compiler warning on 64-bit. 2011-04-11 13:45:23 +02:00
Alexandre Julliard 05b1aea244 gdi32: Avoid reading bits outside of the glyph bitmap in GetGlyphOutline. 2011-04-08 13:03:22 +02:00
Akihiro Sagawa cb77f9a239 gdi32: Create charset enumeration order list for EnumFontFamiliesEx. 2011-04-04 13:44:43 +02:00
Akihiro Sagawa f088185471 gdi32: Remove redundant charset assignments. 2011-04-04 13:44:06 +02:00
Akihiro Sagawa 6a404a3b58 gdi32: Move charset enumeration to helper function. 2011-04-04 13:44:01 +02:00
Dmitry Timoshkov d9d5267237 gdi32: Remove a redundant check for Roman font presence.
Wine ships Tahoma and many other built-in fonts these days.
2011-03-14 12:39:28 +01:00
Dmitry Timoshkov 2aaf6c2c8c gdi32: EnumFontFamilies should also match against fully qualified face name. 2011-02-24 15:49:40 +01:00
Dmitry Timoshkov e0f5ddddf1 gdi32: Do not leak the hfont list (Valgrind). 2011-02-21 15:18:39 +01:00
Dmitry Timoshkov 20bdd203aa gdi32: Go through all hfontlist entries not just the first one when checking whether font is in the child font list. 2011-02-21 15:18:37 +01:00
Dmitry Timoshkov 00c8250ff8 gdi32: Add dumping of child GDI font cache. 2011-02-21 15:18:33 +01:00
Huw Davies aec376dcef gdi32: Clear the accel flags. 2010-12-17 13:26:01 +01:00
Dmitry Timoshkov 5c011b3dbf Revert "gdi32: Make AddFontToList skip adding a face into global lists if the font is not supposed to be enumerated, and return a pointer to first loaded face.".
This reverts commit a2047323c9. That patch is not correct.
2010-11-05 17:15:35 +01:00
Dmitry Timoshkov a2047323c9 gdi32: Make AddFontToList skip adding a face into global lists if the font is not supposed to be enumerated, and return a pointer to first loaded face. 2010-10-27 12:07:56 +02:00
Dmitry Timoshkov 81557b5e21 gdi32: Do not crash on an invalid pointer passed to AddFontMemResourceEx. 2010-08-02 16:10:06 +02:00
Dmitry Timoshkov 213d84be15 gdi32: Make sure that all the glyph metrics are transformed before caching them. 2010-07-28 12:23:33 +02:00
Marcus Meissner 2f7ec73add gdi32: Rebuild font hash after changing the matrix. 2010-07-21 13:23:56 +02:00
Alexandre Julliard aa9c781703 Revert "gdi32: Pre-multiply RGB values by alpha for subpixel font rendering."
This reverts commit aff0eac21b. The RGB
values are already alpha values, they don't need to be pre-multiplied.
2010-05-28 00:09:21 +02:00
Dmitry Timoshkov 7d3cb53cf1 gdi32: Do not use VDMX for mapping of negative font heights, based on a test case. 2010-05-18 18:44:24 +02:00
Alexandre Julliard aff0eac21b gdi32: Pre-multiply RGB values by alpha for subpixel font rendering. 2010-05-17 14:25:14 +02:00
Mikhail Maroukhine 8fd8d9e96a gdi32: Fix compiler warnings with flag -Wcast-qual. 2010-03-29 12:13:55 +02:00
Christian Costa 132ba27f2b gdi32: Improve some FIXMEs. 2010-01-20 16:30:47 +01:00
Hans Leidekker 1d4fcc0270 gdi32: Implement WineEngGetCharABCWidthsFloat and forward GetCharABCWidthsFloat to it. 2009-12-11 17:47:22 +01:00
Alexandre Julliard 1ac23b9b0f gdi32: Don't include wingdi16.h by default. 2009-12-07 14:18:29 +01:00
Dmitry Timoshkov 2158999382 gdi32: Rework the test for too large width/height font ratio to pass with different font heights, make it pass under Wine. 2009-10-07 12:27:51 +02:00
Aric Stewart 7214f650ef gdi32: Ensure child fonts have names. 2009-08-03 16:00:42 +02:00
Dmitry Timoshkov 69b29fa07e gdi32: Use a better heuristics for tmWeight.
Marlett uses FW_MEDIUM (500) and current code allows only FW_REGULAR and
FW_BOLD. New heuristics detects if flags and usWeightClass in the font match.
2009-08-03 14:59:08 +02:00
Aric Stewart 6a5bb87e3a gdi32: In init_system_links, reinitialize val_len and data_len before continuing. 2009-07-16 11:13:02 +02:00
Huw Davies 08453c1f2b configure: Remove reference to obsolete ftnames.h. 2009-06-25 14:34:13 +02:00
Michael Stefaniuc 0737fc2c72 gdi32: Avoid using long when not needed. 2009-06-02 11:57:22 +02:00
Paul TBBle Hampson 87cd36db5e gdi32: Autopopulate FontLinks when autopopulating FontSubstitutes.
When Wine's codepage changes, FontSubstitutes is redefined to use
fonts appropriate for that codepage. Configure FontLinks to reasonable
defaults at the same time.
2009-05-12 13:19:05 +02:00
Paul TBBle Hampson ce426d6ad1 gdi32: Don't add system_links entries for substituted fonts.
When a Font is looked up in the FontLinks table, they have already
been normalised by FontSubstitutes.

So no need to store system_links entries for fonts that appear as keys
in the FontSubstitutes list.
2009-05-05 15:39:58 +02:00
Paul TBBle Hampson 8a4b77883e gdi32: Fetch child fonts by real parent font name.
Entries in the list of linked fonts are keyed by the substituted font
name, so need to be looked up by the substituted font name.
2009-05-05 15:39:36 +02:00
Paul TBBle Hampson 4b45767e2a gdi32: Remove tabs from init_system_links TRACEs. 2009-04-30 12:46:09 +02:00
Paul TBBle Hampson 0cde093fdc gdi32: Ensure font name comparisons are case-insensitive. 2009-04-30 12:45:58 +02:00
Dmitry Timoshkov d15619b215 gdi32: Fix the font rotation direction.
Apparently at some point either freetype got fixed, or other gdi32
changes made the matrix members usage match freetype. This patch makes
my test application match the Windows behaviour in font rotation direction.
2009-03-02 12:11:35 +01:00
Dmitry Timoshkov b3e65ba399 gdi32: Revert an unrelated part of 028617b90b.
It was not a very nice idea to break bitmap fonts which request a custom
width (therefore a transformation) in a patch that pretended to do something
unrelated.
2009-02-27 13:15:44 +01:00
Huw Davies ff2f88cf08 gdi32: Fix fractional scaling threshold. 2009-02-20 18:46:04 +01:00
Huw Davies 4f25723853 gdi32: Set the font family as FF_MODERN if the panose marks it as monospaced. 2009-02-19 15:57:47 +01:00
Huw Davies 2c6ddb8030 gdi32: The special handling of the character codes metrics for symbol fonts should be based on the presence of the MS symbol charmap rather than whether the font is enumerated as SYMBOL_CHARSET. 2009-02-18 13:13:29 +01:00
Huw Davies 24c9a37aaf gdi32: In a Baltic locale the last char of a symbol font is reported as 0xf8fd rather than 0xf0ff. 2009-02-17 15:14:53 +01:00
Huw Davies e93d348109 gdi32: Improve calculation of the character code text metrics. 2009-02-16 16:01:37 +01:00
Huw Davies aaefb75f8d gdi32: Add missing serif types. 2009-02-12 17:53:34 +01:00
Huw Davies 8ab829a68a gdi32: Correct the font family values returned in the text metrics. 2009-02-11 16:14:46 +01:00
Dmitry Timoshkov 5804470f26 gdi32: Make sure that World2Vport DC transformation is valid before using it. 2009-02-05 13:15:17 +01:00
Dmitry Timoshkov 24937a4f0f gdi32: Add a test for the MAT2 parameter of GetGlyphOutline, make it pass under Wine. 2009-02-03 12:40:27 +01:00
Alexandre Julliard 7b82b98ee8 gdi32: Don't hold the GDI lock while calling the Freetype font engine functions. 2009-01-28 19:38:15 +01:00
Alexandre Julliard 3939cb5c82 gdi32: Avoid some pointer casts. 2009-01-26 15:09:18 +01:00
Michael Stefaniuc 667a1ed5be gdi32: Remove superfluous pointer casts. 2009-01-26 14:31:13 +01:00
Byeongsik Jeon f2e1b254ce gdi32: Restore the trimmed bitmap image by FT_Render_Glyph(). 2008-12-29 12:41:45 +01:00
Byeongsik Jeon 45a081f142 gdi32: Don't truncate the added pixels with FT_LCD_FILTER_DEFAULT. 2008-12-24 10:58:59 +01:00
Alexandre Julliard 30137f168c gdi32: Fix the build without Freetype LCD support. 2008-12-23 12:34:01 +01:00
ByeongSik Jeon 028617b90b gdi32, winex11: Add support for subpixel font rendering. 2008-12-22 16:33:03 +01:00
ByeongSik Jeon d1ca64b3f5 gdi32: Unify Chinese and Japanese default font name. 2008-12-11 12:20:27 +01:00
Aric Stewart c0c852247f gdi32: Use the substitute name, if it exists, when looking for font system links.
Allows double indirection MS ShellDlg -> MS UI Gothic linked to system
gothic to work as expected.
2008-12-03 11:41:45 +01:00
Dmitry Timoshkov 376adf9438 gdi32: Try to avoid not necessary glyph transformations. 2008-11-03 11:50:15 +01:00
Bobby Bingham a900f5e065 gdi32: Add support for the GGO_UNHINTED flag in GetGlyphOutline. 2008-10-28 15:46:29 +01:00
Dmitry Timoshkov 2d15db6136 gdi32: Search the child font list first. 2008-10-27 11:28:50 +01:00
Francois Gouget 215738a140 dirent.h is a conditional include now. 2008-10-20 11:37:27 +02:00
Andrew Talbot 3a02030d54 gdi32: Sign-compare warnings fix. 2008-10-13 12:13:19 +02:00
Dmitry Timoshkov 7c1397412b gdi32: Revert incorrect fix introduced in a5d288f08c.
The real fix has been provided in 41aad2dce2.
2008-10-09 12:58:03 +02:00
Dmitry Timoshkov f898547b77 gdi32: Remove the code which bypasses the DC transformation checks.
If it's absolutely required to check the child list first, that should be
done inside of find_in_cache using the same comparisons as done there.
2008-10-09 12:57:54 +02:00
Huw Davies 2f8f3facce gdi32: Factor out the name table lookup into a separate function. 2008-09-18 14:18:11 +02:00
Dmitry Timoshkov 067cbc57f3 gdi32: Don't use pOS2->usWeightClass, some fonts don't set it correctly. 2008-09-11 11:42:02 +02:00
Shunichi Fuji de251e1c62 gdi32: Adjust FT_MulFix function to Freetype cvs head. 2008-09-04 11:41:08 +02:00
Alexandre Julliard e84bc545c3 gdi32: Add missing WineEngRealizationInfo function for the non-freetype case. 2008-08-25 15:38:27 +02:00
Dmitry Timoshkov 21cdaeea4b gdi32: Replace DC transform by font scaling for bitmap fonts. 2008-08-21 11:42:25 +02:00
Dmitry Timoshkov f322f70a69 gdi32: Avoid loading a bitmap if a glyph transformation is being requested. 2008-08-21 11:42:11 +02:00
Huw Davies 29637c1441 gdi32: Keep track of the number of unique fonts that are created and return this in the second DWORD of the GdiRealizationInfo structure. 2008-08-05 14:09:34 +02:00
Lei Zhang 9b4f17f630 gdi32: Glyph advances should be measured for unrotated characters. 2008-07-23 11:56:09 +02:00
Andrew Talbot 613d17ae92 gdi32: Remove unneeded address-of operator from array name. 2008-07-11 13:58:48 +02:00
Michael Karcher 49eb123739 Add support for compatibility mode in WineEngCreateFontInstance. 2008-07-08 10:44:54 +02:00
Michael Karcher 3f64708818 gdi32: Fix double->fixpoint conversion in freetype.c. 2008-07-01 14:58:41 +02:00
Dan Hipschman 92c8cac214 gdi32: Return the correct value from GetTextFace. 2008-06-25 11:41:00 +02:00
Dmitry Timoshkov 0d6dcc1e4e gdi32: Perform correct glyph scaling even if font metrics haven't been cached yet. 2008-06-24 12:23:10 +02:00
Dmitry Timoshkov e02168791e gdi32: Indent a block of code using 4 spaces instead of 5. 2008-06-24 12:22:49 +02:00
Dmitry Timoshkov b2fa21e4bb gdi32: Scale outline font metrics. 2008-06-24 12:22:42 +02:00
Dmitry Timoshkov 433c3cfeec gdi32: Don't return cached glyph metrics if a custom transformation was requested. 2008-06-24 12:22:31 +02:00
Dmitry Timoshkov 7ef471220d gdi32: Don't cache glyph metrics if they have a custom transformation. 2008-06-24 12:22:24 +02:00
Dmitry Timoshkov 8cdca3980a gdi32: Apply the custom transform to a glyph only if it's not an identity one. 2008-06-24 12:22:18 +02:00
Dmitry Timoshkov df76fe6f0c gdi32: Perform the world transform separately from font scaling. 2008-06-24 12:21:42 +02:00
Dmitry Timoshkov 8a6628aea5 gdi32: Font scaling transform is performed separately. 2008-06-24 12:21:28 +02:00
Dmitry Timoshkov 85c16fc45b gdi32: Don't forget to update the glyph advance in the case of a custom transformation. 2008-06-24 12:21:16 +02:00
Dmitry Timoshkov 9675720510 gdi32: Initialize otmMacAscent, otmMacDescent, otmMacLineGap in outline text metrics. 2008-06-24 12:21:06 +02:00
Dmitry Timoshkov e378795970 gdi32: Perform font height scaling with higher precision. 2008-06-24 12:20:55 +02:00
Dmitry Timoshkov 41aad2dce2 gdi32: Extend the font substitution test, make it pass under Wine. 2008-06-23 12:53:22 +02:00
Lei Zhang 71ed7573aa gdi32: Check for regular fonts by style instead of style name. 2008-06-21 11:37:00 +02:00
Dmitry Timoshkov ecd5048ea7 gdi32: Use 0xffff as a default character as Vista does. 2008-06-18 15:21:49 +02:00
Zhangrong Huang a21b3f0abd gdi32: Add more Asian codepages to get default fallback fonts. 2008-06-09 19:09:29 +02:00
Alexandre Julliard 93cbb7a5db gdi32: Perform coordinate transformations using doubles instead of floats to avoid precision loss. 2008-05-22 17:43:01 +02:00
Dmitry Timoshkov a5d288f08c gdi32: Add more font substitution tests, make them pass under Wine. 2008-05-13 20:25:50 +02:00
Dan Hipschman c3537c4086 gdi32: Add font faces to families in a specific order. 2008-05-01 12:41:30 +02:00
Jeremy White f4625d1ae1 gdi32: Shift default height used in EnumStructs to the standard em size of 2048.
As pointed out by Dmitry Timoshkov.
2008-04-29 14:37:53 +02:00
Dmitry Timoshkov baded8789d gdi32: Map glyph to Symbol range only if the font supports symbol encoding. 2008-04-14 21:28:46 +02:00
Huw Davies a643337c26 gdi32: Don't overrun the current scanline while copying a glyph's bitmap. 2008-04-08 13:25:02 +02:00
Dmitry Timoshkov c5d07b7c22 gdi32: Fix lfWidth before caching the font to avoid duplicate entries in the cache. 2008-04-07 20:34:37 +02:00
Dmitry Timoshkov 1f35b6e62e gdi32: Fully initialize face->ntmFlags on font load. 2008-04-07 12:14:14 +02:00
Dmitry Timoshkov 90265ac586 gdi32: Add a font scaling test when lfHeight == 0 and lfWidth != 0, make it pass under Wine. 2008-04-04 11:03:42 +02:00
Mikołaj Zalewski 4094ff0256 gdi32: Fix GetGlyphIndices to select properly the invalid char glyph for TrueType fonts. 2008-04-02 12:36:42 +02:00
Austin English 45b944ed51 gdi32: Spelling fixes. 2008-03-25 19:58:31 +01:00
Huw Davies 4b6d284de6 gdi32: Ignore fonts with names that begin with a '.'. 2008-03-21 12:44:20 +01:00
Aric Stewart bdaa54e64f freetype: Fix a typo that prevented checking more than the first range in Range Format 2. 2008-03-19 11:23:22 +01:00
Francois Gouget 8d38b1d60b gdi32: Remove a trailing space in a Wine trace. 2008-03-19 11:21:19 +01:00
Aric Stewart 36ac341b55 gdi32: Add loading and processing of GSUB table vert/vrt2 functions for proper tategaki (vertical writing). 2008-03-13 12:06:02 +01:00
Huw Davies e0693a1813 gdi32: Factor out FreeType initialization into a separate function. 2008-03-12 18:14:27 +01:00
Aric Stewart 5c1229982a gdi32: Skip leading @ from FontFace when looking for font to load. 2008-03-11 15:30:45 +01:00
Huw Davies 0436a5d14a gdi32: Store the Windows path (if it's available) in the font registry entries. 2008-03-10 19:12:54 +01:00
Huw Davies 025d84e644 gdi32: Update both winnt and win9x font keys and factor out the cleanup code. 2008-03-10 11:23:19 +01:00
James Hawkins 26ad93947b janitorial: Remove links to any microsoft site. 2008-03-01 12:04:09 +01:00
Andrew Talbot a4e8f4dcdd gdi32: Assign to structs instead of using memcpy. 2008-02-28 10:50:57 +01:00
Aric Stewart a41e77448c gdi32: Japanese Windows had a default fallback Font SystemLink of Microsoft Sans Serif. Implement that for Japanese. 2008-02-19 14:56:22 +01:00
Alexandre Julliard 35c09c01b2 gdi32: Use a separate critical section for freetype locking instead of relying on the GDI lock. 2008-02-05 21:16:06 +01:00
Aric Stewart 1ce79f87dd gdi32: Child fonts need to be scaled like their parent. With input from Dmitry Timoshkov. 2008-02-05 12:19:50 +01:00
Dmitry Timoshkov 0acfe68864 gdi32: Actually perform the fractional scaling test, make it pass under Wine. 2008-01-21 11:39:20 +01:00
Sin-ta Hsiea e61abafbb5 gdi32: Fix Traditional Chinese font mapping to "PMingLiU", "MingLiU". 2008-01-16 20:09:49 +01:00
Dmitry Timoshkov ec4a46f93a gdi32: Allocate cache for face enumeration data only when necessary. 2008-01-16 12:16:52 +01:00
Dan Kegel 3ed880ff9d gdi32: Fix AddFontResource behavior with relative paths. 2008-01-15 14:35:14 +01:00
Dmitry Timoshkov 2fdaa56693 gdi32: Add a test for undocumented EnumFontFamiliesEx(NULL), make it pass under Wine. 2008-01-15 11:38:15 +01:00
Dmitry Timoshkov c7a6c1af0d gdi32: Initialize more fields in GetEnumStructs. 2008-01-14 13:11:48 +01:00
Dmitry Timoshkov d973271566 gdi32: Use public FS_xxxxxx defines. 2008-01-14 13:11:42 +01:00
Dmitry Timoshkov 4a8f9347bd gdi32: Simplify GetEnumStructs. 2008-01-11 12:23:14 +01:00
Dmitry Timoshkov f542511209 gdi32: Fix a GdiFont leak. 2008-01-11 12:22:44 +01:00
Dmitry Timoshkov 92a74a8271 gdi32: Fix the regression caused by the scaling font metrics patch. 2008-01-10 11:33:39 +01:00
Dmitry Timoshkov 535053b927 gdi32: Add support for scaling font metrics. 2008-01-08 17:05:35 +01:00
Andrew Talbot d0d4c74e85 gdi32: Remove unneeded casts. 2008-01-07 12:18:50 +01:00
Aric Stewart 3c9e7aba75 gdi32: Cache font enum info.
Cache the enum info so that repeated calls to EnumFontFamiles and such
does not have to repeatedly load the font file.
2007-12-13 14:30:40 +01:00
Hans Leidekker 0dc765809c gdi32: GetCharABCWidthsI does not require a scalable font. 2007-12-10 12:27:13 +01:00
Hans Leidekker 8487c2dd2a gdi32: Implement GetTextExtentExPointI. 2007-12-03 15:54:05 +01:00
Gerald Pfeifer 4e60df85d8 gdi32: Avoid compiler warning in WineEngGetGlyphOutline(). 2007-10-15 17:50:17 +02:00
Huw Davies bc2a4dbee0 gdi32: Try to load Wine's TrueType fonts from the build directory. 2007-10-15 11:28:31 +02:00
Huw Davies e5df622ff3 gdi32: Don't load Wine's bitmap-only TrueType fonts. 2007-10-15 11:28:26 +02:00
Huw Davies 6ee7182ebb gdi32: Factor out the code to call FT_Load_Sfnt_Table. 2007-10-15 11:10:32 +02:00
Huw Davies 36db3630ec gdi32: Fixed a misplaced break. 2007-10-05 10:23:54 +02:00
Huw Davies 05bb6f6ce4 gdi32: Let the WINE_GGO_GRAY16_BITMAP case load a bitmap. 2007-10-03 11:01:21 +02:00
Huw Davies 70c212937a gdi32: Only cache the glyph metrics when rendering to a monochrome bitmap or when just retrieving the metrics. 2007-10-03 11:01:15 +02:00
Huw Davies 5af70f49c6 gdi32: TrueType fonts from the data directory should be added to the registry. 2007-10-03 11:01:10 +02:00
Dmitry Timoshkov 5b8f591192 gdi32: Prefer a Microsoft cmap table over other platform ones. 2007-10-02 12:28:28 +02:00
Alexandre Julliard 161821155d gdi32: Fix typo in FIXME (spotted by Rob Shearman). 2007-09-27 18:05:57 +02:00
Alexandre Julliard 3363d65f16 gdi32: Move the generic part of FontIsLinked() to font.c. 2007-09-26 20:21:34 +02:00
Alexandre Julliard 543270dfb5 gdi32: Don't pass a DC handle to WineEngGetFontUnicodeRanges. 2007-09-26 20:17:13 +02:00
Dmitry Timoshkov b0d1590def gdi32: Use symbolic names for font tags. 2007-09-20 15:54:19 +02:00
Mikolaj Zalewski c6efacd86a gdi32: Return the correct font type, ntmFlags and PitchAndFamily for Type1 fonts. 2007-09-17 14:37:44 +02:00
Mikolaj Zalewski baee27c69c gdi32: Implement AddFontMemResourceEx (based on a patch of Byeong-Sik Jeon). 2007-09-17 14:14:27 +02:00
Mikolaj Zalewski 66cf4f7d53 gdi32: Store child font links as pointers to struct Face instead of filename/index. 2007-09-17 14:13:46 +02:00
Dmitry Timoshkov 4fb82e3783 gdi32: Use lower case font dir name to match unix directory layout. 2007-09-12 11:33:11 +02:00
Aric Stewart 80cc1af347 gdi32: Allocate our glyph metrics in a 128 index chunk sparse array. 2007-08-30 17:02:48 +02:00
Alexandre Julliard 1476e34645 gdi32: Add separate functions for releasing/freeing DCs to replace the standard GDI ones.
This should make it possible to use a different locking mechanism for DCs.
2007-08-21 21:37:40 +02:00
Dmitry Timoshkov 2f71832ac9 gdi32: Also print a readable table name in the failure notice. 2007-08-02 12:18:42 +02:00
Dmitry Timoshkov 991d2d2632 gdi32: Make GetFontData traces more readable. 2007-07-31 20:50:51 +02:00
Dmitry Timoshkov cfe289e69d gdi32: Do not report an error if a requested to add font is already loaded. 2007-07-11 12:01:21 +02:00
Alexandre Julliard 24a55f3862 configure: Merge the libfreetype existence check with the soname check. 2007-07-09 22:43:20 +02:00
Huw Davies 7495d81495 gdi32: Using a bitmap font as the fallback sans serif is a very bad idea. 2007-07-05 19:54:52 +02:00
Alexandre Julliard ccd5f28429 configure: Make the libfontconfig soname check depend on the header check. 2007-07-02 19:42:52 +02:00
Alexandre Julliard 5a95cfbd9c configure: Export the shared library extension instead of hardcoding .so. 2007-07-02 14:35:05 +02:00
Michael Stefaniuc 3f5fc520b5 gdi32: Multi-character character constants aren't portable as their behaviour is compiler dependent according to the C standard. Found by sparse. 2007-06-26 11:57:51 +02:00
Dmitry Timoshkov bdfef82348 gdi32: AddFontResource should return a number of added font faces. 2007-05-04 13:42:47 +02:00
Dmitry Timoshkov 71929ffc4d gdi32: Handle errors in WineEngAddFontResourceEx. 2007-05-04 13:42:39 +02:00
Aric Stewart ec9f755086 gdi32: GetGlyphOutline needs to look at linked fonts as well. 2007-05-03 14:22:31 +02:00
Aric Stewart 1e4e99a295 gdi32: Make the comparison for system link font replacement not case sensitive. 2007-04-20 13:04:46 +02:00
Felix Nawothnig f73d7d07c8 gdi32: Properly handle negative font widths. 2007-04-02 11:18:38 +02:00
Ken Thomases df605c0ac3 Revert "gdi32: Disable the freetype mmap sharing on Mac OS.".
This reverts ae9f68dec9 commit.  Because
of commit 4e6860433e which extracts the
constituent fonts from Mac suitcase fonts, we can use mmap on font
files on the Mac.
2007-03-22 11:28:10 +01:00
Andrew Talbot 453cb25c1b gdi32: Replace inline static with static inline. 2007-03-21 11:55:44 +01:00
Dmitry Timoshkov 520aa9f548 winex11.drv: In the case requested glyphs do not present in the font fail gracefully instead of asserting. 2007-03-19 12:16:57 +01:00
Dmitry Timoshkov bd07f3f39e gdi32: Add a GetTextMetrics test, make it pass under Wine. 2007-03-15 13:09:56 +01:00
Aric Stewart 33eefa24dc gdi32: Search SystemLinked fonts when looking for a valid replacement. 2007-03-07 12:16:17 +01:00