The FreeImage type exposes the following members.

Methods

  NameDescription
AcquireMemory
Provides a direct buffer access to a memory stream.
AdjustBrightness
Adjusts the brightness of a 8-, 24- or 32-bit image by a certain amount.
AdjustColors
Adjusts an image's brightness, contrast and gamma as well as it may optionally invert the image within a single operation.
AdjustContrast
Adjusts the contrast of a 8-, 24- or 32-bit image by a certain amount.
AdjustCurve
Perfoms an histogram transformation on a 8-, 24- or 32-bit image.
AdjustGamma
Performs gamma correction on a 8-, 24- or 32-bit image.
AllocateOverloaded.
AllocateExOverloaded.
AllocateExTOverloaded.
AllocateTOverloaded.
AppendPage
Appends a new page to the end of the bitmap.
ApplyColorMapping
Applies color mapping for one or several colors on a 1-, 4- or 8-bit palletized or a 16-, 24- or 32-bit high color image.
ApplyPaletteIndexMapping
Applies palette index mapping for one or several indices on a 1-, 4- or 8-bit palletized image.
Clone
Makes an exact reproduction of an existing bitmap, including metadata and attached profile if any.
CloneMetadata
Copies the metadata of FreeImage bitmap to another.
CloneMetadataEx
Copies metadata from one FreeImage bitmap to another.
CloneTag
Creates and returns a copy of a FITAG object.
CloseMemory
Close and free a memory stream.
CloseMultiBitmap
Closes a previously opened multi-page bitmap and, when the bitmap was not opened read-only, applies any changes made to it.
CloseMultiBitmapExOverloaded.
ColorQuantize
Quantizes a high-color 24-bit bitmap to an 8-bit palette color bitmap.
ColorQuantizeExOverloaded.
Compare
Compares two FreeImage bitmaps.
CompareMemoryOverloaded.
CompositeOverloaded.
ConvertColorDepthOverloaded.
ConvertFromRawBitsOverloaded.
ConvertTo16Bits555
Converts a bitmap to 16 bits, where each pixel has a color pattern of 5 bits red, 5 bits green and 5 bits blue. One bit in each pixel is unused.
ConvertTo16Bits565
Converts a bitmap to 16 bits, where each pixel has a color pattern of 5 bits red, 6 bits green and 5 bits blue.
ConvertTo24Bits
Converts a bitmap to 24 bits. A clone of the input bitmap is returned for 24-bit bitmaps.
ConvertTo32Bits
Converts a bitmap to 32 bits. A clone of the input bitmap is returned for 32-bit bitmaps.
ConvertTo4Bits
Converts a bitmap to 4 bits. If the bitmap was a high-color bitmap (16, 24 or 32-bit) or if it was a monochrome or greyscale bitmap (1 or 8-bit), the end result will be a greyscale bitmap, otherwise (1-bit palletised bitmaps) it will be a palletised bitmap.
ConvertTo8Bits
Converts a bitmap to 8 bits. If the bitmap was a high-color bitmap (16, 24 or 32-bit) or if it was a monochrome or greyscale bitmap (1 or 4-bit), the end result will be a greyscale bitmap, otherwise (1 or 4-bit palletised bitmaps) it will be a palletised bitmap.
ConvertToGreyscale
Converts a bitmap to a 8-bit greyscale image with a linear ramp.
ConvertToRawBitsOverloaded.
ConvertToRGBF
Converts a 24- or 32-bit RGB(A) standard image or a 48-bit RGB image to a FIT_RGBF type image.
ConvertToStandardType
Converts a non standard image whose color type is FIC_MINISBLACK to a standard 8-bit greyscale image.
ConvertToType
Converts an image of any type to type dst_type.
Copy
Copy a sub part of the current dib image.
CopyMemoryOverloaded.
CreateFromBitmap
Converts an .NET Bitmap into a FreeImage bitmap.
CreateFromHbitmap
Creates a FreeImage DIB from a Device Context/Compatible Bitmap.
CreateICCProfile
Creates a new FIICCPROFILE block from ICC profile data previously read from a file or built by a color management system. The profile data is attached to the bitmap.
CreateICCProfileExOverloaded.
CreateTag
Allocates a new FITAG object. This object must be destroyed with a call to DeleteTag(FITAG) when no longer in use.
DeletePage
Deletes the page on the given position.
DeleteTag
Delete a previously allocated FITAG object.
DestroyICCProfile
This function destroys an FIICCPROFILE previously created by CreateICCProfile(FIBITMAP, array<Byte>[]()[], Int32). After this call the bitmap will contain no profile information. This function should be called to ensure that a stored bitmap will not contain any profile information.
Dither
Converts a bitmap to 1-bit monochrome bitmap using a dithering algorithm. For 1-bit input bitmaps, the function clones the input bitmap and builds a monochrome palette.
EnlargeCanvas<(Of <(T>)>)
Enlarges or shrinks the FreeImage bitmap selectively per side and fills newly added areas with the specified background color. See remarks for further details.
FIFSupportsExportBPP
Checks if a plugin can save bitmaps in the desired bit depth.
FIFSupportsExportType
Checks if a plugin can save a bitmap in the desired data type.
FIFSupportsICCProfiles
Checks if a plugin can load or save an ICC profile.
FIFSupportsReading
Checks if a plugin can load bitmaps.
FIFSupportsWriting
Checks if a plugin can save bitmaps.
FillBackground<(Of <(T>)>)
Sets all pixels of the specified image to the color provided through the color parameter. See remarks for further details.
FindCloseMetadata
Closes the specified metadata search handle and releases associated resources.
FindFirstMetadataOverloaded.
FindNextMetadataOverloaded.
FlipHorizontal
Flip the input dib horizontally along the vertical axis.
FlipVertical
Flip the input dib vertically along the horizontal axis.
FreeHbitmap
Frees a bitmap handle.
GetAdjustColorsLookupTable
Creates a lookup table to be used with AdjustCurve(FIBITMAP, array<Byte>[]()[], FREE_IMAGE_COLOR_CHANNEL) which may adjusts brightness and contrast, correct gamma and invert the image with a single call to AdjustCurve(FIBITMAP, array<Byte>[]()[], FREE_IMAGE_COLOR_CHANNEL).
GetBackgroundColor
Returns the file background color of an image. For 8-bit images, the color index in the palette is returned in the rgbReserved member of the bkcolor parameter.
GetBitmap
Converts a FreeImage bitmap to a .NET Bitmap.
GetBitmapForDevice
Returns an HBITMAP created by the CreateDIBitmap() function which in turn has always the same color depth as the reference DC, which may be provided through hdc. The desktop DC will be used, if IntPtr.Zero DC is specified. Call FreeHbitmap(IntPtr) to free the handle.
GetBits
Returns a pointer to the data-bits of the bitmap.
GetBlueMask
Returns a bit pattern describing the blue color component of a pixel in a FreeImage bitmap.
GetBPP
Returns the size of one pixel in the bitmap in bits.
GetChannel
Retrieves the red, green, blue or alpha channel of a 24- or 32-bit image.
GetColorsUsed
Returns the number of colors used in a bitmap.
GetColorType
Investigates the color type of the bitmap by reading the bitmap's pixel bits and analysing them.
GetComplexChannel
Retrieves the real part, imaginary part, magnitude or phase of a complex image.
GetCopyrightMessage
Returns a string containing a standard copyright message.
GetDIBSize
Returns the size of the DIB-element of a FIBITMAP in memory.
GetDotsPerMeterX
Returns the horizontal resolution, in pixels-per-meter, of the target device for the bitmap.
GetDotsPerMeterY
Returns the vertical resolution, in pixels-per-meter, of the target device for the bitmap.
GetFIFCount
Retrieves the number of FREE_IMAGE_FORMAT identifiers being currently registered.
GetFIFDescription
Returns a descriptive string that describes the bitmap formats the given plugin can read and/or write.
GetFIFExtensionList
Returns a comma-delimited file extension list describing the bitmap formats the given plugin can read and/or write.
GetFIFFromFilename
This function takes a filename or a file-extension and returns the plugin that can read/write files with that extension in the form of a FREE_IMAGE_FORMAT identifier.
GetFIFFromFormat
Returns a FREE_IMAGE_FORMAT identifier from the format string that was used to register the FIF.
GetFIFFromMime
Returns a FREE_IMAGE_FORMAT identifier from a MIME content type string (MIME stands for Multipurpose Internet Mail Extension).
GetFIFMimeType
Given a FREE_IMAGE_FORMAT identifier, returns a MIME content type string (MIME stands for Multipurpose Internet Mail Extension).
GetFIFRegExpr
Returns a regular expression string that can be used by a regular expression engine to identify the bitmap. FreeImageQt makes use of this function.
GetFileType
Orders FreeImage to analyze the bitmap signature.
GetFileTypeFromHandle
Uses the FreeImageIO structure as described in the topic bitmap management functions to identify a bitmap type.
GetFileTypeFromMemory
Uses a memory handle to identify a bitmap type.
GetFileTypeFromStream
Orders FreeImage to analyze the bitmap signature. In case the stream is not seekable, the stream will have been used and must be recreated for loading.
GetFormat
Returns the FREE_IMAGE_FORMAT for the specified ImageFormat.
GetFormatFromFIF
Returns the string that was used to register a plugin from the system assigned FREE_IMAGE_FORMAT.
GetFormatParametersOverloaded.
GetGreenMask
Returns a bit pattern describing the green color component of a pixel in a FreeImage bitmap.
GetHbitmap
Retrieves an hBitmap for a FreeImage bitmap. Call FreeHbitmap(IntPtr) to free the handle.
GetHeight
Returns the height of the bitmap in pixel units.
GetHistogram
Computes the image histogram.
GetICCProfile
Retrieves a pointer to the FIICCPROFILE data of the bitmap. This function can also be called safely, when the original format does not support profiles.
GetICCProfileEx
Retrieves the FIICCPROFILE data of the bitmap. This function can also be called safely, when the original format does not support profiles.
GetImageComment
Returns the comment of a JPEG, PNG or GIF image.
GetImageType
Retrieves the type of the bitmap.
GetInfo
Alias for FreeImage_GetInfoHeader that returns a pointer to a BITMAPINFO rather than to a BITMAPINFOHEADER.
GetInfoEx
Returns the BITMAPINFO structure of a FreeImage bitmap. The structure is a copy, so changes will have no effect on the bitmap itself.
GetInfoHeader
Returns a pointer to the BITMAPINFOHEADER of the DIB-element in a FIBITMAP.
GetInfoHeaderEx
Returns the BITMAPINFOHEADER structure of a FreeImage bitmap. The structure is a copy, so changes will have no effect on the bitmap itself.
GetLine
Returns the width of the bitmap in bytes.
GetLockedPageCount
Retrieves the number of pages that are locked in a multi-paged bitmap.
GetLockedPageNumbers
Returns an array of page-numbers that are currently locked in memory. When the pages parameter is null, the size of the array is returned in the count variable.
GetLockedPages
Retrieves a list locked pages of a multi-paged bitmap.
GetMetadataOverloaded.
GetMetadataCount
Returns the number of tags contained in the model metadata model attached to the input dib.
GetNativeVersion
Returns the version of the native FreeImage library.
GetPageCount
Returns the number of pages currently available in the multi-paged bitmap.
GetPalette
Returns a pointer to the bitmap's palette.
GetPaletteEx
Returns a structure that represents the palette of a FreeImage bitmap.
GetPitch
Returns the width of the bitmap in bytes, rounded to the next 32-bit boundary, also known as pitch or stride or scan width.
GetPixelColor
Get the pixel color of a 16-, 24- or 32-bit image at position (x, y), including range check (slow access).
GetPixelFormat
Returns the pixelformat of the bitmap.
GetPixelIndex
Get the pixel index of a palettized image at position (x, y), including range check (slow access).
GetPrimaryExtensionFromFIF
This function returns the primary (main or most commonly used?) extension of a certain image format (fif). This is done by returning the first of all possible extensions returned by GetFIFExtensionList(). That assumes, that the plugin returns the extensions in ordered form.
GetRedMask
Returns a bit pattern describing the red color component of a pixel in a FreeImage bitmap.
GetResolutionX
Retrieves a DIB's resolution in X-direction measured in 'dots per inch' (DPI) and not in 'dots per meter'.
GetResolutionY
Retrieves a DIB's resolution in Y-direction measured in 'dots per inch' (DPI) and not in 'dots per meter'.
GetScanLine
Returns a pointer to the start of the given scanline in the bitmap's data-bits.
GetTagCount
Returns the number of components in the tag (in tag type units).
GetTagDescription
Returns the tag description.
GetTagID
Returns the tag ID.
GetTagKey
Returns the tag field name (unique inside a metadata model).
GetTagLength
Returns the length of the tag value in bytes.
GetTagType
Returns the tag data type.
GetTagValue
Returns the tag value. It is up to the programmer to interpret the returned pointer correctly, according to the results of GetTagType and GetTagCount.
GetTransparencyCount
Returns the number of transparent colors in a palletised bitmap.
GetTransparencyTable
Returns a pointer to the bitmap's transparency table.
GetTransparencyTableEx
Returns the FreeImage bitmap's transparency table. The array is empty in case the bitmap has no transparency table.
GetTransparentIndex
Returns the palette entry used as transparent color for the image specified. Works for palletised images only and returns -1 for high color images or if the image has no color set to be transparent.
GetTypeParameters
Retrieves all parameters needed to create a new FreeImage bitmap from raw bits Image.
GetUniqueColors
This function returns the number of unique colors actually used by the specified 1-, 4-, 8-, 16-, 24- or 32-bit image. This might be different from what function FreeImage_GetColorsUsed() returns, which actually returns the palette size for palletised images. Works for FIT_BITMAP type images only.
GetVersion
Returns a string containing the current version of the library.
GetWidth
Returns the width of the bitmap in pixel units.
GetWrapperVersion
Returns the internal version of this FreeImage .NET wrapper.
HasBackgroundColor
Returns whether the bitmap has a file background color.
InsertPage
Inserts a new page before the given position in the bitmap.
Invert
Inverts each pixel data.
IsAvailable
Returns a value indicating if the FreeImage library is available or not. See remarks for further details.
IsExtensionValidForFIFOverloaded.
IsFilenameValidForFIFOverloaded.
IsGreyscaleImage
Returns whether the image is a greyscale image or not. The function scans all colors in the bitmaps palette for entries where red, green and blue are not all the same (not a grey color). Supports 1-, 4- and 8-bit bitmaps.
IsLittleEndian
Returns whether the platform is using Little Endian.
IsPluginEnabled
Retrieves the state of a plugin.
IsRGB555
Verifies whether the FreeImage bitmap is 16bit 555.
IsRGB565
Verifies whether the FreeImage bitmap is 16bit 565.
IsTransparent
Returns whether the transparency table is enabled.
JPEGCrop
Performs a lossless crop on a JPEG file.
JPEGTransform
Performs a lossless rotation or flipping on a JPEG file.
Load
Decodes a bitmap, allocates memory for it and returns it as a FIBITMAP.
LoadBitmap
Loads a .NET Bitmap from a file.
LoadExOverloaded.
LoadFromHandle
Loads a bitmap from an arbitrary source.
LoadFromMemory
Decodes a bitmap from a stream, allocates memory for it and returns it as a FIBITMAP.
LoadFromStreamOverloaded.
LoadMultiBitmapFromMemory
Open a multi-page bitmap from a memory stream.
LoadMultiBitmapFromStream
Loads a FreeImage multi-paged bitmap from a stream and returns the FreeImage memory stream used as temporary buffer. The bitmap can not be modified by calling AppendPage(FIMULTIBITMAP, FIBITMAP), InsertPage(FIMULTIBITMAP, Int32, FIBITMAP), MovePage(FIMULTIBITMAP, Int32, Int32) or DeletePage(FIMULTIBITMAP, Int32).
LockPage
Locks a page in memory for editing.
LookupSVGColor
Converts a SVG color name into a corresponding RGB value.
LookupX11Color
Converts a X11 color name into a corresponding RGB value.
MakeThumbnail
Creates a thumbnail from a greyscale or RGB(A) image, keeping aspect ratio.
MoveMemoryOverloaded.
MovePage
Moves the source page to the position of the target page.
MultigridPoissonSolver
Solves a Poisson equation, remap result pixels to [0..1] and returns the solution.
OpenMemory
Open a memory stream.
OpenMultiBitmap
Loads a FreeImage multi-paged bitmap. Load flags can be provided by the flags parameter.
OpenMultiBitmapExOverloaded.
OpenMultiBitmapFromHandle
Loads a FreeImage multi-pages bitmap from the specified handle using the specified functions. Load flags can be provided by the flags parameter.
OpenMultiBitmapFromStreamOverloaded.
OutputMessageProc
Calls the set error message function in FreeImage.
Paste
Alpha blend or combine a sub part image with the current dib image. The bit depth of the dst bitmap must be greater than or equal to the bit depth of the src.
PreMultiplyWithAlpha
Applies the alpha value of each pixel to its color components. The aplha value stays unchanged. Only works with 32-bits color depth.
ReadMemory
Reads data from a memory stream.
RegisterExternalPlugin
Registers a new plugin to be used in FreeImage. The plugin is residing in a DLL. The Init function must be called “Init” and must use the stdcall calling convention.
RegisterLocalPlugin
Registers a new plugin to be used in FreeImage.
Rescale
Performs resampling (or scaling, zooming) of a greyscale or RGB(A) image to the desired destination width and height.
RotateOverloaded.
Rotate4bit
Rotates a 4-bit color FreeImage bitmap. Allowed values for angle are 90, 180 and 270. In case angle is 0 or 360 a clone is returned. 0 is returned for other values or in case the rotation fails.
RotateClassic
This function rotates a 1-, 8-bit greyscale or a 24-, 32-bit color image by means of 3 shears. 1-bit images rotation is limited to integer multiple of 90°. null is returned for other values.
RotateEx
This function performs a rotation and / or translation of an 8-bit greyscale, 24- or 32-bit image, using a 3rd order (cubic) B-Spline.
Save
Saves a previosly loaded FIBITMAP to a file.
SaveBitmapOverloaded.
SaveExOverloaded.
SaveToHandle
Saves a bitmap to an arbitrary source.
SaveToMemory
Saves a previosly loaded FIBITMAP to a stream.
SaveToStreamOverloaded.
SeekMemory
Moves the memory handle to a specified location.
SetBackgroundColorOverloaded.
SetChannel
Insert a 8-bit dib into a 24- or 32-bit image. Both images must have to same width and height.
SetComplexChannel
Set the real or imaginary part of a complex image. Both images must have to same width and height.
SetDotsPerMeterX
Set the horizontal resolution, in pixels-per-meter, of the target device for the bitmap.
SetDotsPerMeterY
Set the vertical resolution, in pixels-per-meter, of the target device for the bitmap.
SetImageComment
Sets the comment of a JPEG, PNG or GIF image.
SetMetadataOverloaded.
SetPixelColor
Set the pixel color of a 16-, 24- or 32-bit image at position (x, y), including range check (slow access).
SetPixelIndex
Set the pixel index of a palettized image at position (x, y), including range check (slow access).
SetPluginEnabled
Enables or disables a plugin.
SetResolutionX
Sets a DIB's resolution in X-direction measured in 'dots per inch' (DPI) and not in 'dots per meter'.
SetResolutionY
Sets a DIB's resolution in Y-direction measured in 'dots per inch' (DPI) and not in 'dots per meter'.
SetTagCount
Sets the number of data in the tag.
SetTagDescription
Sets the tag description.
SetTagID
Sets the tag ID.
SetTagKey
Sets the tag field name.
SetTagLength
Sets the length of the tag value in bytes.
SetTagType
Sets the tag data type.
SetTagValue
Sets the tag value.
SetTransparencyTable
Set the FreeImage bitmap's transparency table. Only affects palletised bitmaps.
SetTransparent
Tells FreeImage if it should make use of the transparency table or the alpha channel that may accompany a bitmap.
SetTransparentIndex
Sets the index of the palette entry to be used as transparent color for the image specified. Does nothing on high color images.
SwapColors
Swaps two specified colors on a 1-, 4- or 8-bit palletized or a 16-, 24- or 32-bit high color image.
SwapPaletteIndices
Swaps two specified palette indices on a 1-, 4- or 8-bit palletized image.
TagToString
Converts a FreeImage tag structure to a string that represents the interpreted tag value. The function is not thread safe.
TellMemory
Gets the current position of a memory handle.
Threshold
Converts a bitmap to 1-bit monochrome bitmap using a threshold T between [0..255]. The function first converts the bitmap to a 8-bit greyscale bitmap. Then, any brightness level that is less than T is set to zero, otherwise to 1. For 1-bit input bitmaps, the function clones the input bitmap and builds a monochrome palette.
TmoDrago03
Converts a High Dynamic Range image to a 24-bit RGB image using a global operator based on logarithmic compression of luminance values, imitating the human response to light.
TmoFattal02
Apply the Gradient Domain High Dynamic Range Compression to a RGBF image and convert to 24-bit RGB.
TmoReinhard05
Converts a High Dynamic Range image to a 24-bit RGB image using a global operator inspired by photoreceptor physiology of the human visual system.
ToneMapping
Converts a High Dynamic Range image (48-bit RGB or 96-bit RGBF) to a 24-bit RGB image, suitable for display.
Unload
Deletes a previously loaded FIBITMAP from memory.
UnloadEx
Deletes a previously loaded FreeImage bitmap from memory and resets the handle to 0.
UnlockPage
Unlocks a previously locked page and gives it back to the multi-page engine.
WriteMemory
Writes data to a memory stream.
ZLibCompress
Compresses a source buffer into a target buffer, using the ZLib library.
ZLibCRC32
Generates a CRC32 checksum.
ZLibGUnzip
Decompresses a source buffer into a target buffer, using the ZLib library.
ZLibGZip
Compresses a source buffer into a target buffer, using the ZLib library.
ZLibUncompress
Decompresses a source buffer into a target buffer, using the ZLib library.

See Also