Commit Graph

331 Commits

Author SHA1 Message Date
Vincent Povirk 3cd51c0acf gdiplus: Use the surround colors in path gradient rendering. 2012-03-15 19:56:20 +01:00
Vincent Povirk 5d64f16bec gdiplus: Add fixme's for unimplemented path gradient features. 2012-03-14 11:50:11 +01:00
Vincent Povirk 5ed5daf4da gdiplus: Do some actual color blending when drawing path gradients. 2012-03-14 11:50:07 +01:00
Vincent Povirk 703b31b2e8 gdiplus: Fill path gradients with a solid color. 2012-03-14 11:50:02 +01:00
Vincent Povirk dc3a08d840 gdiplus: Rewrite SOFTWARE_GdipFillRegion to call brush_fill_pixels less. 2012-03-13 10:27:22 +01:00
Dmitry Timoshkov 5fd16ddedc gdiplus: Implement GdipCreateMetafileFromEmf. 2012-03-12 16:37:26 +01:00
Dmitry Timoshkov b39425f3cf gdiplus: Create GDI bitmap only when needed. 2012-03-12 10:43:53 +01:00
Dmitry Timoshkov 0d7bc4b325 gdiplus: Create GDI brush only when needed. 2012-03-09 11:30:46 +01:00
Vincent Povirk aba9ddc4a0 gdiplus: Implement GdipDrawImagePoints. 2012-01-11 20:11:40 +01:00
André Hentschel 6b7ccdb734 gdiplus: Fix height calculation.
Spotted by Roman Shchekin.
2011-09-23 12:34:57 +02:00
Vincent Povirk 380abdeb10 gdiplus: Fix vertical string alignment. 2011-08-02 21:16:38 +02:00
Vincent Povirk ae6ce97db0 gdiplus: Don't use a gdi32 brush for semi-transparent hatch brushes. 2011-07-27 19:03:51 +02:00
Vincent Povirk 171e832839 gdiplus: Fix use of uninitialized memory. 2011-07-18 16:23:29 +02:00
Vincent Povirk 44c57121ea gdiplus: Implement GetDC for metafiles. 2011-07-08 11:26:14 +02:00
Vincent Povirk d59c3d45e3 gdiplus: Use DrawDriverString to draw the text in DrawString. 2011-06-28 16:52:21 -05:00
Vincent Povirk 6cc7e7f7c4 gdiplus: Implement GdipMeasureDriverString. 2011-06-28 16:46:16 -05:00
Vincent Povirk 9793ab9fa6 gdiplus: Implement DriverStringOptionsRealizedAdvance in software. 2011-05-24 11:56:53 +02:00
Vincent Povirk 11754452d2 gdiplus: Change the sign we use for origin.x in DrawDriverString.
Apparently characters whose black boxes extend to the left of the origin have
a negative x value, but characters whose black boxes extend above the origin
have a positive y value.
2011-05-24 11:56:46 +02:00
Vincent Povirk d436e51872 gdiplus: Add basic metafile recording support. 2011-05-23 11:15:41 +02:00
Vincent Povirk 64841aac83 gdiplus: Respect the CmapLookup flag in GDI32_GdipDrawDriverString. 2011-04-05 13:36:56 +02:00
Vincent Povirk 11f0662c60 gdiplus: Don't settle on a font size until absolutely necessary.
When we create a new font, we should store its height in a REAL field so
we don't have to round it. Further, when we calculate the width, we should
base the calculation on the metrics of a font at the height we will use, to
prevent rounding errors when the graphics transform will enlarge the font.
2011-04-05 13:36:56 +02:00
Vincent Povirk be0af56be3 gdiplus: Add a software implementation of GdipDrawDriverString. 2011-04-05 13:36:56 +02:00
Vincent Povirk 32baa8ba4e gdiplus: Add helper for translating GpFont to HFONT. 2011-04-05 13:36:56 +02:00
Gerald Pfeifer 25764d79c0 gdiplus: Initialize a variable in SOFTWARE_GdipFillRegion to avoid a compiler warning. 2011-04-04 14:55:10 +02:00
Vincent Povirk 15140a722e gdiplus: Add basic implementation of GdipDrawDriverString. 2011-04-01 10:48:25 +02:00
Vincent Povirk b3dfe973ad gdiplus: Add test for GdipSetTextRenderingHint and make it pass. 2011-03-29 12:37:03 +02:00
Vincent Povirk 19b71b035e gdiplus: Implement gamma adjustment. 2011-03-28 17:16:26 +02:00
Vincent Povirk 805f0321eb gdiplus: Implement color transforms. 2011-03-28 17:16:23 +02:00
Vincent Povirk 314ec7178d gdiplus: Select the font into the appropriate hdc in GdipMeasureString. 2011-03-18 16:05:09 +01:00
Vincent Povirk 504b7c34d6 gdiplus: Remove the gdi32 line gradient drawing code.
It's unused now.
2011-03-17 10:42:45 +01:00
Vincent Povirk 71eb248c30 gdiplus: Implement GdipFillRectangle based on GdipFillPath. 2011-03-17 10:42:32 +01:00
Vincent Povirk 5190f8a5f1 gdiplus: Use GdipFillPath to implement GdipFillPolygonI. 2011-03-17 10:42:22 +01:00
Vincent Povirk 86d55d43c5 gdiplus: Use GdipFillPath to implement GdipFillPolygon. 2011-03-17 10:42:17 +01:00
Vincent Povirk 2ce5be2ce3 gdiplus: Use GdipFillPath to implement GdipFillPie. 2011-03-15 17:14:06 +01:00
Vincent Povirk 4aa99eaf3b gdiplus: Use GdipFillPath to implement GdipFillEllipse. 2011-03-15 17:14:06 +01:00
Vincent Povirk b5c2015999 gdiplus: Add software implementation of GdipFillPath. 2011-03-15 17:14:06 +01:00
Vincent Povirk 833316f91d gdiplus: Call GdiAlphaBlend only once per GdipFillRegion call. 2011-03-15 17:14:06 +01:00
Vincent Povirk 77f5a07c1b gdiplus: Remove gdi32 fallback for bitmaps from GdipFillRegion.
We can always do a fill directly to the image bits when gdi32 can do it.
2011-03-15 17:14:06 +01:00
Vincent Povirk 4edff21ea2 gdiplus: Prefer to not use gdi32 for gradient and texture brushes. 2011-03-11 11:48:18 +01:00
Vincent Povirk 8a036abc5c gdiplus: Implement software rendering of texture brushes. 2011-03-11 11:48:08 +01:00
Vincent Povirk 2302e80cc9 gdiplus: Don't use gdi32 to scale or draw from outside bitmaps. 2011-03-11 11:47:50 +01:00
Vincent Povirk 8b6dafda45 gdiplus: Implement bilinear interpolation. 2011-03-11 11:47:34 +01:00
Vincent Povirk 51cf90d8ca gdiplus: Move bitmap interpolation into a separate function. 2011-03-11 11:47:32 +01:00
Vincent Povirk 5488ea1468 gdiplus: Implement tiling wrap modes. 2011-03-10 14:10:16 +01:00
Vincent Povirk d891a8c16c gdiplus: Apply image attributes to bitmaps before resampling them. 2011-03-10 14:10:16 +01:00
Vincent Povirk 870fdaf6ce gdiplus: Read drawn bitmaps in one step instead of using getpixel. 2011-03-10 14:10:15 +01:00
Vincent Povirk a7f95eeb7e gdiplus: Move ImageAttributes mapping into a helper function. 2011-03-10 14:10:15 +01:00
Vincent Povirk a2631ae1d2 gdiplus: Add tests for interpolation mode and make them pass. 2011-03-10 14:10:15 +01:00
Vincent Povirk d0e6aa0204 gdiplus: Fix a handle leak in GdipDrawString. 2011-03-09 12:31:05 +01:00
Maarten Lankhorst b8a1e6c687 gdiplus: Implement GdipAddPathString. 2011-03-03 17:47:15 +01:00