Represents a GDI+ bitmap image. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.
More...
|
| Bitmap (const SharedPtr< Image > &original) |
| Constructs a new Bitmap object from the specified existing image. More...
|
|
| Bitmap (const SharedPtr< System::IO::Stream > &stream, bool useIcm=false) |
| Constructs a new Bitmap object from the specified stream. More...
|
|
| Bitmap (const String &filename) |
| Constructs a new Bitmap object from the specified file. More...
|
|
| Bitmap (const String &filename, bool useIcm) |
| Constructs a new Bitmap object from the specified file. More...
|
|
| Bitmap (int width, int height, Imaging::PixelFormat format=Imaging::PixelFormat::Format32bppArgb) |
| Constructs a new Bitmap object that represents a bitmap image with the specified width, height, pixel format and pixel data. More...
|
|
| Bitmap (const SharedPtr< Image > &original, const Size &size) |
| Constructs a new Bitmap object from the specified existing image, scaled to the specified size. More...
|
|
| Bitmap (const SharedPtr< Image > &original, int width, int height) |
| Constructs a new Bitmap object from the specified existing image with width and height scaled to the specified values. More...
|
|
virtual int | get_Width () const override |
| Returns the width of the image in pixels. More...
|
|
virtual int | get_Height () const override |
| Returns the height of the image in pixels. More...
|
|
virtual Imaging::ImageFormatPtr | get_RawFormat () const override |
| Returns the file format of the image represented by the current object. More...
|
|
virtual Imaging::PixelFormat | get_PixelFormat () const override |
| Returns the pixel format of the image represented by the current object. More...
|
|
virtual Imaging::ColorPalettePtr | get_Palette () const override |
| Returns the color palette used by the image represented by the current object. More...
|
|
void | set_Palette (Imaging::ColorPalettePtr value) override |
| Sets the color palette used by the image represented by the current object. More...
|
|
void | SetResolution (float xDpi, float yDpi) |
| Sets the resolution of the image. More...
|
|
void | SetPixel (int x, int y, Color color) |
| Sets the color of the specified pixel in the bitmap image represented by the current object. More...
|
|
Imaging::BitmapDataPtr | LockBits (const Rectangle &rect, Imaging::ImageLockMode flags, Imaging::PixelFormat format) |
| Locks a Bitmap into system memory. More...
|
|
Imaging::BitmapDataPtr | LockBits (const Rectangle &rect, Imaging::ImageLockMode flags, Imaging::PixelFormat format, const Imaging::BitmapDataPtr &bitmap_data) |
| Locks a Bitmap into system memory. More...
|
|
void | UnlockBits (const Imaging::BitmapDataPtr &bitmap_data) |
| Unlocks the specified bitmap from system memory. More...
|
|
Color | GetPixel (int x, int y) |
| Returns the color of the specified pixel. More...
|
|
void | MakeTransparent (Color transparent_color=Color::get_LightGray()) |
| Changes the color of all pixels with the specified color to transparent. More...
|
|
IntPtr | GetHbitmap () |
| Creates a GDI bitmap object from the bitmap represented by the current object. More...
|
|
virtual SharedPtr< Image > | Clone () override |
| Creates a copy of the current object. More...
|
|
SharedPtr< Bitmap > | Clone (Rectangle rect, Imaging::PixelFormat format) |
| Creates a Bitmap object that represents a copy of a region of the bitmap image represented by the current object. More...
|
|
SharedPtr< Bitmap > | Clone (RectangleF rect, Imaging::PixelFormat format) |
| Creates a Bitmap object that represents a copy of a region of the bitmap image represented by the current object. More...
|
|
virtual void | RotateFlip (RotateFlipType rotate_flip_type) override |
| Rotates image to multiple of 90 degrees and flips. More...
|
|
virtual const SkBitmap * | GetSkBitmap () const override |
| Returns a raw pointer to the underlying SkBitmap object. More...
|
|
virtual bool | IsMultiImage () const override |
| Returns whether the original format is a multi-image. More...
|
|
void | PremultipleColors () |
| Premultiplies the colors of the pixels of the image represented by the current object. More...
|
|
bool | BeginPixelProcessing (bool update_colors=true) |
| Enables pixel processing mode. More...
|
|
bool | EndPixelProcessing (bool update_colors=true) |
| Disables pixel processing mode. More...
|
|
ArrayPtr< uint8_t > | ComputeHash () |
| Computes the SHA1 hash value. More...
|
|
void | Save (const String &filename) |
| Saves the image represented by the current object to the specified file in PNG format. More...
|
|
void | Save (const String &filename, const Imaging::ImageFormatPtr &format) |
| Saves the image represented by the current object to the specified file in the specified format. More...
|
|
void | Save (const SharedPtr< System::IO::Stream > &stream, const Imaging::ImageFormatPtr &format) |
| Saves the image represented by the current object to the specified stream in the specified format. More...
|
|
void | Save (const String &filename, const Imaging::ImageCodecInfoPtr &encoder, const Imaging::EncoderParametersPtr &encoder_params) |
| Saves the image represented by the current object to the specified file using the specified encoder and encoder parameters. More...
|
|
void | Save (const SharedPtr< System::IO::Stream > &stream, const Imaging::ImageCodecInfoPtr &encoder, const Imaging::EncoderParametersPtr &encoder_params) |
| Saves the image represented by the current object to the specified stream using the specified encoder and encoder parameters. More...
|
|
void | SaveAdd (const Imaging::EncoderParametersPtr &encoder_params) |
| Adds a frame to the file or stream specified in a previous call to the Save() method. More...
|
|
void | SaveAdd (const SharedPtr< Image > &image, const Imaging::EncoderParametersPtr &encoder_params) |
| Adds a frame to the file or stream specified in a previous call to the Save() method. More...
|
|
virtual SharedPtr< Image > | Clone ()=0 |
| Creates a copy of the current object. More...
|
|
virtual void | RotateFlip (RotateFlipType rotate_flip_type) |
| Rotate image to multiple of 90 degrees and flip. More...
|
|
virtual ArrayPtr< int > | get_PropertyIdList () const |
| Gets IDs of the property items stored in this image. More...
|
|
RectangleF | GetBounds (GraphicsUnit &page_unit) |
| Returns the image bounds in the specified measurement units. More...
|
|
virtual int | get_Width () const =0 |
| Returns the width of the image in pixels. More...
|
|
virtual int | get_Height () const =0 |
| Returns the height of the image in pixels. More...
|
|
virtual int32_t | get_Flags () const |
| Returns a bit-wise combination of ImageFlags enum values that represents the attributes of the image. More...
|
|
Size | get_Size () const |
| Returns a Size object that represents the width and height of the image in pixels. More...
|
|
virtual Imaging::ImageFormatPtr | get_RawFormat () const =0 |
| Returns the file format of the image represented by the current object. More...
|
|
virtual Imaging::PixelFormat | get_PixelFormat () const =0 |
| Returns the pixel format of the image represented by the current object. More...
|
|
virtual System::SharedPtr< System::Object > | get_Tag () const |
| Gets an object that provides additional data about the image. More...
|
|
virtual void | set_Tag (const System::SharedPtr< System::Object > tag) |
| Sets an object that provides additional data about the image. More...
|
|
float | get_HorizontalResolution () const |
| Returns the horizontal resolution of the image represented by the current object in pixels per inch. More...
|
|
float | get_VerticalResolution () const |
| Returns the vertical resolution of the image represented by the current object in pixels per inch. More...
|
|
virtual Imaging::ColorPalettePtr | get_Palette () const |
| Returns the color palette used by the image represented by the current object. More...
|
|
virtual void | set_Palette (Imaging::ColorPalettePtr value) |
| Sets the color palette used by the image represented by the current object. More...
|
|
virtual bool | IsMultiImage () const |
| Returns whether the original format is a multi-image. More...
|
|
ArrayPtr< Guid > | get_FrameDimensionsList () const |
| Returns an array of GUIDs that represent the dimensions of frames within the image represented by the current object. More...
|
|
int | GetFrameCount (const Imaging::FrameDimensionPtr &dimension) |
| Returns the number of frames of the specified frame dimension. More...
|
|
int | SelectActiveFrame (const Imaging::FrameDimensionPtr &dimension, int frameIndex) |
| Selects the specified frame. More...
|
|
virtual ArrayPtr< SharedPtr< Imaging::PropertyItem > > | get_PropertyItems () const |
| Gets all the property items(pieces of metadata) stored in this image. More...
|
|
void | Dispose () override |
| Releases all resources aquired by the current object. More...
|
|
virtual const SkBitmap * | GetSkBitmap () const =0 |
| Returns an underlying SkBitmap object. More...
|
|
SharedPtr< Image > | GetThumbnailImage (int thumbWidth, int thumbHeight, Image::GetThumbnailImageAbort callback, IntPtr callbackData) |
| Gets a thumbnail for this System::Drawing::Image object. More...
|
|
virtual void | Dispose () |
| Does nothing. More...
|
|
| Object () |
| Creates object. Initializes all internal data structures. More...
|
|
virtual | ~Object () |
| Destroys object. Frees all internal data structures. More...
|
|
| Object (Object const &x) |
| Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
|
|
Object & | operator= (Object const &x) |
| Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
|
|
Object * | SharedRefAdded () |
| Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
|
|
int | SharedRefRemovedSafe () |
| Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
|
|
int | RemovedSharedRefs (int count) |
| Decreases shared reference count by specified value. More...
|
|
Detail::SmartPtrCounter * | WeakRefAdded () |
| Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
|
|
void | WeakRefRemoved () |
| Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
|
|
Detail::SmartPtrCounter * | GetCounter () |
| Gets reference counter data structure associated with the object. More...
|
|
int | SharedCount () const |
| Gets current value of shared reference counter. More...
|
|
void | Lock () |
| Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
|
|
void | Unlock () |
| Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
|
|
virtual bool | Equals (ptr obj) |
| Compares objects using C# Object.Equals semantics. More...
|
|
virtual int32_t | GetHashCode () const |
| Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
|
|
virtual String | ToString () const |
| Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
|
|
virtual ptr | MemberwiseClone () const |
| Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
|
|
virtual const TypeInfo & | GetType () const |
| Gets actual type of object. Analog of C# System.Object.GetType() call. More...
|
|
virtual bool | Is (const TypeInfo &targetType) const |
| Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
|
|
virtual void | SetTemplateWeakPtr (uint32_t argument) |
| Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
|
|
virtual bool | FastCast (const Details::FastRttiBase &helper, void **out_ptr) const |
| For internal purposes only. More...
|
|
template<> |
bool | ReferenceEquals (String const &str, std::nullptr_t) |
| Specialization of Object::ReferenceEquals for case of string and nullptr. More...
|
|
template<> |
bool | ReferenceEquals (String const &str1, String const &str2) |
| Specialization of Object::ReferenceEquals for case of strings. More...
|
|
|
static SharedPtr< Bitmap > | ConvertToARGBImage (const SharedPtr< Bitmap > &src_bmp) |
| Creates a copy of the specified bitmap image with pixel format changed to Format32bppArgb. More...
|
|
static SharedPtr< Image > | FromStream (const SharedPtr< System::IO::Stream > &stream, bool use_embedded_color_management=false, bool validate_image_data=true) |
| Creates an Image object from the specified stream. More...
|
|
static SharedPtr< Image > | FromFile (const String &filename, bool use_embedded_color_management=false) |
| Creates an Image object from the specified file. More...
|
|
static bool | IsAlphaPixelFormat (Imaging::PixelFormat pixfmt) |
| Determines if the specified pixel format contains alpha information. More...
|
|
static int | GetPixelFormatSize (Imaging::PixelFormat pixfmt) |
| Returns the number of bits used to represent the color depth in the specified pixel format. More...
|
|
static SharedPtr< Bitmap > | FromHbitmap (IntPtr hbitmap) |
| Constructs a Bitmap object from the specified GDI bitmap. More...
|
|
static bool | ReferenceEquals (ptr const &objA, ptr const &objB) |
| Compares objects by reference. More...
|
|
template<typename T > |
static std::enable_if<!IsSmartPtr< T >::value, bool >::type | ReferenceEquals (T const &objA, T const &objB) |
| Compares objects by reference. More...
|
|
template<typename T > |
static std::enable_if<!IsSmartPtr< T >::value, bool >::type | ReferenceEquals (T const &objA, std::nullptr_t) |
| Reference-compares value type object with nullptr. More...
|
|
template<typename T1 , typename T2 > |
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type | Equals (T1 const &objA, T2 const &objB) |
| Compares reference type objects in C# style. More...
|
|
template<typename T1 , typename T2 > |
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type | Equals (T1 const &objA, T2 const &objB) |
| Compares value type objects in C# style. More...
|
|
static const TypeInfo & | Type () |
| Implements C# typeof(System.Object) construct. More...
|
|
template<> |
bool | Equals (float const &objA, float const &objB) |
| Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
|
|
template<> |
bool | Equals (double const &objA, double const &objB) |
| Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
|
|
|
| ~Bitmap () override |
| Destructor. More...
|
|
| Bitmap (const SharedPtr< Bitmap > &original, Rectangle rect, Imaging::PixelFormat format) |
| Constructs a Bitmap object that represents a copy of a region of the bitmap image represented by the specified Bitmap object. More...
|
|
bool | GetSkBitmapFromArray (const ArrayPtr< uint8_t > &data) |
| Assigns the bitmap image data from the specified byte array to the specfied SkBitmap object. More...
|
|
virtual std::unique_ptr< SkCanvas > | GetDrawingCanvas () const override |
| Returns the drawing canvas object. More...
|
|
virtual sk_sp< SkData > | GetRawBytes (SkEncodedImageFormat encoder_type, int quality) override |
| Saves an image represented by the current object in the specified format using the specified image quality level setting when encoding the image to the momory buffer. More...
|
|
virtual const SkEncodedImageFormat | GetSkEncodedFormat () const override |
| Returns a value that specifies the format of the image represented by the current object. More...
|
|
virtual Imaging::PixelFormat | GetOriginalFormat () const override |
| Returns the original image format of the bitmap image represented by the current object. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, const SkRect &dest_rect, const SkRect &src_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const override |
| Draws the specified region of the image represented by the current object to the specified region on the specified canvas. The source bitmap region is scaled and translated to fill the destination region. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, const SkRect &dest_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const override |
| Draws the the image represented by the current object to the specified region on the specified canvas. The source image is scaled and translated to fill the destination region. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, ArrayPtr< PointF > dest_points, const SkRect &src_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const override |
| Draws the specified region of the image represented by the current object to the specified region on the specified canvas. The source bitmap region is scaled and translated to fill the destination region. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, const System::Details::ArrayView< PointF > &dest_points, const SkRect &src_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const override |
| Draws the specified region of the image represented by the current object to the specified region on the specified canvas. The source bitmap region is scaled and translated to fill the destination region. More...
|
|
virtual std::unique_ptr< SkCanvas > | GetDrawingCanvas () const =0 |
| Returns the drawing canvas object. More...
|
|
virtual sk_sp< SkData > | GetRawBytes (SkEncodedImageFormat encoder_type, int quality)=0 |
| Saves an image represented by the current object in the specified format using the specified image quality level setting when encoding the image to the momory buffer. More...
|
|
void | InternalSave (const SharedPtr< System::IO::Stream > &stream, SkEncodedImageFormat encoder_type, Imaging::EncoderValue encoder_value=Imaging::EncoderValue::CompressionLZW, int pixel_format=32, int quality=s_default_save_quality) |
| Saves the image represented by the current object to the specified stream in the specified format. More...
|
|
void | InternalSave (const SharedPtr< IO::Stream > &stream, SkEncodedImageFormat encoder_type, const SaveOptions &options) |
| Saves the image represented by the current object to the specified stream in the specified format. More...
|
|
void | InternalSavePage (const SkBitmap *bitmap, const SaveOptions &options) |
| Saves the bitmap as a part of a multipage image. More...
|
|
SkEncodedImageFormat | CheckOutputFormat (const Imaging::ImageFormatPtr &image_format) const |
| Checks if the specified image format is supported and returns a SkEncodedFormat value that represents the specified image format. More...
|
|
virtual const SkEncodedImageFormat | GetSkEncodedFormat () const =0 |
| Returns an underlying SkEncodedFormat object. More...
|
|
virtual Imaging::PixelFormat | GetOriginalFormat () const =0 |
| Returns the original image format. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, const SkRect &dest_rect, const SkRect &src_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const =0 |
| Draws the specified region of the image to the specified region on the specified canvas. The source bitmap region is scaled and translated to fill the destination region. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, const SkRect &dest_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const =0 |
| Draws the the image to the specified region on the specified canvas. The source image is scaled and translated to fill the destination region. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, ArrayPtr< PointF > dest_points, const SkRect &src_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const =0 |
| Draws the specified region of the image to the specified region on the specified canvas. The source bitmap region is scaled and translated to fill the destination region. More...
|
|
virtual void | Draw (SkCanvas *sk_canvas, const System::Details::ArrayView< PointF > &dest_points, const SkRect &src_rect, SkMatrix *matrix, SkFilterQuality quality, SkBlendMode blend_mode) const =0 |
| Draws the specified region of the image to the specified region on the specified canvas. The source bitmap region is scaled and translated to fill the destination region. More...
|
|