Commit Graph

45 Commits

Author SHA1 Message Date
Vincent Povirk af500612f2 gdiplus: Implement recording/playback for TranslateWorldTransform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-15 12:55:05 +09:00
Vincent Povirk 690e0f269c gdiplus: Implement recording/playback for SetWorldTransform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:21 +09:00
Vincent Povirk cfae34a7e2 gdiplus: Implement recording/playback for RotateWorldTransform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:19 +09:00
Vincent Povirk 69a7c2c6a2 gdiplus: Implement recording/playback for MultiplyWorldTransform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:17 +09:00
Vincent Povirk d4d18aa511 gdiplus: Fix matrix append flag in metafile transform records.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:34:44 +09:00
Vincent Povirk a65718a3e7 gdiplus: Implement ResetWorldTransform metafile playback/recording.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 16:43:11 -05:00
Vincent Povirk 136d9e8c18 gdiplus: Implement metafile playback for ScaleWorldTransform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 16:43:07 -05:00
Vincent Povirk 271c2bd62c gdiplus: Implement metafile recording for ScaleWorldTransform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 16:43:05 -05:00
Vincent Povirk da31ddb797 gdiplus: Account for GDI+ drawing operations in the metafile frame.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:22:35 +09:00
Vincent Povirk 0f3db73628 gdiplus: Implement playback of Clear operations.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:22:30 +09:00
Vincent Povirk 5c6247f7e2 gdiplus: Implement writing Clear operation to metafiles.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:22:26 +09:00
Vincent Povirk 10516308a8 gdiplus: Clip metafile drawing to destination points.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:22:20 +09:00
Vincent Povirk a9e4e3b403 gdiplus: Implement GdipRecordMetafileStream.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 12:58:20 +09:00
Vincent Povirk 4ed1b4f5e8 gdiplus: Allow recording metafiles with a NULL frame.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 12:58:16 +09:00
Vincent Povirk 18e65a95a7 gdiplus: Fix bounds of recorded Metafile objects.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 12:58:01 +09:00
Vincent Povirk 2dc5685897 gdiplus: Placeable is optional in GdipCreateMetafileFromWmf.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 13:47:56 +09:00
Vincent Povirk c7bdc88812 gdiplus: Return Ok from GdipSetMetafileDownLevelRasterizationLimit.
Until we have a reason to use this value (application asks for it or
we're building the emf part of a dual emf+), there's no need to worry
about this.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 13:47:41 +09:00
Vincent Povirk 592533bd72 gdiplus: Use GdipGetMetafileHeaderFromEmf when opening metafiles.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-01 22:53:54 +09:00
Vincent Povirk 1735a7240e gdiplus: Use reference device to determine created metafile resolution.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-01 22:53:54 +09:00
Vincent Povirk 233f1c1b88 gdiplus: Add initial GdipGetMetafileHeaderFromEmf implementation.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-01 22:53:53 +09:00
Vincent Povirk 198acf7e8c gdiplus: Skip the EMR_HEADER record when looking for the EMF+ header.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-01 22:53:53 +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
Alistair Leslie-Hughes 94f6d069f2 gdiplus: GdipConvertToEmfPlus parameter succ is optional. 2015-07-10 21:44:49 +09:00
Frédéric Delanoy 73288e1100 gdiplus: Use BOOL type where appropriate. 2014-03-18 11:39:13 +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 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 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
Dmitry Timoshkov 4c4c661bc0 gdiplus: Implement GdipEnumerateMetafileDestPoint and GdipEnumerateMetafileDestPointI. 2013-05-06 15:55:22 +02:00
Dmitry Timoshkov 69d74ece53 gdiplus: Implement GdipEnumerateMetafileDestRect and GdipEnumerateMetafileDestRectI. 2013-05-06 15:55:21 +02:00
Vincent Povirk a424968482 gdiplus: Correct EMF record size calculation. 2013-03-13 11:29:17 +01:00
Vincent Povirk 6214e5b92c gdiplus: Also get a DC for drawing WMF images. 2013-03-13 11:29:10 +01:00
Vincent Povirk 91a3e5fc10 gdiplus: Reimplement GdipCreateMetafileFromEmf without using IPicture. 2012-11-01 10:50:45 +01:00
Dmitry Timoshkov a46c1f780a gdiplus: Use public ColorPalette structure to store image palette. 2012-07-17 13:09:39 +02:00
Vincent Povirk fda2fc7684 gdiplus: Implement GdipPlayMetafileRecord for EMF records. 2011-07-08 13:40:42 +02:00
Vincent Povirk 44c57121ea gdiplus: Implement GetDC for metafiles. 2011-07-08 11:26:14 +02:00
Vincent Povirk fd7475546b gdiplus: Stub GdipPlayMetafileRecord. 2011-07-08 11:26:06 +02:00
Vincent Povirk 698fddf99b gdiplus: Properly clean up the new metafile data. 2011-06-22 11:25:46 +02:00
Vincent Povirk fd9c5d7d01 gdiplus: Implement GdipEnumerateMetafileSrcRectDestPoints. 2011-05-23 11:16:06 +02:00
Vincent Povirk 11248262be gdiplus: Add test for metafile enumeration. 2011-05-23 11:15:48 +02:00
Vincent Povirk d436e51872 gdiplus: Add basic metafile recording support. 2011-05-23 11:15:41 +02:00