Commit Graph

1199 Commits

Author SHA1 Message Date
Vincent Povirk 805f0321eb gdiplus: Implement color transforms. 2011-03-28 17:16:23 +02:00
Vincent Povirk 4266b154be gdiplus: Initialize the ImageAttributes in GdipCreateTexture2I. 2011-03-28 17:08:53 +02:00
Vincent Povirk 42d1d9e9e0 gdiplus: Clean up HRGN when GdipGetRegionBounds succeeds too. 2011-03-28 17:08:53 +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
Francois Gouget ca988fa401 gdiplus: Remove GdiplusShutdown() as it is redudant with GdiplusShutdown_wrapper(). 2011-03-16 14:14:23 +01:00
Francois Gouget 769dcd8447 gdiplus: Make load_ttf_name_id() static. 2011-03-16 14:14:23 +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
Alexandre Julliard b3c333e916 gdiplus: Use signed types in convert_pixels to avoid problems on 64-bit. 2011-03-10 14:10:11 +01:00
Austin English 3ac2c9eea0 gdiplus: Avoid shadowing a parameter. 2011-03-09 14:08:08 +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
Maarten Lankhorst c057694883 gdiplus: Add tests and fix GdipDrawImagePointsRect. 2011-03-03 17:47:15 +01:00
Maarten Lankhorst fe8e08a5d6 gdiplus: Clean up gdip_format_string. 2011-03-03 17:47:15 +01:00
Vincent Povirk 21d6fc9643 gdiplus: Implement ImageLockModeUserInputBuf. 2011-02-25 11:06:42 +01:00
Vincent Povirk 546b1a5cb4 gdiplus: Copy only the area requested when (un)locking bitmaps. 2011-02-25 11:06:36 +01:00
Vincent Povirk 9497e9380b gdiplus: Don't copy bits into the buffer when a bitmap is locked write-only. 2011-02-25 11:06:30 +01:00
Vincent Povirk 58eb96c9e7 gdiplus: Copy the bits on bitmap unlock if the write flag is set.
The read and write flags are independent, so a read flag being set doesn't
imply we can quit early.
2011-02-25 11:06:25 +01:00
Vincent Povirk d086af1d36 gdiplus: Test writes with conversion and without a user buffer. 2011-02-25 11:06:12 +01:00
Maarten Lankhorst 8794f8f708 gdiplus: Implement in-memory font storage. 2011-02-22 12:27:59 +01:00
Austin English f817e547f9 gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-17 17:30:00 +01:00
Vincent Povirk 88ce03103b gdiplus: Add tests for locked image bit reading/writing. 2011-02-15 17:01:43 +01:00
Vincent Povirk 732aa89c08 gdiplus: Add test for ImageLockModeUserInputBuf. 2011-02-15 17:01:43 +01:00
Vincent Povirk 86d58dc6c8 gdiplus: Store an ImageAttributes in texture brushes. 2011-02-15 17:01:43 +01:00
Austin English 2ebcaf1a51 gdiplus/tests: Remove redundant assignments (LLVM/Clang). 2011-02-10 10:27:55 -06:00
Austin English e77d27a2eb gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-10 10:27:39 -06:00
Austin English 273065cebe gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-10 09:57:39 -06:00
Austin English 1a24d1c0f1 gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-09 09:28:55 -06: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
EG Galano fbf9494b89 gdiplus/tests: Make sure return value is used (LLVM/Clang). 2011-02-07 10:11:53 -06:00
Austin English 0d8f2b364c gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-07 10:11:30 -06:00
Vincent Povirk 757012cd3c gdiplus: Test the types of records in an empty EMF+. 2011-01-27 14:16:47 +01:00
Vincent Povirk a06b4bc59b gdiplus: Test for EMF+ recording. 2011-01-27 14:16:38 +01:00
Vincent Povirk e029d71c4b gdiplus: Stub GdipGetHemfFromMetafile. 2011-01-27 14:15:59 +01:00
Vincent Povirk 0c17a0b5bb gdiplus: Add a software implementation of line gradient brushes. 2011-01-24 12:13:57 +01:00
Vincent Povirk b7e664bc5c gdiplus: Add a software implementation of hatch brushes. 2011-01-24 12:13:54 +01:00
Vincent Povirk 60cd477342 gdiplus: Add a software implementation of GdipFillRegion. 2011-01-24 12:13:51 +01:00
Vincent Povirk 6acffba564 gdiplus: Factor the matrix creation code out of GdipTransformPoints. 2011-01-24 12:13:09 +01:00
Vincent Povirk b689e63a86 gdiplus: Factor out the gdi32 code of GdipFillRegion. 2011-01-24 12:13:00 +01:00
Vincent Povirk d7379712e7 gdiplus: Rewrite GdipCreateMatrix3. 2011-01-17 13:22:05 +01:00
Martin Petricek ee3c179026 gdiplus: Support for indexed formats in GdipBitmapSetPixel. 2011-01-12 15:02:38 +01:00
Vincent Povirk 32bbb0bbcf gdiplus: Correctly store the given stride in created bitmaps. 2010-11-12 17:47:43 +01:00
Vincent Povirk 8f1b722790 gdiplus: Allow more drawing operations to succeed without an HDC.
This should bring things to the mostly-regression-free-but-easier-to-debug
state I was expecting when I removed DIBs from many bitmaps.
2010-11-10 17:18:40 +01:00
Vincent Povirk f49d56fef3 gdiplus: Add tests for GdipGetLineTransform. 2010-11-01 11:33:58 +01:00
Vincent Povirk 3e86d43030 gdiplus: Don't rely on an HDC in GdipMeasureString. 2010-11-01 11:33:51 +01:00
Vincent Povirk 867f3d39e7 gdiplus: Don't rely on an HDC in GdipMeasureCharacterRanges. 2010-11-01 11:33:40 +01:00
Vincent Povirk cb21d1caf4 gdiplus: Don't rely on an HDC in GdipGetFontHeight. 2010-11-01 11:33:31 +01:00
Vincent Povirk 4fff9a7a52 gdiplus: Add a test for GdipCreateMatrix3. 2010-11-01 11:33:25 +01:00
Vincent Povirk bb444e81cc gdiplus: Fix point conversion in GdipCreateLineBrushI. 2010-11-01 11:33:19 +01:00
Vincent Povirk 2661ce79d6 gdiplus: Reject linear gradients where the start and end points are equal. 2010-10-28 11:41:45 +02:00
Vincent Povirk bb5f5dba93 gdiplus: Make get_path_hrgn work with HDC-less graphics objects. 2010-10-28 11:41:39 +02:00
Vincent Povirk 5f327f7812 gdiplus: Implement GdipGetRegionScans. 2010-10-28 11:41:32 +02:00
Austin Lund ae0a484945 gdiplus/tests: Fix GetLogFont charset tests for Asian platforms. 2010-10-25 13:52:51 +02:00
Vincent Povirk c8a48f237e gdiplus: Don't create a DIB section for non-alpha or reference bitmaps. 2010-10-01 13:44:39 +02:00
Vincent Povirk 473afa4b8c gdiplus: Implement GdipGetRegionScansCount. 2010-10-01 13:44:06 +02:00
Vincent Povirk 40d8876fc4 gdiplus: Implement GdipTransformRegion. 2010-10-01 13:44:00 +02:00
Vincent Povirk 1eb12cb08d gdiplus: Return 0 from GdiplusShutdown. 2010-10-01 13:43:49 +02:00
Vincent Povirk 9326fc13ca gdiplus: Don't try to free invalid or already-freed images. 2010-10-01 13:43:33 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Vincent Povirk 77a5b635aa gdiplus: Set flags and dpi when images are loaded. 2010-09-02 11:53:33 +02:00
Alexandre Julliard 121691e832 gdiplus: Use float instead of long in the spec file for 32-bit floating point values. 2010-08-31 14:23:49 +02:00
Austin English 3745961b2e gdiplus: Add a stub for GdipConvertToEmfPlusToFile. 2010-08-24 15:22:29 +02:00
Austin English 5435fbba55 gdiplus: Add a stub for GdipWindingModeOutline. 2010-08-24 13:17:58 +02:00
Vincent Povirk 517059f3f5 gdiplus: Set bitmap has alpha flag based on format. 2010-08-23 12:03:47 +02:00
Vincent Povirk 18a4e24368 gdiplus: Stub GdipTranslatePenTransform. 2010-08-23 12:03:37 +02:00
Vincent Povirk b57c4314c1 gdiplus: Stub GdipGetPathGradientPresetBlend. 2010-08-23 12:03:32 +02:00
Vincent Povirk 8dd940d0b5 gdiplus: Stub GdipTranslatePathGradientTransform. 2010-08-23 12:03:26 +02:00
Vincent Povirk 9d0cd09597 gdiplus: Add a fallback method for getting HDC's from Graphics objects.
Native does this in more cases (at least for all bitmap graphics
objects), but using gdi32 objects when we can should perform better.
2010-08-18 09:42:58 +02:00
Vincent Povirk 728aaf2902 gdiplus: Add tests for the HDC's we get from bitmap objects. 2010-08-17 11:55:33 +02:00
Vincent Povirk 2a345f36e3 gdiplus: Use the software method to draw HBITMAP-less bitmaps. 2010-08-17 11:55:33 +02:00
Vincent Povirk 1a710ac36f gdiplus: Stub GdipGetPathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk 41f4263277 gdiplus: Stub GdipSetPathGradientLinearBlend. 2010-08-17 11:55:33 +02:00
Vincent Povirk 462c599335 gdiplus: Stub GdipScalePathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk b56f3c3b21 gdiplus: Stub GdipRotatePathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk 1fdecda9da gdiplus: Stub GdipSetPathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk 9a6eabf0b5 gdiplus: Create HBITMAP-less bitmap objects for exotic pixel formats. 2010-08-17 11:55:33 +02:00
Vincent Povirk 963c7090d5 gdiplus: Don't require an HDC to get the resolution of a graphics object. 2010-08-17 11:55:33 +02:00
Vincent Povirk c3ca6be2b9 gdiplus: Give a nice warning when we try to draw to an HDC-less graphics. 2010-08-17 11:55:33 +02:00
Vincent Povirk 5601860b76 gdiplus: Don't require an HDC in get_graphics_bounds. 2010-08-17 11:55:33 +02:00
Vincent Povirk 85a5710688 gdiplus: Don't require an HDC for the convert_unit function. 2010-08-17 11:55:33 +02:00
Vincent Povirk 00aeee6e8e gdiplus: Stub GdipMultiplyPathGradientTransform. 2010-08-03 19:24:39 +02:00
Vincent Povirk 358d382782 gdiplus: Stub GdipGetPathGradientPresetBlendCount. 2010-08-03 19:24:33 +02:00