FreeImagePlus
FreeImage 3.18.0
|
22 #ifndef FREEIMAGEPLUS_H
23 #define FREEIMAGEPLUS_H
28 #include "FreeImage.h"
33 #if defined(FREEIMAGE_LIB)
37 #if defined(_WIN32) || defined(__WIN32__)
38 #define WIN32_LEAN_AND_MEAN
39 #define FIP_CALLCONV __stdcall
47 #define FIP_API __declspec(dllexport)
49 #define FIP_API __declspec(dllimport)
53 #if defined(__GNUC__) && ((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
54 #ifndef GCC_HASCLASSVISIBILITY
55 #define GCC_HASCLASSVISIBILITY
59 #if defined(GCC_HASCLASSVISIBILITY)
60 #define FIP_API __attribute__ ((visibility("default")))
64 #endif // WIN32 / !WIN32
65 #endif // FREEIMAGE_LIB
84 virtual BOOL isValid()
const = 0;
124 fipImage(FREE_IMAGE_TYPE image_type = FIT_BITMAP,
unsigned width = 0,
unsigned height = 0,
unsigned bpp = 0);
131 BOOL
setSize(FREE_IMAGE_TYPE image_type,
unsigned width,
unsigned height,
unsigned bpp,
unsigned red_mask = 0,
unsigned green_mask = 0,
unsigned blue_mask = 0);
195 BOOL
crop(
int left,
int top,
int right,
int bottom);
215 BOOL
createView(
fipImage& dynamicView,
unsigned left,
unsigned top,
unsigned right,
unsigned bottom);
268 BOOL
load(
const char* lpszPathName,
int flag = 0);
278 BOOL
load(FREE_IMAGE_FORMAT fif,
const char* lpszPathName,
int flag = 0);
284 BOOL
loadU(
const wchar_t* lpszPathName,
int flag = 0);
290 BOOL
loadU(FREE_IMAGE_FORMAT fif,
const wchar_t* lpszPathName,
int flag = 0);
329 BOOL
save(
const char* lpszPathName,
int flag = 0);
339 BOOL
save(FREE_IMAGE_FORMAT fif,
const char* lpszPathName,
int flag = 0);
345 BOOL
saveU(
const wchar_t* lpszPathName,
int flag = 0);
351 BOOL
saveU(FREE_IMAGE_FORMAT fif,
const wchar_t* lpszPathName,
int flag = 0);
362 BOOL
saveToHandle(FREE_IMAGE_FORMAT fif, FreeImageIO *io, fi_handle handle,
int flag = 0);
422 operator FIBITMAP*() {
649 BOOL
dither(FREE_IMAGE_DITHER algorithm);
762 BOOL
toneMapping(FREE_IMAGE_TMO tmo,
double first_param = 0,
double second_param = 0,
double third_param = 1,
double fourth_param = 0);
874 BOOL
rotateEx(
double angle,
double x_shift,
double y_shift,
double x_origin,
double y_origin, BOOL use_mask);
883 BOOL
rotate(
double angle,
const void *bkcolor = NULL);
970 BOOL
getHistogram(DWORD *histo, FREE_IMAGE_COLOR_CHANNEL channel = FICC_BLACK)
const;
984 BOOL
rescale(
unsigned new_width,
unsigned new_height, FREE_IMAGE_FILTER filter);
1006 _bHasChanged = bStatus;
1015 return _bHasChanged;
1066 BOOL replace(FIBITMAP *new_dib);
1091 fipWinImage(FREE_IMAGE_TYPE image_type = FIT_BITMAP,
unsigned width = 0,
unsigned height = 0,
unsigned bpp = 0);
1185 void draw(HDC hDC, RECT& rcDest)
const {
1186 drawEx(hDC, rcDest, FALSE, NULL, NULL);
1206 void drawEx(HDC hDC, RECT& rcDest, BOOL useFileBkg = FALSE,
RGBQUAD *appBkColor = NULL, FIBITMAP *bg = NULL)
const;
1218 void setToneMappingOperator(FREE_IMAGE_TMO tmo,
double first_param = 0,
double second_param = 0,
double third_param = 1,
double fourth_param = 0);
1229 void getToneMappingOperator(FREE_IMAGE_TMO *tmo,
double *first_param,
double *second_param,
double *third_param,
double *fourth_param)
const;
1303 operator FIMEMORY*() {
1316 FIBITMAP*
load(FREE_IMAGE_FORMAT fif,
int flags = 0)
const;
1333 BOOL
save(FREE_IMAGE_FORMAT fif, FIBITMAP *dib,
int flags = 0);
1342 BOOL
saveMultiPage(FREE_IMAGE_FORMAT fif, FIMULTIBITMAP *bitmap,
int flags = 0);
1351 unsigned read(
void *buffer,
unsigned size,
unsigned count)
const;
1360 unsigned write(
const void *buffer,
unsigned size,
unsigned count);
1370 BOOL
seek(
long offset,
int origin);
1423 operator FIMULTIBITMAP*() {
1436 BOOL
open(
const char* lpszPathName, BOOL create_new, BOOL read_only,
int flags = 0);
1455 BOOL
open(FreeImageIO *io, fi_handle handle,
int flags = 0);
1474 BOOL
saveToHandle(FREE_IMAGE_FORMAT fif, FreeImageIO *io, fi_handle handle,
int flags = 0)
const;
1718 const char*
toString(FREE_IMAGE_MDMODEL model,
char *Make = NULL)
const;
1786 #endif // FREEIMAGEPLUS_H
virtual ~fipMemoryIO()
Destructor.
BOOL getPixelColor(unsigned x, unsigned y, RGBQUAD *value) const
Get the pixel color of a 16-, 24- or 32-bit image at position (x, y), including range check (slow acc...
FIBITMAP * load(FREE_IMAGE_FORMAT fif, int flags=0) const
Loads a dib from a memory stream.
Memory handle.
Definition: FreeImagePlus.h:1261
BOOL rescale(unsigned new_width, unsigned new_height, FREE_IMAGE_FILTER filter)
Rescale the image to a new width / height.
fipTag(const fipTag &tag)
Copy constructor.
BOOL loadU(FREE_IMAGE_FORMAT fif, const wchar_t *lpszPathName, int flag=0)
UNICODE version of load (this function only works under WIN32 and does nothing on other OS)
BOOL saveToMemory(FREE_IMAGE_FORMAT fif, fipMemoryIO &memIO, int flags=0) const
Saves a multi-page image using the specified memory stream and an optional flag.
FIMULTIBITMAP * _mpage
Pointer to a multi-page file stream.
Definition: FreeImagePlus.h:1399
BOOL setKeyValue(const char *key, const char *value)
Construct a FIDT_ASCII tag (ASCII string).
fipWinImage & operator=(const fipImage &src)
Copy constructor.
FIMEMORY * _hmem
Pointer to a memory stream.
Definition: FreeImagePlus.h:1264
void setVerticalResolution(double value)
set the bitmap resolution along the Y axis, in pixels / cm
fipImage & operator=(FIBITMAP *dib)
Assignement operator Copy the input pointer and manage its destruction
unsigned getScanWidth() const
Returns the width of the bitmap in bytes rounded to the nearest DWORD.
BOOL invert()
Inverts each pixel data.
BOOL clearThumbnail()
Clear the thumbnail possibly attached to the bitmap.
double _tmo_param_1
first tone mapping algorithm parameter
Definition: FreeImagePlus.h:1241
BOOL isModified()
Get the image status.
Definition: FreeImagePlus.h:1014
BOOL rotateEx(double angle, double x_shift, double y_shift, double x_origin, double y_origin, BOOL use_mask)
Image translation and rotation using B-Splines.
unsigned getImageSize() const
Returns the size of the bitmap in bytes.
BOOL saveU(FREE_IMAGE_FORMAT fif, const wchar_t *lpszPathName, int flag=0)
UNICODE version of save (this function only works under WIN32 and does nothing on other OS)
FIBITMAP * _dib
DIB data.
Definition: FreeImagePlus.h:107
const void * getValue() const
Returns the tag value.
const BITMAPINFOHEADER * getInfoHeader() const
Returns a pointer to the bitmap's BITMAPINFOHEADER.
BOOL getLockedPageNumbers(int *pages, int *count) const
Returns an array of page-numbers that are currently locked in memory.
unsigned getPaletteSize() const
Returns the palette size in bytes.
void setToneMappingOperator(FREE_IMAGE_TMO tmo, double first_param=0, double second_param=0, double third_param=1, double fourth_param=0)
Select a tone mapping algorithm used for drawing and set the image as modified so that the display wi...
long tell() const
Gets the current position of a memory pointer.
BOOL setMetadata(FREE_IMAGE_MDMODEL model, const char *key, fipTag &tag)
Attach a new FreeImage tag to the dib.
BOOL flipHorizontal()
Flip the image horizontally along the vertical axis.
BOOL convertTo4Bits()
Converts the bitmap to 4 bits.
BOOL hasThumbnail() const
Check if the image has an embedded thumbnail.
BOOL isValid() const
Returns TRUE if the image is allocated, FALSE otherwise.
Multi-page file stream.
Definition: FreeImagePlus.h:1396
FREE_IMAGE_FORMAT getFIF() const
Return the original (or last saved) fif format if available, returns FIF_UNKNOWN otherwise.
BOOL setType(FREE_IMAGE_MDTYPE type)
Set the tag data type.
BOOL convertToRGB16()
Converts the bitmap to a 48-bit RGB16 image.
DWORD getLength() const
Returns the length of the tag value in bytes.
static FREE_IMAGE_FORMAT identifyFIFFromMemory(FIMEMORY *hmem)
Identifies an image using the specified memory stream.
BOOL isValid() const
Returns TRUE if the image is allocated, FALSE otherwise.
BOOL movePage(int target, int source)
Moves the source page to the position of the target page.
double getVerticalResolution() const
Returns the bitmap resolution along the Y axis, in pixels / cm.
BYTE * getScanLine(unsigned scanline) const
Returns a pointer to the start of the given scanline in the bitmap’s data-bits.
BOOL loadU(const wchar_t *lpszPathName, int flag=0)
UNICODE version of load (this function only works under WIN32 and does nothing on other OS)
Abstract base class for all objects used by the library.
Definition: FreeImagePlus.h:77
BOOL adjustCurve(BYTE *LUT, FREE_IMAGE_COLOR_CHANNEL channel)
Perfoms an histogram transformation on a 8, 24 or 32-bit image according to the values of a lookup ta...
virtual void clear()
Destroy image data.
BOOL saveU(const wchar_t *lpszPathName, int flag=0)
UNICODE version of save (this function only works under WIN32 and does nothing on other OS)
FREE_IMAGE_TMO _tmo
tone mapping operator
Definition: FreeImagePlus.h:1239
BOOL convertToType(FREE_IMAGE_TYPE image_type, BOOL scale_linear=TRUE)
Converts an image to a type supported by FreeImage.
BOOL adjustBrightness(double percentage)
Adjusts the brightness of a 8, 24 or 32-bit image by a certain amount.
FIBITMAP * _display_dib
DIB used for display (this allow to display non-standard bitmaps)
Definition: FreeImagePlus.h:1235
BOOL convertToRGBAF()
Converts the bitmap to a 128-bit RGBAF image.
BOOL saveMultiPage(FREE_IMAGE_FORMAT fif, FIMULTIBITMAP *bitmap, int flags=0)
Saves a multi-page bitmap to a memory stream.
BOOL colorQuantize(FREE_IMAGE_QUANTIZE algorithm)
Quantizes a full colour 24-bit bitmap to a palletised 8-bit bitmap.
BOOL getFileBkColor(RGBQUAD *bkcolor) const
Retrieves the file background color of an image.
BOOL copyToClipboard(HWND hWndNewOwner) const
Clipboard copy.
virtual ~fipObject()
Destructor.
Definition: FreeImagePlus.h:80
BOOL open(FreeImageIO *io, fi_handle handle, int flags=0)
Open a multi-page image as read/write, using the specified FreeImageIO struct and fi_handle,...
BOOL setChannel(fipImage &image, FREE_IMAGE_COLOR_CHANNEL channel)
Insert a 8-bit dib into a 24- or 32-bit image.
fipTag & operator=(FITAG *tag)
Assignement operator Copy the input pointer and manage its destruction
BOOL isGrayscale() const
Returns TRUE if the bitmap is a 8-bit bitmap with a greyscale palette, FALSE otherwise.
fipImage(const fipImage &src)
Copy constructor.
BOOL setValue(const void *value)
Set the tag value.
fipWinImage & operator=(const fipWinImage &src)
Copy constructor Delete internal _display_dib data and copy tone mapping parameters.
BOOL isValid() const
Returns TRUE if the internal memory buffer is a valid buffer, returns FALSE otherwise.
virtual ~fipImage()
Destructor.
FIMULTIBITMAP * loadMultiPage(FREE_IMAGE_FORMAT fif, int flags=0) const
Loads a multi-page bitmap from a memory stream.
BOOL open(fipMemoryIO &memIO, int flags=0)
Open a multi-page memory stream as read/write.
double getHorizontalResolution() const
Returns the bitmap resolution along the X axis, in pixels / cm.
BOOL open(const char *lpszPathName, BOOL create_new, BOOL read_only, int flags=0)
Open a multi-page file stream.
WORD getID() const
Returns the tag ID if available, returns 0 otherwise.
BOOL setLength(DWORD length)
Set the length of the tag value, in bytes.
BOOL toneMapping(FREE_IMAGE_TMO tmo, double first_param=0, double second_param=0, double third_param=1, double fourth_param=0)
Converts a High Dynamic Range image (48-bit RGB or 96-bit RGB Float) to a 24-bit RGB image.
void setHorizontalResolution(double value)
set the bitmap resolution along the X axis, in pixels / cm
void appendPage(fipImage &image)
Appends a new page to the end of the bitmap.
BOOL setID(WORD id)
Set the (usually optional) tad ID.
BOOL adjustGamma(double gamma)
Performs gamma correction on a 8, 24 or 32-bit image.
BOOL getHistogram(DWORD *histo, FREE_IMAGE_COLOR_CHANNEL channel=FICC_BLACK) const
Computes image histogram.
BOOL _bDeleteMe
remember to delete _display_dib
Definition: FreeImagePlus.h:1237
const BITMAPINFO * getInfo() const
Returns a pointer to the bitmap's BITMAPINFO header.
HANDLE copyToHandle() const
Clone function used for clipboard copy.
RGBQUAD * getPalette() const
Returns a pointer to the bitmap's palette.
BOOL isTransparent() const
Returns TRUE if the image is transparent, returns FALSE otherwise.
FREE_IMAGE_FORMAT getFileType() const
Returns the buffer image format.
BOOL save(FREE_IMAGE_FORMAT fif, FIBITMAP *dib, int flags=0)
Saves a dib to a memory stream.
fipMemoryIO(BYTE *data=NULL, DWORD size_in_bytes=0)
Constructor.
unsigned getHeight() const
Returns the image height in pixels.
BOOL convertTo24Bits()
Converts the bitmap to 24 bits.
BOOL copyFromBitmap(HBITMAP hbmp)
Copy constructor.
BOOL save(FREE_IMAGE_FORMAT fif, const char *lpszPathName, int flag=0)
Saves an image to disk, given its format, file name and an optional flag.
void setModified(BOOL bStatus=TRUE)
Set the image status as 'modified'.
Definition: FreeImagePlus.h:1005
fipImage(FREE_IMAGE_TYPE image_type=FIT_BITMAP, unsigned width=0, unsigned height=0, unsigned bpp=0)
Constructor.
BOOL adjustContrast(double percentage)
Adjusts the contrast of a 8, 24 or 32-bit image by a certain amount.
const char * getDescription() const
Returns the tag description if available, returns NULL otherwise.
fipImage & operator=(const fipImage &src)
Copy constructor.
BOOL convertToRGBA16()
Converts the bitmap to a 64-bit RGBA16 image.
BOOL setPixelColor(unsigned x, unsigned y, RGBQUAD *value)
Set the pixel color of a 16-, 24- or 32-bit image at position (x, y), including range check (slow acc...
BOOL load(const char *lpszPathName, int flag=0)
Loads an image from disk, given its file name and an optional flag.
unsigned getBitsPerPixel() const
Returns the bitdepth of the bitmap.
BOOL hasFileBkColor() const
Returns TRUE when the image has a file background color, FALSE otherwise.
BOOL makeThumbnail(unsigned max_size, BOOL convert=TRUE)
Creates a thumbnail image keeping aspect ratio.
FREE_IMAGE_FORMAT _fif
Original (or last saved) fif format if available, FIF_UNKNOWN otherwise.
Definition: FreeImagePlus.h:109
BOOL getThumbnail(fipImage &image) const
Retrieves a copy the thumbnail possibly attached to the bitmap.
BOOL convertToUINT16()
Converts the bitmap to a 16-bit unsigned short image.
FREE_IMAGE_MDTYPE getType() const
Returns the tag data type.
BOOL flipVertical()
Flip the image vertically along the horizontal axis.
BYTE * getTransparencyTable() const
8-bit transparency : get the bitmap’s transparency table.
double _tmo_param_2
second tone mapping algorithm parameter
Definition: FreeImagePlus.h:1243
BOOL load(FREE_IMAGE_FORMAT fif, const char *lpszPathName, int flag=0)
Loads an image from disk, given its format, file name and an optional flag.
A class designed for MS Windows (TM) platforms.
Definition: FreeImagePlus.h:1087
BOOL seek(long offset, int origin)
Moves the memory pointer to a specified location.
BOOL copyFromHandle(HANDLE hMem)
Copy constructor used for clipboard paste.
BOOL createView(fipImage &dynamicView, unsigned left, unsigned top, unsigned right, unsigned bottom)
Returns a reference (a.k.a.
FreeImage Tag.
Definition: FreeImagePlus.h:1569
BOOL convertTo32Bits()
Converts the bitmap to 32 bits.
FREE_IMAGE_COLOR_TYPE getColorType() const
Investigates the colour type of the bitmap.
BOOL saveToHandle(FREE_IMAGE_FORMAT fif, FreeImageIO *io, fi_handle handle, int flag=0)
Saves an image using the specified FreeImageIO struct and fi_handle, and an optional flag.
virtual ~fipWinImage()
Destructor.
BOOL convertToGrayscale()
Converts the bitmap to 8 bits.
BOOL pasteSubImage(fipImage &src, int left, int top, int alpha=256)
static FREE_IMAGE_FORMAT identifyFIF(const char *lpszPathName)
Identifies an image from disk, given its file name.
void deletePage(int page)
Deletes the page on the given position.
BOOL acquire(BYTE **data, DWORD *size_in_bytes)
Provides a direct buffer access to a memory stream.
unsigned getColorsUsed() const
Retrieves the number of colours used in the bitmap.
void draw(HDC hDC, RECT &rcDest) const
Draw (stretch) the image on a HDC, using StretchDIBits.
Definition: FreeImagePlus.h:1185
BOOL setKey(const char *key)
Set the tag field name.
BOOL convertTo16Bits555()
Converts the bitmap to 16 bits.
void unlockPage(fipImage &image, BOOL changed)
Unlocks a previously locked page and gives it back to the multi-page engine.
void insertPage(int page, fipImage &image)
Inserts a new page before the given position in the bitmap.
static FREE_IMAGE_FORMAT identifyFIFFromHandle(FreeImageIO *io, fi_handle handle)
Identifies an image using the specified FreeImageIO struct and fi_handle.
DWORD getCount() const
Returns the number of components in the tag (in tag type units)
BOOL loadFromMemory(FREE_IMAGE_FORMAT fif, fipMemoryIO &memIO, int flag=0)
Loads an image using the specified fif and memory stream and an optional flag.
BOOL loadFromHandle(FreeImageIO *io, fi_handle handle, int flag=0)
Loads an image using the specified FreeImageIO struct and fi_handle, and an optional flag.
fipMultiPage(BOOL keep_cache_in_memory=FALSE)
Constructor.
virtual ~fipMultiPage()
Destructor Close the file stream if not already done.
BOOL crop(int left, int top, int right, int bottom)
Crop a sub part of the current image and update it accordingly.
BOOL convertToFloat()
Converts the bitmap to a 32-bit float image.
BOOL convertTo8Bits()
Converts the bitmap to 8 bits.
void clearMetadata()
Clear all metadata contained in the dib.
BOOL _bMemoryCache
TRUE when using a memory cache, FALSE otherwise.
Definition: FreeImagePlus.h:1401
BOOL dither(FREE_IMAGE_DITHER algorithm)
Converts a 8-bit image to a monochrome 1-bit image using a dithering algorithm.
unsigned getTransparencyCount() const
8-bit transparency : get the number of transparent colors.
const char * getKey() const
Returns the tag field name (unique inside a metadata model).
BOOL loadFromMemory(fipMemoryIO &memIO, int flag=0)
Loads an image using the specified memory stream and an optional flag.
BOOL threshold(BYTE T)
Converts the bitmap to 1 bit using a threshold T.
BOOL convertTo16Bits565()
Converts the bitmap to 16 bits.
BOOL captureWindow(HWND hWndApplicationWindow, HWND hWndSelectedWindow)
Capture a window and convert it to an image.
void getToneMappingOperator(FREE_IMAGE_TMO *tmo, double *first_param, double *second_param, double *third_param, double *fourth_param) const
Get the tone mapping algorithm used for drawing, with its parameters.
BOOL getPixelIndex(unsigned x, unsigned y, BYTE *value) const
Get the pixel index of a 1-, 4- or 8-bit palettized image at position (x, y), including range check (...
BOOL close(int flags=0)
Close a file stream.
Definition: FreeImage.h:224
BOOL adjustBrightnessContrastGamma(double brightness, double contrast, double gamma)
Adjusts an image's brightness, contrast and gamma within a single operation.
BOOL saveToMemory(FREE_IMAGE_FORMAT fif, fipMemoryIO &memIO, int flag=0)
Saves an image using the specified memory stream and an optional flag.
BOOL isValid() const
Returns TRUE if the tag is allocated, FALSE otherwise.
void setTransparencyTable(BYTE *table, int count)
8-bit transparency : set the bitmap’s transparency table.
BOOL setDescription(const char *description)
Set the (usually optional) tag description.
unsigned getWidth() const
Returns the image width in pixels.
unsigned getImageMemorySize() const
Returns the memory footprint of a bitmap, in bytes.
BOOL setFileBkColor(RGBQUAD *bkcolor)
Set the file background color of an image.
static FREE_IMAGE_FORMAT identifyFIFU(const wchar_t *lpszPathName)
UNICODE version of identifyFIF (this function only works under WIN32 and does nothing on other OS)
BOOL splitChannels(fipImage &RedChannel, fipImage &GreenChannel, fipImage &BlueChannel)
Split a 24-bit RGB image into 3 greyscale images corresponding to the red, green and blue channels.
BOOL save(const char *lpszPathName, int flag=0)
Saves an image to disk, given its file name and an optional flag.
BOOL saveToHandle(FREE_IMAGE_FORMAT fif, FreeImageIO *io, fi_handle handle, int flags=0) const
Saves a multi-page image using the specified FreeImageIO struct and fi_handle, and an optional flag.
BOOL setSize(FREE_IMAGE_TYPE image_type, unsigned width, unsigned height, unsigned bpp, unsigned red_mask=0, unsigned green_mask=0, unsigned blue_mask=0)
Image allocator.
BOOL getChannel(fipImage &image, FREE_IMAGE_COLOR_CHANNEL channel) const
Retrieves the red, green, blue or alpha channel of a 24- or 32-bit BGR[A] image.
virtual void clear()
Destroy image data.
BOOL setThumbnail(const fipImage &image)
Attach a thumbnail to the bitmap.
FIBITMAP * lockPage(int page)
Locks a page in memory for editing.
Definition: FreeImage.h:179
BOOL getMetadata(FREE_IMAGE_MDMODEL model, const char *key, fipTag &tag) const
Retrieve a metadata attached to the dib.
unsigned read(void *buffer, unsigned size, unsigned count) const
Reads data from a memory stream.
fipTag & operator=(const fipTag &tag)
Copy constructor.
unsigned getMetadataCount(FREE_IMAGE_MDMODEL model) const
Returns the number of tags contained in the model metadata model attached to the dib.
unsigned getLine() const
Returns the width of the bitmap in bytes.
BYTE * accessPixels() const
Returns a pointer to the bitmap bits.
BOOL _bHasChanged
TRUE whenever the display need to be refreshed.
Definition: FreeImagePlus.h:111
BOOL setCount(DWORD count)
Set the number of data in the tag.
virtual ~fipTag()
Destructor.
FITAG * _tag
Pointer to a FreeImage tag.
Definition: FreeImagePlus.h:1572
BOOL setPixelIndex(unsigned x, unsigned y, BYTE *value)
Set the pixel index of a 1-, 4- or 8-bit palettized image at position (x, y), including range check (...
BOOL pasteFromClipboard()
Retrieves data from the clipboard.
int getPageCount() const
Returns the number of pages currently available in the multi-paged bitmap.
BOOL copySubImage(fipImage &dst, int left, int top, int right, int bottom) const
Copy a sub part of the current image and returns it as a fipImage object.
BOOL isValid() const
Returns TRUE if the multi-page stream is opened.
unsigned write(const void *buffer, unsigned size, unsigned count)
Writes data to a memory stream.
FREE_IMAGE_TYPE getImageType() const
Returns the data type of the image.
BOOL combineChannels(fipImage &red, fipImage &green, fipImage &blue)
Builds a 24-bit RGB image given its red, green and blue channel.
void drawEx(HDC hDC, RECT &rcDest, BOOL useFileBkg=FALSE, RGBQUAD *appBkColor=NULL, FIBITMAP *bg=NULL) const
Draw (stretch) the image on a HDC, using StretchDIBits.
A class used to manage all photo related images and all image types used by the library.
Definition: FreeImagePlus.h:104
double _tmo_param_3
third tone mapping algorithm parameter
Definition: FreeImagePlus.h:1245
double _tmo_param_4
fourth tone mapping algorithm parameter
Definition: FreeImagePlus.h:1247
BOOL convertToRGBF()
Converts the bitmap to a 96-bit RGBF image.
const char * toString(FREE_IMAGE_MDMODEL model, char *Make=NULL) const
Converts a FreeImage tag structure to a string that represents the interpreted tag value.
BOOL rotate(double angle, const void *bkcolor=NULL)
Image rotation by means of three shears.
