Commit Graph

606 Commits

Author SHA1 Message Date
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
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