Commit Graph

116 Commits

Author SHA1 Message Date
Clemens Tamme 260cbd022e gdiplus: Implement triangular line caps in widened paths.
Signed-off-by: Clemens Tamme <clemens.tamme@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-19 09:46:50 +02:00
Nikolay Sivov c89de1dd08 gdiplus: Use better naming for line alignment format field.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-28 18:40:13 +02:00
Ken Thomases a3f0a59132 gdiplus: Avoid infinite recursion in flatten_bezier().
If either of the recursive calls would have the same x2, y2, x3, and y3
arguments as the current call, the path is as flat as the precision of floats
allows.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-25 08:45:10 +02:00
Alex Henrie 046fc19cd1 gdiplus: Fix memory leak in format_string_callback error path.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-03 20:07:51 +01:00
Vincent Povirk 88168d4b3d gdiplus: Implement GdipIsOutlineVisiblePathPoint.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-21 13:38:18 +02:00
Vincent Povirk 96eac4876c gdiplus: Allow widening a "closed" line segment.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 09:16:56 +02:00
Louis Lenders 36fdc6abf1 gdiplus: GdipTransformPath should return Ok if matrix = NULL.
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-25 12:43:56 +09:00
Vincent Povirk 6a6aa3134d gdiplus: Fix GdipWidenPath transform for non-pixel pens.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-17 13:08:04 +09:00
Sebastian Lackner aa70a90c6e gdiplus: Do not use GdipAlloc and GdipFree in internal functions.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:44:22 +09:00
Marcus Meissner ba8cacebf3 gdiplus: Free the correct pointer (Coverity). 2014-01-01 19:59:30 +01:00
Vincent Povirk 2dbd0e1694 gdiplus: Implement remaining dash styles in GdipWidenPath. 2013-10-24 10:46:23 +02:00
Vincent Povirk 1c35dd6cb4 gdiplus: Implement GdipWidenPath for custom dashed lines. 2013-10-24 10:46:15 +02:00
Dmitry Timoshkov 6ab04040e5 gdiplus: GdipMeasureCharacterRanges should treat empty layout extents as infinite when StringFormatFlagsNoClip is specified.
Unlike GdipMeasureString which always treats empty layout extents as infinite.
2013-03-15 11:43:24 +01:00
Dmitry Timoshkov 22a7458a3f gdiplus: Avoid a devision by zero when a being added segment length is 0.
This sometimes happens after GdipAddPathLine + GdipWidenPath.
2013-02-18 14:51:04 +01:00
Andrew Talbot f8da0d3a1e gdiplus: Remove superfluous braces. 2012-11-28 20:14:41 +01:00
André Hentschel 31eef521e9 gdiplus: Fix order of GdipFrees (coverity). 2012-10-25 11:47:23 +02:00
Vincent Povirk 0b40c9cb41 gdiplus: Implement LineCapRound in GdipWidenPath. 2012-09-21 10:53:29 +02:00
Vincent Povirk 8871af7ea5 gdiplus: Properly set the first point to start when widening open figures. 2012-09-21 10:53:23 +02:00
Vincent Povirk 47c433de8c gdiplus: Implement LineCapSquare in GdipWidenPath. 2012-09-21 10:53:17 +02:00
Dmitry Timoshkov 3f35a11426 gdiplus: get_log_fontW helper requires a valid graphics object. 2012-08-27 19:49:42 +02:00
Dmitry Timoshkov 2e31f7a80a gdiplus: Fix font leak. 2012-08-27 19:49:41 +02:00
Dmitry Timoshkov 10c84dfe3b gdiplus: Rename roundr() to gdip_round() to make it clearer that it's an internal helper. 2012-08-21 11:47:11 +02:00
Vincent Povirk 12f1ed2b3e gdiplus: Accept a transformation matrix in GdipFlattenPath. 2012-07-12 14:07:39 -05:00
Vincent Povirk cbfc79aae5 gdiplus: Implement LineJoinMiterClipped and partially implement LineJoinMiter. 2012-07-12 14:07:33 -05:00
Vincent Povirk 697dd42ed2 gdiplus: Remove FIXME from GdipAddPathString. 2012-06-26 12:25:41 +02:00
Vincent Povirk fe000c773c gdiplus: Fix vertical alignment calculation in GdipAddPathString. 2012-06-22 14:09:47 +02:00
Vincent Povirk 3cde67e144 gdiplus: Don't position characters by glyph metrics in GdipAddPathString. 2012-06-22 14:09:46 +02:00
Vincent Povirk cae52d078a gdiplus: Scale all points in GdipAddPathString instead of the font. 2012-06-22 14:09:46 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Dmitry Timoshkov 5e4d64d18e gdiplus: Create 'const' friendly internal entries for font APIs. 2012-05-14 17:49:02 +02:00
Dmitry Timoshkov 2c93bf7e4e gdiplus: Retrieve LOGFONT from a GpFont using GdipGetLogFontW instead of accessing it directly. 2012-05-11 15:40:13 +02:00
Vincent Povirk 7b5af23604 gdiplus: Implement GdipWidenPath for closed figures. 2012-04-26 19:27:24 +02:00
Vincent Povirk 930cdab2e9 gdiplus: Add basic implementation of GdipWidenPath. 2012-04-26 19:27:17 +02:00
Vincent Povirk eef459968a gdiplus: Detect hotkey prefixes when drawing strings. 2012-03-26 12:41:28 +02:00
Vincent Povirk 1f6f84c7bb gdiplus: Don't add control points to the result in GdipFlattenPath. 2012-03-14 11:50:20 +01:00
Vincent Povirk 006e2d97b3 gdiplus: Fix center point calculation in GdipAddPathPie. 2011-11-08 18:19:18 +01:00
Austin English 3ac2c9eea0 gdiplus: Avoid shadowing a parameter. 2011-03-09 14:08:08 +01:00
Maarten Lankhorst b8a1e6c687 gdiplus: Implement GdipAddPathString. 2011-03-03 17:47:15 +01:00
Vincent Povirk 4fd76b0995 gdiplus: Fix error path in GdipAddPathRectangle. 2011-02-07 10:12:54 -06:00
Vincent Povirk cd3855f384 gdiplus: Allow adding rectangles with negative sizes to paths. 2011-02-07 10:12:33 -06:00
Austin English 5435fbba55 gdiplus: Add a stub for GdipWindingModeOutline. 2010-08-24 13:17:58 +02:00
Harry Jeffery 4faf80280c Fixed various spelling mistakes. 2010-07-26 13:34:20 +02:00
Vincent Povirk 221bde44de gdiplus: Add trace to unimplemented function in graphicspath.c. 2010-01-04 11:44:57 +01:00
Nikolay Sivov c562d444f5 gdiplus: Correctly forward to GdipAddPathPie. 2009-08-03 15:04:10 +02:00
Andrew Eikum 8d6ee56119 gdiplus: Stubs for GdipAddPathString and GdipAddPathStringI. 2009-06-01 16:16:06 +02:00
Vincent Povirk 0c71d5b3f7 gdiplus: Stub GdipWarpPath. 2009-05-14 17:23:15 +02:00
Vincent Povirk 8d5c833d25 gdiplus: Stub GdipWidenPath. 2009-05-14 17:23:10 +02:00
Nikolay Sivov 5c31643452 gdiplus: Implemented GdipIsVisiblePathPoint with tests. 2009-02-16 15:35:15 +01:00
Nikolay Sivov 8cb170126a gdiplus: Handle zero width/height in GdipAddPathPie. 2009-02-10 12:31:29 +01:00
Nikolay Sivov 7cddc57989 gdiplus: Added GdipAddPathCurve3/GdipAddPathCurve3I with tests. 2008-12-15 12:33:49 +01:00