Dmitry Timoshkov
85b42085a4
gdi32/tests: Fix DIB tests compilation with __WINESRC__ defined.
2013-10-16 11:41:21 +02:00
Dmitry Timoshkov
120ee4e058
gdi32/tests: Fix DC tests compilation with __WINESRC__ defined.
2013-10-16 11:41:21 +02:00
Dmitry Timoshkov
dd579e4c78
gdi32/tests: Fix brush tests compilation with __WINESRC__ defined.
2013-10-16 11:41:20 +02:00
Dmitry Timoshkov
c99b264300
gdi32/tests: Fix bitmap tests compilation with __WINESRC__ defined.
2013-10-16 11:41:20 +02:00
Dmitry Timoshkov
352c8d0215
tools/winapi: Remove OLDFONTENUMPROC from the list of tested types.
2013-10-16 11:41:20 +02:00
Frédéric Delanoy
28be1f7853
gdi32: Use BOOL type where appropriate.
2013-10-14 10:44:31 +02:00
Frédéric Delanoy
98e4c98eff
gdi32: Use BOOL type where appropriate.
2013-10-10 10:44:45 +02:00
Akihiro Sagawa
0b58ab7ac9
gdi32/tests: Skip linked font like SimSun-ExtB in fixed-pitch font selection.
2013-10-09 10:08:06 +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
Frédéric Delanoy
3b2f85e0b6
gdi32/tests: Use BOOL type where appropriate.
2013-10-03 12:54:23 +02:00
Akihiro Sagawa
042b39a82b
gdi32: Fix the B spacing value of empty glyph.
2013-10-02 20:17:03 +02:00
Michael Stefaniuc
0e681027a2
tests: Compile the tests by default with -D__WINESRC__.
2013-10-02 11:04:02 +02:00
Akihiro Sagawa
db86409db6
gdi32: Return fake BBox when requesting empty glyph metrics.
2013-10-01 19:26:17 +02:00
Akihiro Sagawa
b138c36c11
gdi32: Fix empty glyph handling in the dib driver.
2013-10-01 19:26:11 +02:00
Akihiro Sagawa
24e0e4d150
gdi32/tests: Fix copy&paste issues related to gmBlackBoxY.
2013-10-01 19:25:25 +02:00
Francois Gouget
d3672524ed
Assorted spelling fixes.
2013-10-01 19:09:08 +02:00
Akihiro Sagawa
e2bce62a6d
gdi32: Return GDI_ERROR when requested empty glyph bitmaps.
2013-09-26 19:56:57 +02:00
Akihiro Sagawa
31a6fce46b
gdi32: Fix empty glyph handling.
2013-09-23 20:32:28 +02:00
Akihiro Sagawa
cc7b39681d
gdi32/tests: Add more empty glyph tests.
2013-09-23 20:32:23 +02:00
Michael Stefaniuc
7589bbeee4
gdi32: Avoid using CONST.
2013-09-23 11:53:59 +02:00
Aric Stewart
3f4ef58b0f
gdi32: ABC value signs remain the same despite any changes in layout direction or viewport.
2013-09-12 21:31:09 +02:00
Alexandre Julliard
69abf20fcd
gdi32: Add a check for overflow in DIB dimensions.
2013-09-11 18:33:06 +02:00
Alexandre Julliard
08e82d4686
gdi32: Add more helpers for converting font sizes to logical coordinates.
2013-09-11 18:33:05 +02:00
Aric Stewart
4a300d2423
gdi32: GetCharWidth32A/W return positive widths for all layouts and various DC transforms.
2013-09-11 18:33:04 +02:00
Aric Stewart
5aa1f6b7a5
Unicode Private Use Area is also rotated by tategaki.
2013-09-09 22:09:58 +02:00
Ralf Habacker
39629a3d35
gdi32: Fixed Rectangle() rotation with GM_ADVANCED graphics mode in dib driver.
2013-09-05 20:58:24 +02:00
Huw Davies
774f57ca24
gdi32/tests: Add vdmx tests.
2013-08-28 16:14:40 +02:00
Huw Davies
7310bdb498
gdi32/tests: Mark some tests as exact.
2013-08-28 16:14:40 +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
Huw Davies
18edb16ace
gdi32/tests: Add an option to match metrics exactly.
2013-08-28 16:14:38 +02:00
Huw Davies
820c14cafc
gdi32/tests: Separate out the metrics checking code.
2013-08-28 16:14:38 +02:00
Huw Davies
2f76829c84
gdi32/tests: Split write_ttf_file() into a resource loader and tmp file writer.
2013-08-28 16:14:37 +02:00
Michael Stefaniuc
4f94913e04
gdi32/tests: Replace FIELD_OFFSET with offsetof for the sake of consistency.
2013-08-19 13:48:43 +02:00
Michael Stefaniuc
14e20162f9
gdi32/tests: Use offsetof instead of sizeof on structs with VLA.
2013-08-19 13:30:43 +02:00
Michael Stefaniuc
da425748bb
gdi32/tests: Use the standard way of allocating a struct with VLA on the stack.
2013-08-19 13:30:11 +02:00
Alexandre Julliard
87c2581c54
gdi32: Use Microsoft and Unicode encodings in priority for font names.
2013-08-16 19:11:33 +02:00
Ken Thomases
1f2d556373
gdi32: Link against AppKit on the Mac to avoid later crash in the Mac driver.
2013-08-15 16:12:58 +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
Huw Davies
cf9cb6c118
gdi32: Ignore max_extent if nfit is NULL.
2013-07-22 17:16:04 +02:00
André Hentschel
20bf02910b
gdi32: Remove superfluous cast.
2013-07-01 19:51:23 +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
a973df3324
gdi32: Fix off-by-one error in the extent of arcs when the size is even.
2013-07-01 19:51:14 +02:00
Alexandre Julliard
e4300d6165
gdi32: Cache the font smoothing parameters.
2013-06-24 21:52:28 +02:00
Marcus Meissner
ff1bd6da35
gdi32: Close handle in mfdrv (Coverity).
2013-06-24 11:46:40 +02:00
Marcus Meissner
1cf9939dc0
gdi32: Close handle in error path (Coverity).
2013-06-24 11:46:34 +02:00
Aric Stewart
37d216cc56
gdi32/tests: Add a test case for vertical fonts enumeration order.
2013-06-20 22:14:35 +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
Dmitry Timoshkov
924fad9d25
gdi32: ExtSelectClipRgn(hdc, 0, RGN_DIFF) is supposed to fail.
2013-06-18 10:40:34 +02:00
Dmitry Timoshkov
705a0f0238
gdi32: Scale default GUI fonts to match screen resolution changes.
2013-06-17 19:30:49 +02:00
Dmitry Timoshkov
6834a44dc4
gdi32/tests: Add a test for default font height scaling with screen resolution changes.
2013-06-17 19:30:49 +02:00
Dmitry Timoshkov
288f3be439
gdi32/tests: Skip the bitmap font max width test on not 96 dpi resolutions.
2013-06-17 19:30:48 +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
Matěj Laitl
84c07af48e
gdi32: More specific error messages in osmesa opengl initialization.
2013-05-30 20:19:32 +02:00
Aric Stewart
3108f3cf3d
gdi32/tests: Do not try to test OS/2 win metrics on non-windows fonts.
2013-05-29 18:12:54 +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
Aric Stewart
adfa3c0c57
gdi32/tests: Update the vertical font to be a proper windows vertical font.
2013-05-20 12:06:21 +02:00
Akihiro Sagawa
8f8363ede6
gdi32: Ignore the lfHeight value when it exceeds the limit.
2013-05-08 14:29:06 +02:00
Alexandre Julliard
100806e473
configure: Use the pkg-config helper macro for freetype.
2013-05-03 20:45:32 +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
Alexandre Julliard
31f0079f1c
gdi32: Convert the edges list to a standard list in CreatePolyPolygonRgn.
2013-04-23 15:34:53 +02:00
Alexandre Julliard
6a9b775f36
gdi32: Add helper functions to manage blocks of points in CreatePolyPolygonRgn.
2013-04-22 21:57:32 +02:00
Alexandre Julliard
a34c6f436d
gdi32: Replace some macros by inline functions in the region code.
2013-04-22 21:40:05 +02:00
Sam Edwards
147765a505
gdi32: Prevent possible buffer overflows in get_glyph_outline.
2013-04-19 10:42:36 +02:00
André Hentschel
741f7b6f0c
gdi32: Copy gamma ramp validation from winex11 to make it driver independent.
2013-04-17 16:31:31 +02:00
Akihiro Sagawa
f50e649578
gdi32/tests: Fix tests for fixed-pitch full-width character advance. It's double of tmAveCharWidth.
...
For instance, 19 ppem "VL Gothic" on Windows, the advance value is 10
for half-width characters, but 18 for full-width characters. In this
case, tmAveCharWidth is 9. Thus using tmAveCharWidth is reasonable.
2013-04-04 19:39:00 +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
2f48b12c57
gdi32: Use the Mac driver by default.
2013-04-02 12:47:28 +02:00
Huw Davies
5713311657
gdi32: Printer drivers don't use the character extra spacing if lpdx is supplied.
2013-03-26 17:07:37 +01:00
Dmitry Timoshkov
8744c10a38
gdi32: Add support for disk-based metafiles to GetMetaFileBitsEx.
2013-03-25 13:56:09 +01: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
Alexandre Julliard
eaf78eadf0
gdi32/tests: Define the required Windows version before including anything.
2013-02-18 14:51:04 +01:00
Dmitry Timoshkov
e069662c0c
gdi32: SelectClipPath should update actual clipping region for a EMF DC.
2013-02-15 11:50:32 +01:00
Dmitry Timoshkov
88b9ae1ec2
gdi32: ExcludeClipRect should update actual clipping region for a EMF DC.
2013-02-14 11:14:47 +01:00
Dmitry Timoshkov
47b89a8fac
gdi32: IntersectClipRect should update actual clipping region for a EMF DC.
2013-02-14 11:14:45 +01:00
Dmitry Timoshkov
756736ae42
gdi32: OffsetClipRgn should update actual clipping region for a EMF DC.
2013-02-14 11:14:43 +01:00
Dmitry Timoshkov
498b18f25f
gdi32: Add more EMF clipping tests.
2013-02-14 11:14:41 +01:00
Dmitry Timoshkov
9a2688e690
gdi32: Make sure that actual clipping region is updated for a EMF DC.
2013-02-13 16:13:54 +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
Alexandre Julliard
0d7108c629
gdi32: Return the correct module handle for the initial display driver load.
2013-02-06 12:21:33 +01:00
Dmitry Timoshkov
753c9362c1
gdi32: Add a bunch of tests for CreateDC/ResetDC with a custom DEVMODE.
2013-02-05 10:56:47 +01:00
Dmitry Timoshkov
c7d33e1d44
gdi32: Add support for 16-bit QUERYESCSUPPORT queries.
2013-02-05 10:54:23 +01:00
Stefan Leichter
83846cd131
gdi32: Add stub for GetFontResourceInfoW.
2013-01-22 20:02:00 +01:00
Alexandre Julliard
f496a5a0e6
gdi32: Fix copy/paste typo in get_char_positions_indices.
2013-01-22 12:13:19 +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
8681774a4f
gdi32: Support for hidden flag of CreateScalableFontResource.
2013-01-15 14:30:35 +01:00
Alexandre Julliard
46532e8d8a
gdi32: Add support for .fot files in RemoveFontResource.
2013-01-15 14:30:35 +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
227fc26e63
gdi32: Use the correct physdev for each driver call (Coverity).
2012-12-27 20:53:25 +01:00
Alexandre Julliard
57f84bc7bb
gdi32: Avoid duplicate computation of text extents in ExtTextOut.
2012-12-20 15:08:31 +01:00
Alexandre Julliard
0da8c0d92e
gdi32: Compute the extents of the whole string at once in ExtTextOut.
2012-12-20 14:32:58 +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
1c2f23cf2f
gdi32: Add helper functions for GetTextExtentExPoint and fix handling of text justification.
2012-12-18 19:21:44 +01:00
Andrew Talbot
0653f7a64d
gdi32: Indentation fix.
2012-12-17 11:48:03 +01:00
Alexandre Julliard
5215895a11
gdi32: Support wrongly ordered rectangles in RectVisible.
2012-12-14 17:37:41 +01:00
Alexandre Julliard
456b4c876e
gdi32: Add a helper function to order the points of a rectangle.
2012-12-14 17:37:33 +01:00
Alexandre Julliard
ff5d68ccb2
gdi32: Fix handling of rotation matrices in GetGlyphOutline.
2012-12-14 13:12:19 +01:00
Alexandre Julliard
351e58318a
gdi32: Fix text justification to properly handle logical coordinates.
2012-12-11 20:45:38 +01:00
Alexandre Julliard
a3cf48afad
gdi32: Add a level of pointers to the glyph cache to avoid the need for locking individual glyphs.
2012-12-11 12:03:33 +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
Francois Gouget
166e7c7381
gdi32: Make make_rgb_colorref() static.
2012-12-07 12:35:29 +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
491123e17b
gdi32: Support getting character codes instead of glyphs in ExtTextOut for the path driver.
2012-12-05 17:46:53 +01:00
Alexandre Julliard
78626cdbaa
gdi32: Support caching glyphs by character code and not only by glyph index.
2012-12-05 17:46:47 +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
3a4864714d
gdi32: Don't copy unnecessary rows when shrinking in DELETESCANS mode.
2012-12-03 18:24:46 +01:00
Alexandre Julliard
db3a8d6c0c
gdi32: Avoid binary ROPs when shrinking in DELETESCANS mode.
2012-12-03 18:24:46 +01:00
Alexandre Julliard
6f6e919e2b
gdi32: Avoid binary ROPs when stretching in DELETESCANS mode.
2012-12-03 18:24:45 +01:00
Alexandre Julliard
2d3385eec9
gdi32: Avoid computing grayscale glyph intensities when not needed.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
abdce5c2c8
gdi32: Use the faster memset for vertical gradients.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
d10d95608c
gdi32: Make blend_subpixel inline.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
a796ad5ed8
gdi32: Avoid creating a copy of the pattern bits for the R2_COPYPEN case.
2012-11-29 19:40:19 +01:00
Alexandre Julliard
7339308e16
gdi32: Add faster implementation of the pattern_rects primitive when we don't need an AND mask.
2012-11-29 19:40:13 +01:00
Alexandre Julliard
2aff4696b6
gdi32: Add assembly helpers for filling solid rectangles.
2012-11-29 12:31:13 +01:00
Alexandre Julliard
cb7917f9c8
gdi32: Add faster implementations of the solid_rects primitive for the common case of R2_COPYPEN.
2012-11-29 12:17:55 +01:00
Alexandre Julliard
6050a025bb
gdi32: Add a font glyph cache in the DIB engine.
2012-11-28 12:22:40 +01:00
Alexandre Julliard
4ad5287496
gdi32: Fully reset the DC state before deleting it.
2012-11-27 19:45:30 +01:00