Upgrade freeimage.

pull/216/head
castano 14 years ago
parent 4b08c20b0e
commit cf62ecc199

Binary file not shown.

@ -47,8 +47,8 @@
// Version information ------------------------------------------------------
#define FREEIMAGE_MAJOR_VERSION 3
#define FREEIMAGE_MINOR_VERSION 10
#define FREEIMAGE_RELEASE_SERIAL 0
#define FREEIMAGE_MINOR_VERSION 13
#define FREEIMAGE_RELEASE_SERIAL 1
// Compiler options ---------------------------------------------------------
@ -98,7 +98,7 @@
// This really only affects 24 and 32 bit formats, the rest are always RGB order.
#define FREEIMAGE_COLORORDER_BGR 0
#define FREEIMAGE_COLORORDER_RGB 1
#if defined(__APPLE__) || defined(FREEIMAGE_BIGENDIAN)
#if defined(FREEIMAGE_BIGENDIAN)
#define FREEIMAGE_COLORORDER FREEIMAGE_COLORORDER_RGB
#else
#define FREEIMAGE_COLORORDER FREEIMAGE_COLORORDER_BGR
@ -128,6 +128,10 @@ FI_STRUCT (FIMULTIBITMAP) { void *data; };
// Types used in the library (directly copied from Windows) -----------------
#if defined(__MINGW32__) && defined(_WINDOWS_H)
#define _WINDOWS_ // prevent a bug in MinGW32
#endif // __MINGW32__
#ifndef _WINDOWS_
#define _WINDOWS_
@ -410,7 +414,10 @@ FI_ENUM(FREE_IMAGE_FORMAT) {
FIF_SGI = 28,
FIF_EXR = 29,
FIF_J2K = 30,
FIF_JP2 = 31
FIF_JP2 = 31,
FIF_PFM = 32,
FIF_PICT = 33,
FIF_RAW = 34
};
/** Image type used in FreeImage.
@ -609,10 +616,10 @@ FI_STRUCT (FIMEMORY) { void *data; };
#ifndef PLUGINS
#define PLUGINS
typedef const char *(DLL_CALLCONV *FI_FormatProc) ();
typedef const char *(DLL_CALLCONV *FI_DescriptionProc) ();
typedef const char *(DLL_CALLCONV *FI_ExtensionListProc) ();
typedef const char *(DLL_CALLCONV *FI_RegExprProc) ();
typedef const char *(DLL_CALLCONV *FI_FormatProc)(void);
typedef const char *(DLL_CALLCONV *FI_DescriptionProc)(void);
typedef const char *(DLL_CALLCONV *FI_ExtensionListProc)(void);
typedef const char *(DLL_CALLCONV *FI_RegExprProc)(void);
typedef void *(DLL_CALLCONV *FI_OpenProc)(FreeImageIO *io, fi_handle handle, BOOL read);
typedef void (DLL_CALLCONV *FI_CloseProc)(FreeImageIO *io, fi_handle handle, void *data);
typedef int (DLL_CALLCONV *FI_PageCountProc)(FreeImageIO *io, fi_handle handle, void *data);
@ -620,10 +627,10 @@ typedef int (DLL_CALLCONV *FI_PageCapabilityProc)(FreeImageIO *io, fi_handle han
typedef FIBITMAP *(DLL_CALLCONV *FI_LoadProc)(FreeImageIO *io, fi_handle handle, int page, int flags, void *data);
typedef BOOL (DLL_CALLCONV *FI_SaveProc)(FreeImageIO *io, FIBITMAP *dib, fi_handle handle, int page, int flags, void *data);
typedef BOOL (DLL_CALLCONV *FI_ValidateProc)(FreeImageIO *io, fi_handle handle);
typedef const char *(DLL_CALLCONV *FI_MimeProc) ();
typedef const char *(DLL_CALLCONV *FI_MimeProc)(void);
typedef BOOL (DLL_CALLCONV *FI_SupportsExportBPPProc)(int bpp);
typedef BOOL (DLL_CALLCONV *FI_SupportsExportTypeProc)(FREE_IMAGE_TYPE type);
typedef BOOL (DLL_CALLCONV *FI_SupportsICCProfilesProc)();
typedef BOOL (DLL_CALLCONV *FI_SupportsICCProfilesProc)(void);
FI_STRUCT (Plugin) {
FI_FormatProc format_proc;
@ -672,16 +679,21 @@ typedef void (DLL_CALLCONV *FI_InitProc)(Plugin *plugin, int format_id);
#define IFF_DEFAULT 0
#define J2K_DEFAULT 0 // save with a 16:1 rate
#define JP2_DEFAULT 0 // save with a 16:1 rate
#define JPEG_DEFAULT 0 // loading (see JPEG_FAST); saving (see JPEG_QUALITYGOOD)
#define JPEG_DEFAULT 0 // loading (see JPEG_FAST); saving (see JPEG_QUALITYGOOD|JPEG_SUBSAMPLING_420)
#define JPEG_FAST 0x0001 // load the file as fast as possible, sacrificing some quality
#define JPEG_ACCURATE 0x0002 // load the file with the best quality, sacrificing some speed
#define JPEG_CMYK 0x0004 // load separated CMYK "as is" (use | to combine with other load flags)
#define JPEG_EXIFROTATE 0x0008 // load and rotate according to Exif 'Orientation' tag if available
#define JPEG_QUALITYSUPERB 0x80 // save with superb quality (100:1)
#define JPEG_QUALITYGOOD 0x0100 // save with good quality (75:1)
#define JPEG_QUALITYNORMAL 0x0200 // save with normal quality (50:1)
#define JPEG_QUALITYAVERAGE 0x0400 // save with average quality (25:1)
#define JPEG_QUALITYBAD 0x0800 // save with bad quality (10:1)
#define JPEG_PROGRESSIVE 0x2000 // save as a progressive-JPEG (use | to combine with other save flags)
#define JPEG_SUBSAMPLING_411 0x1000 // save with high 4x1 chroma subsampling (4:1:1)
#define JPEG_SUBSAMPLING_420 0x4000 // save with medium 2x2 medium chroma subsampling (4:2:0) - default value
#define JPEG_SUBSAMPLING_422 0x8000 // save with low 2x1 chroma subsampling (4:2:2)
#define JPEG_SUBSAMPLING_444 0x10000 // save with no chroma subsampling (4:4:4)
#define KOALA_DEFAULT 0
#define LBM_DEFAULT 0
#define MNG_DEFAULT 0
@ -690,13 +702,23 @@ typedef void (DLL_CALLCONV *FI_InitProc)(Plugin *plugin, int format_id);
#define PCD_BASEDIV4 2 // load the bitmap sized 384 x 256
#define PCD_BASEDIV16 3 // load the bitmap sized 192 x 128
#define PCX_DEFAULT 0
#define PFM_DEFAULT 0
#define PICT_DEFAULT 0
#define PNG_DEFAULT 0
#define PNG_IGNOREGAMMA 1 // avoid gamma correction
#define PNG_IGNOREGAMMA 1 // loading: avoid gamma correction
#define PNG_Z_BEST_SPEED 0x0001 // save using ZLib level 1 compression flag (default value is 6)
#define PNG_Z_DEFAULT_COMPRESSION 0x0006 // save using ZLib level 6 compression flag (default recommended value)
#define PNG_Z_BEST_COMPRESSION 0x0009 // save using ZLib level 9 compression flag (default value is 6)
#define PNG_Z_NO_COMPRESSION 0x0100 // save without ZLib compression
#define PNG_INTERLACED 0x0200 // save using Adam7 interlacing (use | to combine with other save flags)
#define PNM_DEFAULT 0
#define PNM_SAVE_RAW 0 // If set the writer saves in RAW format (i.e. P4, P5 or P6)
#define PNM_SAVE_ASCII 1 // If set the writer saves in ASCII format (i.e. P1, P2 or P3)
#define PSD_DEFAULT 0
#define RAS_DEFAULT 0
#define RAW_DEFAULT 0 // load the file as linear RGB 48-bit
#define RAW_PREVIEW 1 // try to load the embedded JPEG preview with included Exif Data or default to RGB 24-bit
#define RAW_DISPLAY 2 // load the file as RGB 24-bit
#define SGI_DEFAULT 0
#define TARGA_DEFAULT 0
#define TARGA_LOAD_RGB888 1 // If set the loader converts RGB555 and ARGB8888 -> RGB888.
@ -714,6 +736,15 @@ typedef void (DLL_CALLCONV *FI_InitProc)(Plugin *plugin, int format_id);
#define XBM_DEFAULT 0
#define XPM_DEFAULT 0
// Background filling options ---------------------------------------------------------
// Constants used in FreeImage_FillBackground and FreeImage_EnlargeCanvas
#define FI_COLOR_IS_RGB_COLOR 0x00 // RGBQUAD color is a RGB color (contains no valid alpha channel)
#define FI_COLOR_IS_RGBA_COLOR 0x01 // RGBQUAD color is a RGBA color (contains a valid alpha channel)
#define FI_COLOR_FIND_EQUAL_COLOR 0x02 // For palettized images: lookup equal RGB color from palette
#define FI_COLOR_ALPHA_IS_INDEX 0x04 // The color's rgbReserved member (alpha) contains the palette index to be used
#define FI_COLOR_PALETTE_SEARCH_MASK (FI_COLOR_FIND_EQUAL_COLOR | FI_COLOR_ALPHA_IS_INDEX) // No color lookup is performed
#ifdef __cplusplus
extern "C" {
@ -792,6 +823,7 @@ DLL_API BOOL DLL_CALLCONV FreeImage_FIFSupportsICCProfiles(FREE_IMAGE_FORMAT fif
// Multipaging interface ----------------------------------------------------
DLL_API FIMULTIBITMAP * DLL_CALLCONV FreeImage_OpenMultiBitmap(FREE_IMAGE_FORMAT fif, const char *filename, BOOL create_new, BOOL read_only, BOOL keep_cache_in_memory FI_DEFAULT(FALSE), int flags FI_DEFAULT(0));
DLL_API FIMULTIBITMAP * DLL_CALLCONV FreeImage_OpenMultiBitmapFromHandle(FREE_IMAGE_FORMAT fif, FreeImageIO *io, fi_handle handle, int flags FI_DEFAULT(0));
DLL_API BOOL DLL_CALLCONV FreeImage_CloseMultiBitmap(FIMULTIBITMAP *bitmap, int flags FI_DEFAULT(0));
DLL_API int DLL_CALLCONV FreeImage_GetPageCount(FIMULTIBITMAP *bitmap);
DLL_API void DLL_CALLCONV FreeImage_AppendPage(FIMULTIBITMAP *bitmap, FIBITMAP *data);
@ -819,7 +851,6 @@ DLL_API BOOL DLL_CALLCONV FreeImage_IsLittleEndian(void);
DLL_API BOOL DLL_CALLCONV FreeImage_LookupX11Color(const char *szColor, BYTE *nRed, BYTE *nGreen, BYTE *nBlue);
DLL_API BOOL DLL_CALLCONV FreeImage_LookupSVGColor(const char *szColor, BYTE *nRed, BYTE *nGreen, BYTE *nBlue);
// Pixel access routines ----------------------------------------------------
DLL_API BYTE *DLL_CALLCONV FreeImage_GetBits(FIBITMAP *dib);
@ -938,6 +969,8 @@ DLL_API FIBITMAP *DLL_CALLCONV FreeImage_ConvertToType(FIBITMAP *src, FREE_IMAGE
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_ToneMapping(FIBITMAP *dib, FREE_IMAGE_TMO tmo, double first_param FI_DEFAULT(0), double second_param FI_DEFAULT(0));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_TmoDrago03(FIBITMAP *src, double gamma FI_DEFAULT(2.2), double exposure FI_DEFAULT(0));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_TmoReinhard05(FIBITMAP *src, double intensity FI_DEFAULT(0), double contrast FI_DEFAULT(0));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_TmoReinhard05Ex(FIBITMAP *src, double intensity FI_DEFAULT(0), double contrast FI_DEFAULT(0), double adaptation FI_DEFAULT(1), double color_correction FI_DEFAULT(0));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_TmoFattal02(FIBITMAP *src, double color_saturation FI_DEFAULT(0.5), double attenuation FI_DEFAULT(0.85));
// ZLib interface -----------------------------------------------------------
@ -953,7 +986,7 @@ DLL_API DWORD DLL_CALLCONV FreeImage_ZLibCRC32(DWORD crc, BYTE *source, DWORD so
// --------------------------------------------------------------------------
// tag creation / destruction
DLL_API FITAG *DLL_CALLCONV FreeImage_CreateTag();
DLL_API FITAG *DLL_CALLCONV FreeImage_CreateTag(void);
DLL_API void DLL_CALLCONV FreeImage_DeleteTag(FITAG *tag);
DLL_API FITAG *DLL_CALLCONV FreeImage_CloneTag(FITAG *tag);
@ -985,6 +1018,7 @@ DLL_API BOOL DLL_CALLCONV FreeImage_GetMetadata(FREE_IMAGE_MDMODEL model, FIBITM
// helpers
DLL_API unsigned DLL_CALLCONV FreeImage_GetMetadataCount(FREE_IMAGE_MDMODEL model, FIBITMAP *dib);
DLL_API BOOL DLL_CALLCONV FreeImage_CloneMetadata(FIBITMAP *dst, FIBITMAP *src);
// tag to C string conversion
DLL_API const char* DLL_CALLCONV FreeImage_TagToString(FREE_IMAGE_MDMODEL model, FITAG *tag, char *Make FI_DEFAULT(NULL));
@ -994,11 +1028,14 @@ DLL_API const char* DLL_CALLCONV FreeImage_TagToString(FREE_IMAGE_MDMODEL model,
// --------------------------------------------------------------------------
// rotation and flipping
/// @deprecated see FreeImage_Rotate
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_RotateClassic(FIBITMAP *dib, double angle);
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_Rotate(FIBITMAP *dib, double angle, const void *bkcolor FI_DEFAULT(NULL));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_RotateEx(FIBITMAP *dib, double angle, double x_shift, double y_shift, double x_origin, double y_origin, BOOL use_mask);
DLL_API BOOL DLL_CALLCONV FreeImage_FlipHorizontal(FIBITMAP *dib);
DLL_API BOOL DLL_CALLCONV FreeImage_FlipVertical(FIBITMAP *dib);
DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransform(const char *src_file, const char *dst_file, FREE_IMAGE_JPEG_OPERATION operation, BOOL perfect FI_DEFAULT(FALSE));
DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransformU(const wchar_t *src_file, const wchar_t *dst_file, FREE_IMAGE_JPEG_OPERATION operation, BOOL perfect FI_DEFAULT(FALSE));
// upsampling / downsampling
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_Rescale(FIBITMAP *dib, int dst_width, int dst_height, FREE_IMAGE_FILTER filter);
@ -1029,8 +1066,15 @@ DLL_API FIBITMAP *DLL_CALLCONV FreeImage_Copy(FIBITMAP *dib, int left, int top,
DLL_API BOOL DLL_CALLCONV FreeImage_Paste(FIBITMAP *dst, FIBITMAP *src, int left, int top, int alpha);
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_Composite(FIBITMAP *fg, BOOL useFileBkg FI_DEFAULT(FALSE), RGBQUAD *appBkColor FI_DEFAULT(NULL), FIBITMAP *bg FI_DEFAULT(NULL));
DLL_API BOOL DLL_CALLCONV FreeImage_JPEGCrop(const char *src_file, const char *dst_file, int left, int top, int right, int bottom);
DLL_API BOOL DLL_CALLCONV FreeImage_JPEGCropU(const wchar_t *src_file, const wchar_t *dst_file, int left, int top, int right, int bottom);
DLL_API BOOL DLL_CALLCONV FreeImage_PreMultiplyWithAlpha(FIBITMAP *dib);
// background filling routines
DLL_API BOOL DLL_CALLCONV FreeImage_FillBackground(FIBITMAP *dib, const void *color, int options FI_DEFAULT(0));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_EnlargeCanvas(FIBITMAP *src, int left, int top, int right, int bottom, const void *color, int options FI_DEFAULT(0));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_AllocateEx(int width, int height, int bpp, const RGBQUAD *color, int options FI_DEFAULT(0), const RGBQUAD *palette FI_DEFAULT(NULL), unsigned red_mask FI_DEFAULT(0), unsigned green_mask FI_DEFAULT(0), unsigned blue_mask FI_DEFAULT(0));
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_AllocateExT(FREE_IMAGE_TYPE type, int width, int height, int bpp, const void *color, int options FI_DEFAULT(0), const RGBQUAD *palette FI_DEFAULT(NULL), unsigned red_mask FI_DEFAULT(0), unsigned green_mask FI_DEFAULT(0), unsigned blue_mask FI_DEFAULT(0));
// miscellaneous algorithms
DLL_API FIBITMAP *DLL_CALLCONV FreeImage_MultigridPoissonSolver(FIBITMAP *Laplacian, int ncycle FI_DEFAULT(3));

Binary file not shown.

@ -5,6 +5,101 @@ What's New for FreeImage
! : changed
+ : added
December 22, 2009 - 3.13.1
! FreeImage now uses libTIFF 3.9.2
! FreeImage now uses OpenJPEG 1.3.0 (SVN patch 2009-11-05)
! FreeImage now uses libPNG 1.2.41
+ [Berend Engelbrecht] added loading of Exif orientation tag in TIFF plugin
+ [Herve Drolon] added decoding support for the old and outdated JPEG-in-TIFF 6.0 format in TIFF plugin
+ [Herve Drolon] added new 'non standard' Exif tags
+ [Herve Drolon] added new Exif makernote tags
* [Herve Drolon] fixed TIF plugin crashing on a malformed TIFF-JPEG compressed image
* [Herve Drolon] fixed MNG plugin crashing on some old mng images
* [Herve Drolon] fixed handling of 2-bit grayscale transparent PNG
* [Herve Drolon] fixed a bug with the compression rate of JP2 and J2K encoders
* [zestony] fixed TIF plugin with the '65535 bytes' pitch size limitation on saving
* [Herve Drolon] fixed handling of PSD files with a non zero file header reserved member
* [Lucian Sabo] PNG plugin now keep transparency when saving 1- or 4-bit transparent images
September 28th, 2009 - 3.13.0
! FreeImage now uses LibJPEG 7
! FreeImage now uses LibRaw-Lite 0.7.2
! FreeImage now uses libPNG 1.2.40
! FreeImage now uses libTIFF 3.9.1
! FreeImage_RotateClassic is deprecated (use FreeImage_Rotate instead)
+ [Herve Drolon] added support for all Photoshop supported color modes to PSD plugin
+ [Herve Drolon] added support for 32-bit to JNG/MNG plugin
+ [Amir Ebrahimi] added loading support for the PICT format
+ [Herve Drolon] added loading support for camera RAW formats (using LibRawLite wrapper for dcraw)
+ [Mihail Naydenov] added UNICODE functions FreeImage_JPEGTransformU and FreeImage_JPEGCropU
+ [Carsten Klein] added FreeImage_OpenMultiBitmapFromHandle
+ [Carsten Klein] added FreeImage_FillBackground
+ [Carsten Klein] added FreeImage_EnlargeCanvas
+ [Carsten Klein] added FreeImage_AllocateEx / FreeImage_AllocateExT
+ [Mihail Naydenov/Herve Drolon] added FreeImage_TmoReinhard05Ex
+ [Herve Drolon] added FIT_RGBA16 to FIT_RGBF conversion to FreeImage_ConvertToRGBF
+ [Herve Drolon] added FreeImage_Rotate (support for most image types, support background color)
* [Christian Heimes] fixed function prototypes to use a void argument when no argument exist
* [Herve Drolon] fixed RGB color ordering on Intel macs
* [Herve Drolon] FreeImage_RotateClassic now keep transparency when applied to 8-bit images
* [Herve Drolon] fixed handling of transparency info in FreeImage_Copy
* [Herve Drolon] fixed a normalization error in FreeImage_GetAdjustColorsLookupTable
* [Herve Drolon] fixed invalid Exif rotation in PluginJPEG for orientation cases 2 and 4
* [Mihail Naydenov / Carsten Klein] fixed compilation issues with MinGW32
* [Mihail Naydenov] improved the loading speed of all targa images
* [Herve Drolon] FreeImage_TagToString now handles the Exif UserComment tag
April 14th, 2009 - 3.12.0
! FreeImage now uses libPNG 1.2.35
! FreeImage now uses libTIFF 3.9.0beta (CVS patch 2009-02-12)
! FreeImage now uses OpenJPEG 1.3.0 (SVN patch 2008-08-21)
! [Herve Drolon] FreeImage_CloneMetadata no longer clone the FIMD_ANIMATION metadata (this was causing problems when saving to GIF format)
+ [Herve Drolon] added full support for the PFM format
+ [Herve Drolon] added JPEG_EXIFROTATE load flag to the JPEG plugin
+ [Herve Drolon] added 16-bit RGB(A) and float RGB(A)F support to FreeImage_GetChannel / FreeImage_SetChannel
+ [Herve Drolon] added src FIT_RGBA16 to dst 32-bit FIT_BITMAP conversion to FreeImage_ConvertToType
* [Carsten Klein] FreeImage_Copy now copies transparency info, resolution info, ICC profile and metadata
* [Carsten Klein] check for negative top/left values in FreeImage_Paste
* [Christian Heimes] changed exceptions with a "catch(char *text)" to a "catch(const char *text)" to make GCC 4.1 happy
* [Deif Lou] fixed a bug in FreeImage_SetTransparentIndex
* [Thomas Maiwald] BMP plugin: on saving, fixed correct setting of bfSize BMP file header for palettized images
* [Timothy Lee] fixed handling of frame disposal in GIF_PLAYBACK mode (GIF plugin)
* [Herve Drolon] fixed handling of Exif Olympus Type 2 maker notes (not yet supported but now safely ignored)
* [Rich Geldreich] fixed DXT1 color endpoint precision problem in DDS plugin
* [Mihail Naydenov] improved loading speed of 24-bit targa images
* [Eugene Golushkov] improved big endian / little endian swapping functions
* [Carsten Klein/Jean-Philippe Goerke] improved FreeImage_SetMetadata / FreeImage_GetMetadata accessors
* [Christian Ruppert] improved Linux Makefiles
* [Eugene Golushkov] fixed PluginBMP alignment bug while saving 16 or 24bit BMP on big endian or Apple machines
July 28th, 2008 - 3.11.0
! FreeImage now uses libTIFF 3.9.0beta (CVS patch 2008-05-24)
! FreeImage now uses OpenJPEG 1.3.0 (SVN patch 2008-05-22)
! FreeImage now uses libMNG 1.0.10
! FreeImage now uses libPNG 1.2.29
+ [Yves Schmid] added 48-bit RGB to 32-bit conversion support in FreeImage_ConvertTo32Bits
+ [Aaron Shumate] added RGB16-to-BITMAP and All-to-RGBF conversion support in FreeImage_ConvertToType
+ [Benjamin English] added a new OpenGL sample to FreeImage/Examples
+ [Lucian Sabo] added new compression flags to the PNG plugin
+ [Lucian Sabo] added new compression flags to the JPEG plugin (chroma subsampling options)
+ [Noam Gat] added support for SGI grayscale + alpha pics to SGI plugin
+ [Herve Drolon] added FreeImage_CloneMetadata
+ [Herve Drolon] added loading support for Windows Vista icons in ICO Plugin
+ [Herve Drolon] added loading and saving support for RGBF images to the TIF plugin (using the LogLuv codec)
* [Will Bryant] fixed makefile for MacOSX Tiger and Leopard
* [Maria Gullickson] fixed a 'divide by 0' error in PNM plugin and FreeImage_Rescale function
* [Yves Schmid] fixed a bug with Exif metadata reading in TIFF images
* [Herve Drolon] fixed some possible 64-bit portability issues with pointer calculations
* [wangyn] fixed a bug with transparency handling of indexed images in PNG plugin
* [Martin Dyring-Andersen] fixed a bug with GIFinfo structure initialization in GIF plugin
* [Noam Gat] fixed a bug in SGI plugin: when the file reports as two-dimensional, the height factor does not get loaded
* [Herve Drolon] added error messages in FreeImage_Load(U) / FreeImage_Save(U) in case of bad filenames
* [Scott Smith/Herve Drolon] added missing IPTC tags and renamed some tag names to be compatible with ExifTool naming convention
* [Martin Dyring-Andersen] fixed a crash problem with images containing exif data emitted by Picassa
* [Herve Drolon] removed RGBA to RGB transparent conversion in EXR plugin
* [Glenn Pierce] improved the speed of FreeImage_FlipHorizontal
* [Carsten Klein] fixed 65535 pixels width/height limitation in FreeImage_Paste
November 19th, 2007 - 3.10.0
! FreeImage now uses libTIFF 3.9.0beta (CVS patch 2007-10-05)
! FreeImage now uses OpenJPEG 1.2.0 (SVN patch 2007-07-13)

Loading…
Cancel
Save