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