Vincent Povirk
25dcd43e52
gdiplus: Support reading image data from device-dependent bitmaps.
2009-12-14 12:18:18 +01:00
Vincent Povirk
3424dac386
gdiplus: Explicitly copy the bits from dib sections to new bitmaps.
...
On Windows, GdipCreateBitmapFromHBITMAP creates a copy of the bitmap, not
a reference. Currently, we match this behavior, but this is only because
we cannot yet create bitmap objects that reference existing memory. If
GdipCreateBitmapFromScan0 were fixed to do this, FromHBITMAP would break.
Therefore, we always pass NULL to FromScan0 so that it allocates new memory
for the bitmap.
2009-12-14 12:18:10 +01:00
Vincent Povirk
6c040271c1
gdiplus: Initialize the palettes of new indexed bitmaps.
2009-12-14 12:04:04 +01:00
Vincent Povirk
9615dd8fdb
gdiplus: Implement GdipGetImagePalette.
2009-12-14 12:04:03 +01:00
Vincent Povirk
59f45f2cbb
gdiplus: Implement GdipGetImagePaletteSize.
2009-12-14 12:04:03 +01:00
Vincent Povirk
39dc81cc80
gdiplus: Implement GdipSetImagePalette.
2009-12-14 12:04:03 +01:00
Vincent Povirk
8b154a590e
gdiplus: Fix cleanup after errors in GdipCloneImage.
2009-12-07 14:18:28 +01:00
Vincent Povirk
bf04d3fa69
gdiplus: Implement GdipCloneBitmapArea.
2009-12-07 14:18:28 +01:00
Kirill K. Smirnov
125c5645cb
gdiplus: Avoid deleting non-existent object.
2009-10-26 11:19:32 +01:00
Vincent Povirk
cab50432f6
gdiplus: Enable encoding of PNG images.
2009-10-09 12:00:23 +02:00
Vincent Povirk
809f721aba
gdiplus: Implement GdipBitmapSetPixel.
2009-09-24 13:26:49 +02:00
Vincent Povirk
41140a950b
gdiplus: Implement GdipBitmapGetPixel.
2009-09-24 13:26:35 +02:00
Marcus Meissner
e70e1249c3
gdiplus: do not memcpy over NULL ptrs (Coverity).
2009-09-22 16:15:48 +02:00
Vincent Povirk
0595fc5e03
gdiplus: Implement GdipGetImageRawFormat.
2009-09-15 17:34:12 -05:00
Vincent Povirk
0313f88794
gdiplus: Disable alpha channel support for BMP images.
2009-09-08 12:13:01 +02:00
Vincent Povirk
91e0ee260b
gdiplus: Use WIC to decode PNG files.
2009-09-08 12:12:54 +02:00
Vincent Povirk
947e39dbc7
gdiplus: Use WIC to decode BMP files.
2009-09-08 12:12:45 +02:00
Vincent Povirk
6c2d85ca84
gdiplus: Use WIC to decode GIF files.
2009-09-02 10:25:02 +02:00
Vincent Povirk
faad683e47
gdiplus: Use WIC to decode JPEG files.
2009-09-02 10:24:53 +02:00
Vincent Povirk
e4a3ad81be
gdiplus: Use WIC to encode images.
2009-09-02 10:24:47 +02:00
Vincent Povirk
9d149e606b
gdiplus: Use WIC to decode ICO files.
2009-09-01 12:43:48 +02:00
Vincent Povirk
cb3ee716a2
gdiplus: Reimplement GdipCreateBitmapFromHICON based on RGBA bitmaps.
2009-08-29 16:48:56 +02:00
Vincent Povirk
7fdc0208e8
gdiplus: Return the real image bits from LockBits when possible.
2009-08-29 16:48:55 +02:00
Vincent Povirk
436b3be651
gdiplus: Create DIBs instead of IPictures in CreateBitmapFromScan0.
2009-08-29 16:48:55 +02:00
Vincent Povirk
d87adf2a60
gdiplus: Don't use IPicture to manage the HDC associated with a GpBitmap.
2009-08-29 16:48:55 +02:00
Vincent Povirk
e48524ceb6
gdiplus: Add and use an HBITMAP field in GpBitmap objects.
2009-08-29 16:48:55 +02:00
Vincent Povirk
b99abe2e91
gdiplus: Use the decoder list to decide how to load image files.
2009-08-29 16:48:55 +02:00
Vincent Povirk
2f0b4bf36b
gdiplus: Add PNG to the decoders list.
2009-08-29 16:48:54 +02:00
Vincent Povirk
28e345882c
gdiplus: Implement GdipCreateHBITMAPFromBitmap.
2009-08-28 11:54:50 +02:00
Vincent Povirk
7246a487d9
gdiplus: Remove an ipicture reference in GdipCreateBitmapFromStream.
2009-08-21 11:28:38 +02:00
Vincent Povirk
69ba1415e3
gdiplus: Add codecs for the image formats we can currently decode.
2009-08-21 11:17:20 +02:00
Vincent Povirk
b27c3c1983
gdiplus: Only attempt to encode if the Encoder flag is set.
2009-08-21 11:16:58 +02:00
Vincent Povirk
40df7dbc07
gdiplus: Implement GdipGetImageDecoders[Size].
2009-08-21 11:16:50 +02:00
Vincent Povirk
96023267c8
gdiplus: Store the codec information and functions in a single structure.
2009-08-21 11:16:38 +02:00
Vincent Povirk
d76d00ea7e
gdiplus: Remove an unnecessary picture reference in GdipSaveImageToFile.
2009-08-11 17:29:58 +02:00
Luke Benstead
ea96cd3a52
gdiplus: Implement stub for GdipGetImagePalette.
2009-08-03 17:35:52 +02:00
Alexandre Julliard
4d31a25f50
gdiplus: Don't return garbage from the GdipCreateHBITMAPFromBitmap stub.
2009-07-01 12:14:40 +02:00
Andrew Eikum
f01bfea62e
gdiplus: Stub for GdipBitmapCreateApplyEffect.
2009-06-05 15:19:56 +02:00
Andrew Eikum
ad2341253c
gdiplus: Stub for GdipBitmapApplyEffect.
2009-06-05 15:19:56 +02:00
Andrew Eikum
46de8c0eb4
gdiplus: Stub for GdipEmfToWmfBits.
2009-06-04 12:38:33 +02:00
Andrew Eikum
84a434fd25
gdiplus: Stub for GdipDeleteEffect.
2009-06-03 11:53:09 +02:00
Andrew Eikum
57134fc890
gdiplus: Stub for GdipCloneBitmapArea.
2009-06-02 11:57:22 +02:00
Vincent Povirk
8219db2d6d
gdiplus: Stub GdipCreateHICONFromBitmap.
2009-05-28 12:42:17 +02:00
Stefan Leichter
cef1598390
gdiplus: Add stub for GdipImageRotateFlip.
2009-05-08 13:03:21 +02:00
Stefan Leichter
a91a97d8ef
gdiplus: Add stub for GdipGetImageThumbnail.
2009-05-06 12:06:43 +02:00
Massimo Del Fedele
a3221e7f23
gdiplus: Add stub for GdipBitmapSetPixel.
2009-04-28 13:10:01 +02:00
Andrew Nguyen
f82a086f56
gdiplus: Stub GdipBitmapSetResolution.
2009-04-20 17:20:12 +02:00
Vincent Povirk
efcd0bbffa
gdiplus: Stub GdipCloneBitmapAreaI.
2009-03-09 12:04:28 +01:00
Vincent Povirk
3db77ce50b
gdiplus: Return a NULL bitmap when GdipCreateBitmapFromScan0 fails.
2009-03-05 16:16:25 +01:00
Vincent Povirk
f365ef46f0
gdiplus: Fix GdipCreateBitmapFromHBITMAP flipping images vertically.
...
GdipCreateBitmapFromHBITMAP currently assumes that all bitmaps are
top-down, even though a positive height (which it also assumes)
signals a bottom-up DIB. The net result is that
GdipCreateBitmapFromHBITMAP flips images vertically.
2009-02-18 12:18:08 +01:00
Vincent Povirk
65750fabbb
gdiplus: Handle negative stride in GdipCreateBitmapFromScan0.
2009-02-18 12:17:49 +01:00
Nikolay Sivov
5bc54ed97e
gdiplus: Implemented GdipCreateBitmapFromHICON (with tests).
2009-02-03 12:48:07 +01:00
Andrey Turkin
1138c28eeb
gdiplus: GdipLoadImageFromStream should use well-known pixel format constants when possible.
2009-01-15 12:42:43 +01:00
Michael Stefaniuc
b53877d92e
gdiplus: Remove superfluous pointer casts.
2009-01-14 13:51:00 +01:00
Michael Stefaniuc
50ff549420
gdiplus: Remove some superfluous casts.
2008-12-05 12:36:41 +01:00
Michael Stefaniuc
4386caa13b
gdiplus: Reduce the number of casts by using the proper type for variables.
2008-12-05 12:36:37 +01:00
Nikolay Sivov
348c115af1
gdiplus: Stub for GdipGetImagePaletteSize.
2008-12-02 14:12:32 +01:00
Vincent Povirk
f3cad17a9b
gdiplus: Implement CachedBitmap based on Image.
2008-11-24 14:36:50 +01:00
Hans Leidekker
8b15fa4b2a
gdiplus: Improve GdipGetImageRawFormat stub.
2008-11-24 14:25:10 +01:00
Hans Leidekker
6122c77b9d
gdiplus: Add stub implementations of GdipCreateHalftonePalette and GdipImageForceValidation.
2008-11-24 14:25:10 +01:00
Nikolay Sivov
1cca99dc23
gdiplus: Added CachedBitmap calls.
2008-11-04 11:25:40 +01:00
Kirill K. Smirnov
176e4ba405
gdiplus: Whole picture object should be cloned in GdipCloneImage(), not just parent class 'image'.
2008-10-21 11:50:33 +02:00
Kirill K. Smirnov
e0325b098f
gdiplus: IPicture_SaveAsFile updates seek pointer, so put it back.
2008-10-17 11:48:04 +02:00
Aric Stewart
c4e859a678
gdiplus: Avoid dereferencing a potential NULL (Coverity 589).
2008-10-17 11:43:23 +02:00
Alistair Leslie-Hughes
4b6cc6e3fd
gdiplus: Stub GdipRecordMetafileFileName and GdipRecordMetafileFileNameI.
2008-10-06 13:49:47 +02:00
Marcus Meissner
e4198d473c
gdiplus: Also handle 32bpp bitmaps.
2008-10-06 13:08:58 +02:00
Lei Zhang
83d92f4195
gdiplus: Allocate enough space for BITMAPINFO in GdipLoadImageFromStream.
2008-09-30 10:15:42 -05:00
Lei Zhang
778ea2360e
gdiplus: Allocate enough space for BITMAPINFO in GdipBitmapUnlockBits.
2008-09-30 10:15:37 -05:00
Lei Zhang
2309a9e4ab
gdiplus: Allocate enough space for BITMAPINFO in GdipBitmapLockBits.
2008-09-30 10:15:31 -05:00
John Klehm
294c160c36
gdiplus: Stub implementation of GdipGetImageDecoders and GdipGetImageDecodersSize.
2008-09-15 13:14:13 +02:00
Nikolay Sivov
d7794170e7
gdiplus: Some TRACE(..) for Image calls.
2008-09-11 12:32:14 +02:00
Nikolay Sivov
c2de38ea47
gdiplus: Added missed stubs for Image metadata access.
2008-09-08 14:12:31 +02:00
Nikolay Sivov
d923d78e95
gdiplus: Partially implemented GdipTestControl.
2008-09-08 14:09:36 +02:00
Nikolay Sivov
b6c52ce996
gdiplus: Implemented GdipCloneImage.
2008-09-05 13:01:02 +02:00
Francois Gouget
eb16f43bdf
Add some API documentation stubs to make winapi_check happy.
2008-07-28 11:34:45 +02:00
Nikolay Sivov
d8a25fc26c
gdiplus: Implemented GdipCreateBitmapFromResource.
2008-07-17 10:53:31 +02:00
Huw Davies
b2ebf709ff
gdiplus: Partial implementation of GdipCreateBitmapFromGdiDib.
2008-07-10 18:10:51 +02:00
Francois Gouget
f7c5736340
gdiplus: Add/fix the trailing '\n' to Wine traces.
2008-07-10 13:40:26 +02:00
Adam Petaccia
af29f96939
gdiplus: Stub GdipCloneImage.
2008-07-02 12:21:21 +02:00
Petr Dlouhý
4513fb3818
gdiplus: Stub implementation of GdipImageGetFrameDimensionsCount + test.
2008-06-21 11:36:24 +02:00
Nikolay Sivov
36a7f31752
gdiplus: GdipBitmapLockBits should allow a NULL rect argument.
2008-05-21 20:17:53 +02:00
Nikolay Sivov
888262ede7
gdiplus: Added GdipLoadImageFromFileICM (no icm yet).
2008-05-12 14:00:10 +02:00
Nikolay Sivov
03b6c5e85f
gdiplus: GdipGetImageFlags simple stub with test.
2008-05-12 13:59:56 +02:00
Dan Kegel
8c8262510d
gdiplus: GdipLoadImageFromStream: initialize variable.
2008-04-23 14:32:59 +02:00
Lei Zhang
20a8cf6417
gdiplus: Add a stub for GdipSetEffectParameters.
2008-04-10 10:31:34 +02:00
Michael Stefaniuc
51c9d050cf
gdiplus: Remove break after return (Smatch).
2008-03-25 11:44:54 +01:00
Sean Huckins
3266420a1e
gdiplus: Implementation of GdipCreateBitmapFromHBITMAP.
2008-03-24 12:11:58 +01:00
Nathan Beckmann
2824aa2d33
gdiplus: Fix test crash in GdipSaveImageToStream.
...
Correctly initialized parameters to GetDIBits (based on
GdipLockBitmapBits).
2008-03-17 15:09:53 +01:00
Nathan Beckmann
75841d8323
gdiplus: Implement BMP encoding.
...
Implement the encoding function for GDI+ images so that
GdipSaveImageToStream can encode images as BMP files.
2008-03-10 20:22:43 +01:00
Nathan Beckmann
9475e3f53b
gdiplus: Implement GdipSaveImageToStream using encoders.
...
Add the correct framework for a fully-functional implementation of
image encoding (not a hack like before). Currently, only a stub for
BMP encoding is supported. New tests added as well.
2008-03-10 20:22:27 +01:00
Nathan Beckmann
7900947ce3
gdiplus: Implement GdipSaveImageToFile via GdipSaveImageToStream.
...
Still need to implement saving the image based on the encoder
parameter.
Basic tests included.
2008-03-10 20:21:14 +01:00
Nathan Beckmann
f4b4d03a19
gdiplus: Remove unnecessary IStream_AddRef from GdipLoadImageFromFile.
2008-03-10 20:20:50 +01:00
Nathan Beckmann
e3f8f30a21
gdiplus: Return an error for consecutive GdipLockBitmapBit calls.
2008-03-10 12:09:50 +01:00
Nathan Beckmann
eabc62db00
gdiplus: Update bitmap state in GdipUnlockBitmapBits.
2008-03-10 12:09:40 +01:00
Nathan Beckmann
08d49d3e33
gdiplus: Fix memory leak in GdipLockBitmapBits.
2008-03-10 12:09:32 +01:00
Nathan Beckmann
366854a7cc
gdiplus: Implement GdipGetImageEncoders.
2008-03-07 11:29:05 +01:00
Ethan Chen
e0552c1bc6
gdiplus: Implemented GdipCreateBitmapFromFileICM.
2008-03-06 17:38:54 +01:00
Nathan Beckmann
66067423d1
gdiplus: Fix errors in image dimensions.
2008-03-06 13:19:29 +01:00
Nathan Beckmann
484abd472e
gdiplus: Implement GdipLoadImageFromFile.
2008-03-03 12:20:29 +01:00
Nathan Beckmann
f49c7bb450
gdiplus: Fix IStream_Release in GdipCreateBitmapFromFile.
2008-03-03 12:19:59 +01:00