20#include <xtd/any_object>
21#include <xtd/iequatable>
211 bool equals(const
object& obj) const noexcept override;
341 explicit
image(const
xtd::
string& filename);
342 explicit
image(const
xtd::
string& filename,
bool use_icm);
343 explicit
image(std::istream& stream);
344 explicit
image(std::istream& stream,
bool use_icm);
360 void update_properties();
367#include "../literals/system_images.hpp"
Represent a polymorphic wrapper capable of holding any type.
Definition any_object.hpp:29
Provides methods for creating, manipulating, searching, and sorting arrays, thereby serving as the ba...
Definition array.hpp:64
Encapsulates a GDI+ bitmap, which consists of the pixel data for a graphics image and its attributes....
Definition bitmap.hpp:26
Represents an ARGB (alpha, red, green, blue) color.
Definition color.hpp:46
Defines an object used to draw lines and curves. This class cannot be inherited.
Definition graphics.hpp:67
An abstract base class that provides functionality for the bitmap and metafile descended classes.
Definition image.hpp:49
const xtd::byte * alpha() const
Gets the image alpha pointer, which represents the alpha data of the image.
const size_f & physical_dimension() const noexcept
Gets the width and height of this image.
xtd::drawing::image get_thmbnail_image(int32 thumb_width, int32 thunb_height) noexcept
Returns a thumbnail for this xtd::drawing::image.
xtd::array< guid > frame_dimentions_list() const noexcept
Gets an array of GUIDs that represent the dimensions of frames within this image.
const xtd::array< int32 > & property_id_list() const noexcept
Gets IDs of the property items stored in this image.
static bitmap from_xbm_data(const unsigned char *bits, int32 width, int32 height)
Creates an xtd::drawing::image from the specified data pointer, width and hieght.
imaging::pixel_format pixel_format() const noexcept
Gets the pixel format for this image.
const xtd::byte * rgb() const
Gets the image data pointer, which represents the RGB data of the image.
graphics create_graphics()
Creates the xtd::drawing::graphics for the image.
int32 flags() const noexcept
Gets attribute flags for the pixel data of this xtd::drawing::image.
static bool is_canonical_pixel_format(xtd::drawing::imaging::pixel_format pixfmt) noexcept
Returns a value that indicates whether the pixel format is 32 bits per pixel.
xtd::usize get_hash_code() const noexcept override
Serves as a hash function for a particular type.
xtd::drawing::imaging::property_item get_property_item(int32 propid)
Gets the specified property item from this xtd::drawing::image.
bool equals(const object &obj) const noexcept override
Determines whether the specified object is equal to the current object.
float horizontal_resolution() const noexcept
Gets the horizontal resolution, in pixels per inch, of this image.
image clone() const
Creates an exact copy of this xtd::drawing::image.
static bool is_extended_pixel_format(xtd::drawing::imaging::pixel_format pixfmt) noexcept
Returns a value that indicates whether the pixel format is 64 bits per pixel.
xtd::byte * alpha()
Gets the image alpha pointer, which represents the alpha data of the image.
static int32 get_pixel_format_size(xtd::drawing::imaging::pixel_format pixfmt) noexcept
Returns the color depth, in number of bits per pixel, of the specified pixel format.
void rotate_flip(xtd::drawing::rotate_flip_type rotate_flip_type)
Rotates, flips, or rotates and flips the xtd::drawing::image.
static image empty
Represent an empty xtd::drawing::image.
Definition image.hpp:65
const xtd::array< imaging::property_item > & property_items() const noexcept
Gets all the property items (pieces of metadata) stored in this image.
xtd::drawing::rectangle_f get_bounds(xtd::drawing::graphics_unit page_unit) const noexcept
Gets the bounds of the image in the specified unit.
int32 height() const noexcept
Gets the height, in pixels, of this image.
xtd::usize get_frame_count(const xtd::drawing::imaging::frame_dimension &dimension) const
Returns the number of frames of the specified dimension.
static bool is_alpha_pixel_format(xtd::drawing::imaging::pixel_format pixfmt) noexcept
Returns a value that indicates whether the pixel format for this xtd::drawing::image contains alpha i...
float vertical_resolution() const noexcept
Gets the vertical resolution, in pixels per inch, of this image.
static bitmap from_hbitmap(intptr hbitmap)
Creates a xtd::drawing::bitmap from a handle to a GDI bitmap.
const imaging::image_format & raw_format() const noexcept
Gets the file format of this image.
static bitmap from_xpm_data(const char *const *bits)
Creates an xtd::drawing::image from the specified data pointer.
static image from_stream(std::istream &stream)
Creates an xtd::drawing::image from the specified data stream.
xtd::drawing::imaging::encoder_parameters get_encoder_parameter_list(xtd::guid encoder) const noexcept
Returns information about the parameters supported by the specified image encoder.
void save(const xtd::string &filename) const
Saves this xtd::drawing::image to the specified file or stream.
static image from_file(const xtd::string &filename)
Creates an image from the specified file.
const xtd::any_object & tag() const noexcept
Gets an object that provides additional data about the image.
imaging::color_palette palette() const noexcept
Gets the color palette used for this image.
intptr handle() const noexcept
Gets the handle of this image.
int32 width() const noexcept
Gets the width, in pixels, of this image.
const drawing::size & size() const noexcept
Gets the width and height, in pixels, of this image.
Represents a globally unique identifier (GUID). A GUID is a 128-bit integer (16 bytes) that can be us...
Definition guid.hpp:23
Defines a generalized method that a value type or class implements to create a type-specific method f...
Definition iequatable.hpp:23
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes....
Definition object.hpp:45
Contains xtd::drawing::imaging::color_palette class.
Contains drawing_export_ keyword.
Contains xtd::drawing::imaging::encoder_parameters struct.
Contains xtd::drawing::imaging::frame_dimension class.
Contains xtd::drawing::graphics class.
Contains xtd::drawing::graphics_unit enum class.
#define drawing_export_
Define shared library export.
Definition drawing_export.hpp:13
xtd::shared_ptr_object< type_t > sptr
The xtd::sptr object is a shared pointer.
Definition sptr.hpp:25
std::intmax_t intptr
Represent a pointer or a handle.
Definition intptr.hpp:23
std::int32_t int32
Represents a 32-bit signed integer.
Definition int32.hpp:25
std::size_t usize
Represents an unsigned size of any object in bytes.
Definition usize.hpp:22
std::uint8_t byte
Represents a 8-bit unsigned integer.
Definition byte.hpp:23
graphics_unit
Specifies the unit of measure for the given data. This enumeration has a flags attribute that allows ...
Definition graphics_unit.hpp:17
rotate_flip_type
Specifies how much an image is rotated and the axis used to flip the image.
Definition rotate_flip_type.hpp:19
Contains xtd::drawing::imaging::image_flags class.
Contains xtd::drawing::drawing_2d::interpolation_mode enum class.
The xtd::drawing::drawing_2d namespace provides advanced two-dimensional and vector graphics function...
Definition compositing_mode.hpp:12
The xtd::drawing::imaging::effects namespace provides functionality for adding effects to images.
Definition bitonal_effect.hpp:16
The xtd::drawing::imaging namespace provides advanced GDI+ imaging functionality. Basic graphics func...
Definition bitmap_data.hpp:15
The xtd::drawing namespace provides access to GDI+ basic graphics functionality. More advanced functi...
Definition actions_system_images.hpp:10
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
constexpr const_pointer data() const noexcept
Gets direct access to the underlying contiguous storage.
Definition read_only_span.hpp:201
Contains xtd::drawing::imaging::property_item class.
Contains xtd::drawing::rectangle class.
Contains xtd::drawing::rotate_flip_type enum class.
Contains xtd::drawing::size class.
Contains xtd::drawing::size_f class.
The xtd::drawing::imaging::effects::resize_effect resizes the image with new rectangle and optionnaly...
Definition resize_effect.hpp:35
The xtd::drawing::imaging::effects::scale_effect scales the image with new size.
Definition scale_effect.hpp:35
Stores a set of four floating-point numbers that represent the location and size of a rectangle....
Definition rectangle_f.hpp:34
Stores a set of four integers that represent the location and size of a rectangle.
Definition rectangle.hpp:44
Stores an ordered pair of floating-point, which specify a height and width.
Definition size_f.hpp:32