Vincent Povirk
d4f4c76bc6
gdiplus: Fix leak in png metadata reader.
2015-04-07 15:09:40 +09:00
Andrew Eikum
1d5914b777
gdiplus: Avoid unnecessary pre-multiplied alpha conversions in GdipDrawImagePointsRect.
...
We can avoid doing a pre-multiplied alpha conversion by detecting
whether we need to perform any graphics operations ahead of time.
2015-04-06 12:04:15 +09:00
Michael Stefaniuc
e81ff99c72
gdiplus: The result of a comparison is already a BOOL.
2015-04-01 17:02:34 +09:00
Vincent Povirk
3b51859871
gdiplus: Add support for reading PNG tEXt metadata.
2015-03-27 13:05:17 +09:00
Vincent Povirk
9c579023f0
gdiplus: Fix blend_colors when alpha channel differs.
...
When picking a color halfway between 100% white (0xffffffff) and fully
transparent (0x00000000), the result was 50% opaque 50% grey
(0x80808080) when it should really be 50% opaque white (0x80ffffff).
This had a tendency to create grey fringes on things. The fix is to
weight the non-alpha components based on how much they contribute to
the final alpha value.
2015-03-25 19:46:38 +09:00
Vincent Povirk
6b97abf930
gdiplus: Handle large input rect in GdipMeasureCharacterRanges.
2015-03-24 14:06:13 +09:00
Vincent Povirk
6ee26aca16
gdiplus: Apply page scale to pen thickness.
2015-03-24 14:06:02 +09:00
Sebastian Lackner
2af09b49a8
gdiplus: Add missing returns in initialize_decoder_wic (Coverity).
2015-03-23 16:20:57 +09:00
Vincent Povirk
137128fa50
gdiplus: Fonts in UnitWorld shouldn't be scaled to the page unit.
2015-03-23 16:20:39 +09:00
Vincent Povirk
e9d9ef591b
gdiplus: GdipGetDC doesn't set the alpha channel for a 32-bit dib.
2015-03-19 14:07:41 +09:00
Vincent Povirk
2827a1a460
gdiplus: Fix leak in test in todo_wine case.
2015-03-19 14:05:35 +09:00
Vincent Povirk
0bec10bc3d
gdiplus: Access bitmaps by row in alpha_blend_bmp_pixels.
2015-03-18 19:38:10 +09:00
Vincent Povirk
08c1e6cd96
gdiplus: Do not access Bitmap bits when drawing transparent pixels.
2015-03-18 19:38:07 +09:00
Piotr Caban
59eef10f34
gdiplus: Fixed palette flags setting.
2015-03-16 15:03:21 +09:00
Piotr Caban
3ece08ff4d
gdiplus: Add pixel format test for transparent non-animated gif.
2015-03-13 21:52:53 +09:00
Piotr Caban
a3822f973e
gdiplus/tests: Add gif frames composition tests.
2015-03-13 21:52:49 +09:00
Piotr Caban
821932dab9
gdiplus: Fix animated gif frames composition.
2015-03-13 21:52:48 +09:00
Piotr Caban
799362a0b7
gdiplus: Convert animated gif to PixelFormat32bppARGB on load.
2015-03-13 21:52:46 +09:00
Piotr Caban
b3a9c698e8
gdiplus: Don't store stream reference in GpImage, it's done by IWICBitmapDecoder.
2015-03-13 21:52:45 +09:00
Piotr Caban
a181997855
gdiplus: Don't create new instance of IWICBitmapDecoder to encode every frame of animation.
2015-03-13 21:52:40 +09:00
Piotr Caban
4c6427d080
gdiplus: Don't use CoCreateInstance in encode_image_wic.
2015-03-06 20:31:44 +09:00
Piotr Caban
afe3422849
gdiplus: Don't use CoCreateInstance in get_palette function.
2015-03-06 20:31:42 +09:00
Piotr Caban
b03c60d85c
gdiplus: Don't use CoCreateInstance in decode_image_wic.
2015-03-06 20:31:40 +09:00
Changhui Liu
5fa7402a36
gdiplus: Fix get_graphics_bounds when window origin point changed.
2015-01-19 18:47:47 +01:00
Michael Stefaniuc
0c91032f3a
gdiplus/tests: Actually test a GdipCreateFromHDC call (PVS-Studio).
2015-01-16 16:52:52 +01:00
André Hentschel
e63b0a0a45
gdiplus/tests: Fix compiler warnings with flag -Wunused-macros.
2014-12-11 11:55:56 +01:00
André Hentschel
1d0ff2ded3
gdiplus: Fix compiler warnings with flag -Wunused-macros.
2014-12-10 13:31:11 +01:00
Vincent Povirk
4361cbabd7
gdiplus: Fix error when drawing from a rectangle outside bitmap bounds.
2014-10-30 11:59:59 +09:00
Huw Davies
6df5ce7c9e
gdiplus: Blend in the background colour.
2014-10-29 20:31:01 +09:00
André Hentschel
f1ed09fdd9
gdiplus: Adjust identical conditions (PVS-Studio).
2014-10-28 14:05:08 +09:00
Vincent Povirk
3fc386fc86
gdiplus: Process a row instead of a column in inner conversion loop.
2014-09-22 19:10:46 +02:00
Vincent Povirk
57f1d4489f
gdiplus: Use integer math to apply color matrices.
2014-09-18 16:28:17 +02:00
Vincent Povirk
76a96b70f7
gdiplus: Skip resampling when drawing a bitmap with no scaling/rotation.
2014-09-18 16:28:06 +02:00
Gerald Pfeifer
42afdebc43
gdiplus: Remove three unused constants.
2014-08-25 20:40:16 +02:00
Qian Hong
deb1f047a7
gdiplus: Set outer pointer to NULL when image loading functions fail.
2014-07-11 16:59:38 +02:00
Vincent Povirk
60f558876e
gdiplus: Account for transforms when calculating hdc bounds.
2014-07-09 21:16:35 +02:00
Vincent Povirk
efc1d791a3
gdiplus/tests: Fix image leak in graphics test.
2014-04-30 09:33:55 +02:00
Nikolay Sivov
e9633ef220
gdiplus: Simplify GdipResetImageAttributes(), fix remap table leak (Valgrind).
2014-04-25 14:03:33 +02:00
Nikolay Sivov
d68dde3751
gdiplus/tests: Fix some leaks when running with Wine (Valgrind).
2014-04-25 14:03:31 +02:00
Nikolay Sivov
62502d0670
gdiplus: Properly delete a DC.
2014-04-21 10:40:09 +02:00
Vincent Povirk
4def66c11c
gdiplus: Prevent NULL StringFormat in gdip_format_string.
2014-04-14 20:19:01 +02:00
Nikolay Sivov
d78a0612ed
gdiplus: Fix image attributes leak (Coverity).
2014-03-27 12:06:03 +01:00
Vincent Povirk
500a96d079
gdiplus: Copy palettes with bitmaps.
2014-03-25 10:56:17 +01:00
Vincent Povirk
392d3b657a
gdiplus: Remove a useless comparison.
2014-03-25 10:56:09 +01:00
Vincent Povirk
526143cb05
gdiplus: Limit image output to the bounds of the Graphics object.
2014-03-25 10:56:04 +01:00
Frédéric Delanoy
73288e1100
gdiplus: Use BOOL type where appropriate.
2014-03-18 11:39:13 +01:00
Vincent Povirk
9a5375989d
gdiplus: Fix an overzealous optimization.
2014-03-14 11:31:19 +01:00
Vincent Povirk
06555a96ad
gdiplus: Account for negative height/width in GdipDrawImagePointsRect.
2014-03-14 11:31:14 +01:00
Dmitry Timoshkov
865b503af8
gdiplus/tests: Mark some GdipGetPropertyItem test results as broken under XP.
2014-03-06 13:36:04 +01:00
Vincent Povirk
78459aea0d
gdiplus: Improve GdipFillRectangles parameter validation.
2014-02-20 11:18:24 +01:00
André Hentschel
374b449fdd
gdiplus/tests: Remove assertions in graphics tests.
2014-02-12 19:15:05 +01:00
Francois Gouget
d371225ec2
gdiplus: Make METAFILE_GetEmfType() static.
2014-01-30 15:00:25 +01:00
Vincent Povirk
2d487e22d6
gdiplus: Move metafile functions to metafile.c.
2014-01-29 12:38:46 +01:00
Vincent Povirk
6332297bf5
gdiplus: Add option to save metafile tests to files.
2014-01-27 14:13:32 +01:00
Vincent Povirk
3f8864ea82
gdiplus: Add test for page transform in metafiles.
2014-01-27 14:13:30 +01:00
Vincent Povirk
7c12d889d4
gdiplus: Implement SetPageTransform playback.
2014-01-17 11:00:30 +01:00
Vincent Povirk
6518edfa5f
gdiplus: Implement writing SetPageTransform records.
2014-01-17 11:00:28 +01:00
Vincent Povirk
55ad831598
gdiplus: Fix recording metafile bounds/dpi reporting.
2014-01-17 11:00:24 +01:00
Vincent Povirk
51b873b3ca
gdiplus: Mark the Graphics object as busy before freeing it.
2014-01-06 16:02:40 +01:00
Alexandre Julliard
99ef0d6ff0
makefiles: Get rid of the MAKE_TEST_RULES variable.
2014-01-02 12:13:16 +01:00
Alexandre Julliard
5e7416e5c8
makefiles: Get rid of the MAKE_DLL_RULES variable.
2014-01-02 12:08:18 +01:00
Marcus Meissner
ba8cacebf3
gdiplus: Free the correct pointer (Coverity).
2014-01-01 19:59:30 +01:00
Vincent Povirk
68b60c0ddd
gdiplus: Add metafile test for FillRectangles.
2013-11-25 15:15:52 +01:00
Vincent Povirk
681cd545ea
gdiplus: Set world transform when drawing metafiles.
2013-11-25 15:15:52 +01:00
Vincent Povirk
fc560b2121
gdiplus: Implement FillRects record playback.
2013-11-25 15:15:52 +01:00
Vincent Povirk
c491d52821
gdiplus: Write FillRects records to metafiles.
2013-11-25 15:15:52 +01:00
Vincent Povirk
8babdc860a
gdiplus: Forward GdipFillRectangle to GdipFillRectangles.
2013-11-25 15:15:52 +01:00
Vincent Povirk
fbcbd09bb3
gdiplus: Fix StringFormatFlagsLineLimit handling.
2013-11-20 11:25:04 +01:00
Frédéric Delanoy
4cc3705f66
gdiplus: Use BOOL type where appropriate.
2013-11-19 18:47:18 +01:00
Vincent Povirk
1202e9af56
gdiplus: Allow excluding from infinite regions.
2013-11-18 11:15:12 +01:00
Dmitry Timoshkov
dd545c3e37
gdiplus: Use GdipFree instead of HeapFree to free memory allocated with GdipAlloc.
2013-11-15 12:01:20 +01:00
Dmitry Timoshkov
4bca12c0db
gdiplus: Slightly simplify write_path_types.
2013-11-15 12:01:16 +01:00
Dmitry Timoshkov
c9f8f41d18
gdiplus/tests: Add a test for bezier data returned by GdipGetRegionData.
2013-11-14 10:37:00 +01:00
Dmitry Timoshkov
4b256191a0
gdiplus/tests: Reset the buffer contents before each GdipGetRegionData test and check the tail of the returned data.
2013-11-14 10:36:58 +01:00
Dmitry Timoshkov
c11476aeb8
gdiplus/tests: Convert expect_float() to macro to make failure messages print correct line numbers.
2013-11-14 10:36:57 +01:00
Dmitry Timoshkov
56a6500721
gdiplus: Check whether region path points really fit into shorts.
2013-11-13 11:27:24 +01:00
Dmitry Timoshkov
761391f156
gdiplus: Add a check for passed buffer size to GdipGetRegionData.
2013-11-13 11:26:24 +01:00
Dmitry Timoshkov
8dc170e2ca
gdiplus/tests: Test GdipGetRegionData behaviour with an integer path that can't be stored as an array of shorts.
2013-11-13 11:26:20 +01:00
Dmitry Timoshkov
619e968314
gdiplus/tests: Add some invalid parameter tests for GdipGetRegionData.
2013-11-13 11:26:14 +01:00
Frédéric Delanoy
1787509111
gdiplus/tests: Use BOOL type where appropriate.
2013-11-13 11:22:01 +01:00
Dmitry Timoshkov
f5d807b7d7
gdiplus: Get rid of no longer needed path and region fields.
2013-11-12 14:14:46 +01:00
Dmitry Timoshkov
b0da542210
gdiplus: Determine type of the path at the time the region data are written instead of the path creation time.
2013-11-12 14:14:17 +01:00
Dmitry Timoshkov
2bbd179ea4
gdiplus: Add test for data returned by GdipGetRegionData for a translated integer region.
2013-11-08 16:29:43 +01:00
Dmitry Timoshkov
108a633677
gdiplus: Use flags 0 for an empty path in region to follow Windows7+ behaviour.
2013-11-08 16:29:43 +01:00
Dmitry Timoshkov
9797afd003
gdiplus/tests: Fix the test for flags of an empty region.
2013-11-08 16:29:43 +01:00
Dmitry Timoshkov
7dfbadec67
gdiplus/tests: Clean up the use of macros in the region tests.
2013-11-08 16:29:43 +01:00
Dmitry Timoshkov
394d4b07e6
gdiplus: Avoid not necessary memory allocations in GdipCreateRegionPath.
2013-11-08 16:29:43 +01:00
Dmitry Timoshkov
f204aab17f
gdiplus: Use same rounding formula that is used to decide whether a path should be stored as an array integers.
2013-11-08 16:29:43 +01:00
Dmitry Timoshkov
e7f6d77919
gdiplus: Implement GdipPrivateAddFontFile.
2013-11-06 12:01:55 +01:00
Dmitry Timoshkov
6278f5ffdc
gdiplus/tests: Add more checks to the GdipGetPathData test.
2013-11-06 12:01:55 +01:00
Dmitry Timoshkov
d4db49efc2
gdiplus/tests: Use trace instead of printf.
2013-11-06 12:01:55 +01:00
Vincent Povirk
feef61743d
gdiplus: Use clip region in GdipFillPath.
2013-10-31 09:46:36 +01:00
Vincent Povirk
08b650202c
gdiplus: Use clip region in GdipDrawPath.
2013-10-31 09:46:29 +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
b528e01d85
gdiplus: Reimplement GdipCloneImage using GdipCloneBitmapArea for a bitmap.
2013-10-18 16:56:56 +02:00
Dmitry Timoshkov
df367c3399
gdiplus: Reimplement GdipCloneBitmapArea without using GdipBitmapLockBits.
2013-10-18 16:56:56 +02:00
Dmitry Timoshkov
4e14c45b8b
gdiplus/tests: Add a test for GdipCloneBitmapArea called on an already locked bitmap.
2013-10-17 10:47:09 +02:00
Dmitry Timoshkov
1c8d4aaa4b
gdiplus/tests: Fix tests compilation with __WINESRC__ defined.
2013-10-16 11:41:20 +02:00
Vincent Povirk
b14a4ca006
gdiplus: Properly set the gdi+ format to match the wic encoder's format.
2013-10-07 13:32:06 +02:00