Commit Graph

314 Commits

Author SHA1 Message Date
Dmitry Timoshkov df367c3399 gdiplus: Reimplement GdipCloneBitmapArea without using GdipBitmapLockBits. 2013-10-18 16:56:56 +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
Vincent Povirk 12586f76e3 gdiplus: Always provide image data in the format requested by image encoders. 2013-09-23 21:31:18 +02:00
Vincent Povirk 636e60b6e0 gdiplus: Fix GdipCreateBitmapFromGraphics implementation. 2013-03-11 10:42:40 +01:00
Dmitry Timoshkov c5e129a7e4 gdiplus: Remove debug traces from GdipBitmapGetPixel and GdipBitmapSetPixel. 2013-02-22 17:36:21 +01:00
Dmitry Timoshkov 0553eba08f gdiplus: Use an off-screen DC as an image surface. 2013-02-20 18:21:22 +01:00
Dmitry Timoshkov 35fc9c12dc gdiplus: Avoid not necessary memory allocation for BITMAPINFO. 2013-01-30 12:43:24 +01:00
Andrew Talbot 32d070afb0 gdiplus: Avoid signed-unsigned integer comparisons. 2013-01-24 10:49:34 +01:00
Dmitry Timoshkov 0d0f05e523 gdiplus: Avoid not necessary memory allocation in GdipCreateBitmapFromHICON. 2013-01-16 12:23:19 +01:00
Dmitry Timoshkov bd601f9950 gdiplus: Avoid not necessary memory allocation for BITMAPINFO. 2013-01-15 12:11:46 +01:00
Dmitry Timoshkov 44e554b744 gdiplus: Avoid not necessary memory allocation for palette entries. 2013-01-15 12:11:39 +01:00
Dmitry Timoshkov 34ef07fda2 gdiplus: Fix reading the mask bits in GdipCreateBitmapFromHICON. 2013-01-15 12:11:24 +01:00
Vincent Povirk 431aa5bc3f gdiplus: Use one GetDIBits call instead of one per row. 2012-12-06 12:59:26 +01:00
Vincent Povirk 04412f7a74 gdiplus: Avoid accessing dib bits directly in GdipCreateBitmapFromHBITMAP. 2012-12-06 12:56:27 +01:00
Vincent Povirk 91a3e5fc10 gdiplus: Reimplement GdipCreateMetafileFromEmf without using IPicture. 2012-11-01 10:50:45 +01:00
Vincent Povirk d8a855305f gdiplus: Implement GdipCloneImage for metafiles with a handle. 2012-11-01 10:50:41 +01:00
Dmitry Timoshkov 896d1047f3 gdiplus: Reuse an existing image stream in GdipImageSelectActiveFrame. 2012-09-28 17:17:47 +02:00
Dmitry Timoshkov 0ef523e2bf gdiplus: Add GIF palette to the image properties. 2012-09-25 11:30:31 +02:00
Dmitry Timoshkov faa24d96d4 gdiplus: Add GIF loopcount to the image properties. 2012-09-25 11:30:28 +02:00
Dmitry Timoshkov 54edca19e1 gdiplus: Add GIF transparent index to the image properties. 2012-09-25 11:30:25 +02:00
Dmitry Timoshkov a950a0549f gdiplus: Add GIF background to the image properties. 2012-09-25 11:30:21 +02:00
Dmitry Timoshkov 3bb4974dd4 gdiplus: Add GIF frame delay to the image properties. 2012-09-25 11:30:18 +02:00
Dmitry Timoshkov 000f4725aa gdiplus: Add GIF comment to the image properties. 2012-09-25 11:30:14 +02:00
Dmitry Timoshkov 915df87aa5 gdiplus: Add an ability to cache bitmap properties and use distinct metadata loaders for different image formats. 2012-09-21 17:07:09 +02:00
Marcus Meissner 5ae8629fca gdiplus: Avoid uninitialized usage of bitmap (Coverity). 2012-09-03 17:43:31 +02:00
Dmitry Timoshkov ac8019df3d gdiplus: Correct signature/mask info for the GIF codec. 2012-08-27 11:30:35 +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
Dmitry Timoshkov 6f630a4091 gdiplus: GdipGetImageThumbnail should return image in 32bppPARGB format. 2012-08-20 17:06:00 +02:00
Dmitry Timoshkov e3d27c42d9 gdiplus: Make GdipSetPropertyItem return Ok. 2012-08-16 11:59:12 +02:00
Dmitry Timoshkov 6bb353858e gdiplus: Replace convert_unit() by a clearer units_to_pixels() helper. 2012-08-15 13:53:31 +02:00
Dmitry Timoshkov e536a128f7 gdiplus: Store device resolution in the graphics object. 2012-07-26 11:07:41 +02:00
Dmitry Timoshkov 9697829511 gdiplus: Add missing 'break'. 2012-07-26 11:07:24 +02:00
Dmitry Timoshkov 0b40df2990 gdiplus: Make get_palette() usable for generating predefined palettes. 2012-07-25 20:13:58 +02:00
Dmitry Timoshkov f165e2725f gdiplus: Add 8bppGray to the list of supported formats. 2012-07-25 20:13:55 +02:00
Dmitry Timoshkov 271d801ea4 gdiplus: Use predefined palette if an image doesn't provide one. 2012-07-25 20:13:52 +02:00
Dmitry Timoshkov 45cdafc5e8 gdiplus: Add 8bppIndexed to the list of supported formats. 2012-07-25 20:13:18 +02:00
Dmitry Timoshkov dce93479ea gdiplus: Retrieve image palette from WIC. 2012-07-25 20:13:07 +02:00
Dmitry Timoshkov 7bcfb02169 gdiplus: Set actual resolution of an image being encoded. 2012-07-20 21:30:03 +02:00
Dmitry Timoshkov d104741a3c gdiplus: Add support for converting RGB formats to 1bpp indexed. 2012-07-17 13:09:41 +02:00
Dmitry Timoshkov 2ed1aaa930 gdiplus: Add support for converting RGB formats to 8bpp indexed. 2012-07-17 13:09:41 +02:00
Dmitry Timoshkov d9f4df0619 gdiplus: Pass palette instead of bitmap to setpixel helpers. 2012-07-17 13:09:40 +02:00
Dmitry Timoshkov 87f8e560c2 gdiplus: Pass complete palette info to convert_pixels(). 2012-07-17 13:09:40 +02:00
Dmitry Timoshkov a46c1f780a gdiplus: Use public ColorPalette structure to store image palette. 2012-07-17 13:09:39 +02:00
Dmitry Timoshkov c108fd6bf9 gdiplus: Make sure that GdipBitmapLockBits stores valid lockmode. 2012-07-17 12:54:20 +02:00
Dmitry Timoshkov ebf31c0ac6 gdiplus: Fix palette flags for a not indexed 1-bpp image. 2012-07-16 18:19:46 +02:00
Dmitry Timoshkov eca107412c gdiplus: Make sure that 1bpp bitmap images get loaded in native format. 2012-07-16 18:19:38 +02:00
Vincent Povirk 198fb25d17 gdiplus: Fix memory leak in GdipImageRotateFlip. 2012-07-12 11:48:56 -05:00
Vincent Povirk 577740f0d7 gdiplus: Fix GdipImageRotateFlip for images from streams. 2012-07-12 11:48:52 -05:00
Dmitry Timoshkov 56621638df gdiplus: Add parameter checks to GdipSetPropertyItem, print item contents in the trace. 2012-07-03 12:58:56 +02:00
Dmitry Timoshkov 3c9805d471 gdiplus: Implement GdipGetAllPropertyItems. 2012-07-02 11:00:22 +02:00
Dmitry Timoshkov 430355ef83 gdiplus: Implement GdipGetPropertySize. 2012-07-02 11:00:11 +02:00
Dmitry Timoshkov 91cf72f00f gdiplus: Add GdipSaveAdd stub. 2012-06-29 20:41:47 +02:00
Dmitry Timoshkov 670445b22b gdiplus: Implement GdipGetPropertyItem. 2012-06-29 10:46:50 +02:00
Dmitry Timoshkov 9d953c5f79 gdiplus: Implement GdipGetPropertyItemSize. 2012-06-29 10:46:50 +02:00
Dmitry Timoshkov 174b74bab2 gdiplus: Increase refcount of the source stream when loading a bitmap instead of cloning it. 2012-06-28 11:37:03 +02:00
Dmitry Timoshkov d079b66ba5 gdiplus: Avoid casting IWICBitmapFrameDecode to IWICBitmapSource. 2012-06-26 19:44:27 +02:00
Dmitry Timoshkov fb6b27de77 gdiplus: Implement GdipGetPropertyIdList. 2012-06-26 19:41:11 +02:00
Dmitry Timoshkov b9132b6815 gdiplus: Implement GdipGetPropertyCount. 2012-06-26 19:40:59 +02:00
Dmitry Timoshkov b72d236ca8 gdiplus: When loading a bitmap frame save its IWICMetadataReader interface. 2012-06-26 19:40:44 +02:00
Dmitry Timoshkov 450e09c8c6 gdiplus: Make some data const. 2012-06-21 08:36:28 +02:00
Dmitry Timoshkov 755c19f3e7 gdiplus: Implement GdipImageSelectActiveFrame. 2012-06-20 11:07:15 +02:00
Dmitry Timoshkov 9e12bc0175 gdiplus: Create a copy of the source stream when loading an image. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov 8b1bbd4fe5 gdiplus: Add active frame parameter to the WIC decoder interface. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov 527cae47e3 gdiplus: Remove a redundant cast. 2012-06-19 13:44:07 +02:00
Vincent Povirk b5ef70c583 gdiplus: Check for NULL image in GdipImageRotateFlip. 2012-06-14 19:13:27 +02:00
Dmitry Timoshkov eeee536ad6 gdiplus: Implement GdipImageGetFrameCount. 2012-05-17 17:44:26 +02:00
Dmitry Timoshkov 007d642e53 gdiplus: Save total and current frame in the image structure. 2012-05-17 17:44:25 +02:00
Alexandre Julliard 039c85346c gdiplus: CreateDIBSection doesn't need a DC for the DIB_RGB_COLORS case. 2012-05-02 12:02:17 +02:00
Vincent Povirk 57e4912108 gdiplus: Add support for JPEG encoding. 2012-04-18 17:15:53 +02:00
Vincent Povirk 93a0897660 gdiplus: Support bitmap creation from 16-bit ddb's. 2012-03-30 17:33:46 +02:00
Vincent Povirk 2540049777 gdiplus: Implement GdipCreateBitmapFromHBITMAP for 16-bit dibs. 2012-01-12 12:27:04 +01:00
Louis Lenders 8435e40874 gdiplus: Return zero properties in stubbed GdipGetPropertyCount. 2011-10-06 16:46:41 -05:00
Vincent Povirk 203d29d93a gdiplus: Fix pointer math for the 64-bit tests. 2011-10-04 15:19:02 -05:00
Vincent Povirk 5f94653159 gdiplus: Include an alpha channel in HBITMAPs created from Bitmaps. 2011-10-03 09:45:09 -05:00
Frédéric Delanoy b5a33dab88 dlls: Assorted spelling fixes. 2011-08-02 20:47:51 +02:00
Vincent Povirk 698fddf99b gdiplus: Properly clean up the new metafile data. 2011-06-22 11:25:46 +02:00
Vincent Povirk d436e51872 gdiplus: Add basic metafile recording support. 2011-05-23 11:15:41 +02:00
Marcus Meissner 4892adb414 gdiplus: Mark image_format_dimensions as static. 2011-05-18 10:54:32 +02:00
Vincent Povirk 1544640763 gdiplus: Add support for encoding TIFF images. 2011-04-11 19:32:53 +02:00
Vincent Povirk a7444e8e2c gdiplus: Use the given HPALETTE in GdipCreateBitmapFromHBITMAP. 2011-03-29 12:35:06 +02: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
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
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 c8a48f237e gdiplus: Don't create a DIB section for non-alpha or reference bitmaps. 2010-10-01 13:44:39 +02:00
Vincent Povirk 9326fc13ca gdiplus: Don't try to free invalid or already-freed images. 2010-10-01 13:43:33 +02:00
Vincent Povirk 77a5b635aa gdiplus: Set flags and dpi when images are loaded. 2010-09-02 11:53:33 +02:00
Austin English 3745961b2e gdiplus: Add a stub for GdipConvertToEmfPlusToFile. 2010-08-24 15:22:29 +02:00
Vincent Povirk 517059f3f5 gdiplus: Set bitmap has alpha flag based on format. 2010-08-23 12:03:47 +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 85a5710688 gdiplus: Don't require an HDC for the convert_unit function. 2010-08-17 11:55:33 +02:00
Vincent Povirk 3847c2dec9 gdiplus: Stub GdipGetMetafileHeaderFromStream. 2010-07-19 14:49:07 +02:00
Vincent Povirk 688eb0688b gdiplus: Stub GdipGetMetafileHeaderFromFile. 2010-07-19 14:49:07 +02:00
Vincent Povirk 2223900cf6 gdiplus: Stub GdipGetMetafileHeaderFromEmf. 2010-07-05 11:54:57 +02:00
Andrew Nguyen 6ea90c3c2e gdiplus: Add a few additional traces to gdiplus image functions. 2010-06-25 12:50:03 +02:00
Vincent Povirk 63fa6915ec gdiplus: Stub GdipGetEncoderParameterListSize. 2010-06-25 10:26:18 +02:00
Vincent Povirk 7dfc674437 gdiplus: Implement GdipGetImageThumbnail. 2010-05-10 10:02:11 +02:00