diff --git a/FreeImage/Include/FreeImage.h b/FreeImage/Include/FreeImage.h index e2d1c5a..12182cd 100644 --- a/FreeImage/Include/FreeImage.h +++ b/FreeImage/Include/FreeImage.h @@ -29,7 +29,7 @@ // Version information ------------------------------------------------------ #define FREEIMAGE_MAJOR_VERSION 3 -#define FREEIMAGE_MINOR_VERSION 17 +#define FREEIMAGE_MINOR_VERSION 18 #define FREEIMAGE_RELEASE_SERIAL 0 // Compiler options --------------------------------------------------------- @@ -75,7 +75,7 @@ // or define any of FREEIMAGE_BIGENDIAN and FREEIMAGE_LITTLEENDIAN directly // to specify the desired endianness. #if (!defined(FREEIMAGE_BIGENDIAN) && !defined(FREEIMAGE_LITTLEENDIAN)) - #if (defined(BYTE_ORDER) && BYTE_ORDER==BIG_ENDIAN) || (defined(__BYTE_ORDER) && __BYTE_ORDER==__BIG_ENDIAN) || defined(__BIG_ENDIAN__) +#if (defined(BYTE_ORDER) && BYTE_ORDER==BIG_ENDIAN) || (defined(__BYTE_ORDER) && __BYTE_ORDER==__BIG_ENDIAN) || (defined(__BYTE_ORDER) && __BYTE_ORDER==__ORDER_BIG_ENDIAN__) || defined(__BIG_ENDIAN__) #define FREEIMAGE_BIGENDIAN #endif // BYTE_ORDER #endif // !FREEIMAGE_[BIG|LITTLE]ENDIAN @@ -731,6 +731,9 @@ typedef void (DLL_CALLCONV *FI_InitProc)(Plugin *plugin, int format_id); #define PSD_DEFAULT 0 #define PSD_CMYK 1 //! reads tags for separated CMYK (default is conversion to RGB) #define PSD_LAB 2 //! reads tags for CIELab (default is conversion to RGB) +#define PSD_NONE 0x0100 //! save without any compression +#define PSD_RLE 0x0200 //! save using RLE compression +#define PSD_PSB 0x2000 //! save using Adobe Large Document Format (use | to combine with other save flags) #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 @@ -873,13 +876,19 @@ DLL_API void DLL_CALLCONV FreeImage_UnlockPage(FIMULTIBITMAP *bitmap, FIBITMAP * DLL_API BOOL DLL_CALLCONV FreeImage_MovePage(FIMULTIBITMAP *bitmap, int target, int source); DLL_API BOOL DLL_CALLCONV FreeImage_GetLockedPageNumbers(FIMULTIBITMAP *bitmap, int *pages, int *count); -// Filetype request routines ------------------------------------------------ +// File type request routines ------------------------------------------------ DLL_API FREE_IMAGE_FORMAT DLL_CALLCONV FreeImage_GetFileType(const char *filename, int size FI_DEFAULT(0)); DLL_API FREE_IMAGE_FORMAT DLL_CALLCONV FreeImage_GetFileTypeU(const wchar_t *filename, int size FI_DEFAULT(0)); DLL_API FREE_IMAGE_FORMAT DLL_CALLCONV FreeImage_GetFileTypeFromHandle(FreeImageIO *io, fi_handle handle, int size FI_DEFAULT(0)); DLL_API FREE_IMAGE_FORMAT DLL_CALLCONV FreeImage_GetFileTypeFromMemory(FIMEMORY *stream, int size FI_DEFAULT(0)); +DLL_API BOOL DLL_CALLCONV FreeImage_Validate(FREE_IMAGE_FORMAT fif, const char *filename); +DLL_API BOOL DLL_CALLCONV FreeImage_ValidateU(FREE_IMAGE_FORMAT fif, const wchar_t *filename); +DLL_API BOOL DLL_CALLCONV FreeImage_ValidateFromHandle(FREE_IMAGE_FORMAT fif, FreeImageIO *io, fi_handle handle); +DLL_API BOOL DLL_CALLCONV FreeImage_ValidateFromMemory(FREE_IMAGE_FORMAT fif, FIMEMORY *stream); + + // Image type request routine ----------------------------------------------- DLL_API FREE_IMAGE_TYPE DLL_CALLCONV FreeImage_GetImageType(FIBITMAP *dib); @@ -979,8 +988,11 @@ DLL_API void DLL_CALLCONV FreeImage_ConvertLine16To24_555(BYTE *target, BYTE *so DLL_API void DLL_CALLCONV FreeImage_ConvertLine16To24_565(BYTE *target, BYTE *source, int width_in_pixels); DLL_API void DLL_CALLCONV FreeImage_ConvertLine32To24(BYTE *target, BYTE *source, int width_in_pixels); DLL_API void DLL_CALLCONV FreeImage_ConvertLine1To32(BYTE *target, BYTE *source, int width_in_pixels, RGBQUAD *palette); +DLL_API void DLL_CALLCONV FreeImage_ConvertLine1To32MapTransparency(BYTE *target, BYTE *source, int width_in_pixels, RGBQUAD *palette, BYTE *table, int transparent_pixels); DLL_API void DLL_CALLCONV FreeImage_ConvertLine4To32(BYTE *target, BYTE *source, int width_in_pixels, RGBQUAD *palette); +DLL_API void DLL_CALLCONV FreeImage_ConvertLine4To32MapTransparency(BYTE *target, BYTE *source, int width_in_pixels, RGBQUAD *palette, BYTE *table, int transparent_pixels); DLL_API void DLL_CALLCONV FreeImage_ConvertLine8To32(BYTE *target, BYTE *source, int width_in_pixels, RGBQUAD *palette); +DLL_API void DLL_CALLCONV FreeImage_ConvertLine8To32MapTransparency(BYTE *target, BYTE *source, int width_in_pixels, RGBQUAD *palette, BYTE *table, int transparent_pixels); DLL_API void DLL_CALLCONV FreeImage_ConvertLine16To32_555(BYTE *target, BYTE *source, int width_in_pixels); DLL_API void DLL_CALLCONV FreeImage_ConvertLine16To32_565(BYTE *target, BYTE *source, int width_in_pixels); DLL_API void DLL_CALLCONV FreeImage_ConvertLine24To32(BYTE *target, BYTE *source, int width_in_pixels); @@ -1092,8 +1104,6 @@ DLL_API BOOL DLL_CALLCONV FreeImage_JPEGTransformCombinedFromMemory(FIMEMORY* sr // -------------------------------------------------------------------------- // 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); diff --git a/FreeImage/Lib/x32/FreeImage.lib b/FreeImage/Lib/x32/FreeImage.lib index 28071aa..433ad8f 100644 Binary files a/FreeImage/Lib/x32/FreeImage.lib and b/FreeImage/Lib/x32/FreeImage.lib differ diff --git a/FreeImage/Lib/x64/FreeImage.lib b/FreeImage/Lib/x64/FreeImage.lib index 59e3d84..8a93d25 100644 Binary files a/FreeImage/Lib/x64/FreeImage.lib and b/FreeImage/Lib/x64/FreeImage.lib differ diff --git a/Lua/Lib/lua54D32.lib b/Lua/Lib/lua54D32.lib index dcf86f5..f27d290 100644 Binary files a/Lua/Lib/lua54D32.lib and b/Lua/Lib/lua54D32.lib differ diff --git a/Lua/Lib/lua54D32.pdb b/Lua/Lib/lua54D32.pdb index 92a4205..9a3bee1 100644 Binary files a/Lua/Lib/lua54D32.pdb and b/Lua/Lib/lua54D32.pdb differ diff --git a/Lua/Lib/lua54D64.pdb b/Lua/Lib/lua54D64.pdb index 4643529..80b1b07 100644 Binary files a/Lua/Lib/lua54D64.pdb and b/Lua/Lib/lua54D64.pdb differ diff --git a/Lua/Lib/lua54R32.lib b/Lua/Lib/lua54R32.lib index c9c1300..b9bd056 100644 Binary files a/Lua/Lib/lua54R32.lib and b/Lua/Lib/lua54R32.lib differ diff --git a/lib3mf/Lib/lib3mfD32.lib b/lib3mf/Lib/lib3mfD32.lib index ba320b3..37f0634 100644 Binary files a/lib3mf/Lib/lib3mfD32.lib and b/lib3mf/Lib/lib3mfD32.lib differ diff --git a/lib3mf/Lib/lib3mfD32.pdb b/lib3mf/Lib/lib3mfD32.pdb index 74e27db..7767f95 100644 Binary files a/lib3mf/Lib/lib3mfD32.pdb and b/lib3mf/Lib/lib3mfD32.pdb differ diff --git a/lib3mf/Lib/lib3mfD64.lib b/lib3mf/Lib/lib3mfD64.lib index 2f553b8..f5c69b7 100644 Binary files a/lib3mf/Lib/lib3mfD64.lib and b/lib3mf/Lib/lib3mfD64.lib differ diff --git a/lib3mf/Lib/lib3mfD64.pdb b/lib3mf/Lib/lib3mfD64.pdb index b40c2ea..eb8ef8b 100644 Binary files a/lib3mf/Lib/lib3mfD64.pdb and b/lib3mf/Lib/lib3mfD64.pdb differ diff --git a/lib3mf/Lib/lib3mfR32.lib b/lib3mf/Lib/lib3mfR32.lib index e792e36..a2c2e18 100644 Binary files a/lib3mf/Lib/lib3mfR32.lib and b/lib3mf/Lib/lib3mfR32.lib differ diff --git a/lib3mf/Lib/lib3mfR64.lib b/lib3mf/Lib/lib3mfR64.lib index 1c931d1..39ff7c8 100644 Binary files a/lib3mf/Lib/lib3mfR64.lib and b/lib3mf/Lib/lib3mfR64.lib differ diff --git a/libzip/Lib/zipD32.lib b/libzip/Lib/zipD32.lib index d47bbc7..f6e05f3 100644 Binary files a/libzip/Lib/zipD32.lib and b/libzip/Lib/zipD32.lib differ diff --git a/libzip/Lib/zipD32.pdb b/libzip/Lib/zipD32.pdb index 2073d3f..83ce649 100644 Binary files a/libzip/Lib/zipD32.pdb and b/libzip/Lib/zipD32.pdb differ diff --git a/libzip/Lib/zipD64.lib b/libzip/Lib/zipD64.lib index b7877e8..0004a66 100644 Binary files a/libzip/Lib/zipD64.lib and b/libzip/Lib/zipD64.lib differ diff --git a/libzip/Lib/zipD64.pdb b/libzip/Lib/zipD64.pdb index c6c9c6c..b63e44c 100644 Binary files a/libzip/Lib/zipD64.pdb and b/libzip/Lib/zipD64.pdb differ diff --git a/libzip/Lib/zipR32.lib b/libzip/Lib/zipR32.lib index fcada75..14ce1e7 100644 Binary files a/libzip/Lib/zipR32.lib and b/libzip/Lib/zipR32.lib differ diff --git a/libzip/Lib/zipR64.lib b/libzip/Lib/zipR64.lib index 0d9b502..d34cc4a 100644 Binary files a/libzip/Lib/zipR64.lib and b/libzip/Lib/zipR64.lib differ diff --git a/opennurbs/Lib/opennurbs_publicD32.lib b/opennurbs/Lib/opennurbs_publicD32.lib index f10f6af..c70b08c 100644 Binary files a/opennurbs/Lib/opennurbs_publicD32.lib and b/opennurbs/Lib/opennurbs_publicD32.lib differ diff --git a/opennurbs/Lib/opennurbs_publicD32.pdb b/opennurbs/Lib/opennurbs_publicD32.pdb index ae71a7a..739da8a 100644 Binary files a/opennurbs/Lib/opennurbs_publicD32.pdb and b/opennurbs/Lib/opennurbs_publicD32.pdb differ diff --git a/opennurbs/Lib/opennurbs_publicD64.lib b/opennurbs/Lib/opennurbs_publicD64.lib index d2335fc..0015549 100644 Binary files a/opennurbs/Lib/opennurbs_publicD64.lib and b/opennurbs/Lib/opennurbs_publicD64.lib differ diff --git a/opennurbs/Lib/opennurbs_publicD64.pdb b/opennurbs/Lib/opennurbs_publicD64.pdb index 97768b5..c5f808c 100644 Binary files a/opennurbs/Lib/opennurbs_publicD64.pdb and b/opennurbs/Lib/opennurbs_publicD64.pdb differ diff --git a/opennurbs/Lib/opennurbs_publicR32.lib b/opennurbs/Lib/opennurbs_publicR32.lib index 1ece764..bdb9a0f 100644 Binary files a/opennurbs/Lib/opennurbs_publicR32.lib and b/opennurbs/Lib/opennurbs_publicR32.lib differ diff --git a/opennurbs/Lib/opennurbs_publicR32.pdb b/opennurbs/Lib/opennurbs_publicR32.pdb index af0c6b0..b97c18e 100644 Binary files a/opennurbs/Lib/opennurbs_publicR32.pdb and b/opennurbs/Lib/opennurbs_publicR32.pdb differ diff --git a/opennurbs/Lib/opennurbs_publicR64.lib b/opennurbs/Lib/opennurbs_publicR64.lib index 347d0bc..b9ddfb9 100644 Binary files a/opennurbs/Lib/opennurbs_publicR64.lib and b/opennurbs/Lib/opennurbs_publicR64.lib differ diff --git a/opennurbs/Lib/opennurbs_publicR64.pdb b/opennurbs/Lib/opennurbs_publicR64.pdb index daf98d4..1c1ff0d 100644 Binary files a/opennurbs/Lib/opennurbs_publicR64.pdb and b/opennurbs/Lib/opennurbs_publicR64.pdb differ diff --git a/vroni/Lib/vroniD32.lib b/vroni/Lib/vroniD32.lib index 88ace2a..365e5cb 100644 Binary files a/vroni/Lib/vroniD32.lib and b/vroni/Lib/vroniD32.lib differ diff --git a/vroni/Lib/vroniD32.pdb b/vroni/Lib/vroniD32.pdb index ef28ba5..e7a8140 100644 Binary files a/vroni/Lib/vroniD32.pdb and b/vroni/Lib/vroniD32.pdb differ diff --git a/vroni/Lib/vroniD64.lib b/vroni/Lib/vroniD64.lib index 308646b..66755ca 100644 Binary files a/vroni/Lib/vroniD64.lib and b/vroni/Lib/vroniD64.lib differ diff --git a/vroni/Lib/vroniR32.lib b/vroni/Lib/vroniR32.lib index e0ce79e..7d86273 100644 Binary files a/vroni/Lib/vroniR32.lib and b/vroni/Lib/vroniR32.lib differ diff --git a/vroni/Lib/vroniR64.lib b/vroni/Lib/vroniR64.lib index b758702..3d28780 100644 Binary files a/vroni/Lib/vroniR64.lib and b/vroni/Lib/vroniR64.lib differ diff --git a/zlib/Lib/zlibD32.lib b/zlib/Lib/zlibD32.lib index 2f47f94..45489f4 100644 Binary files a/zlib/Lib/zlibD32.lib and b/zlib/Lib/zlibD32.lib differ diff --git a/zlib/Lib/zlibD32.pdb b/zlib/Lib/zlibD32.pdb index e666db5..37319b0 100644 Binary files a/zlib/Lib/zlibD32.pdb and b/zlib/Lib/zlibD32.pdb differ diff --git a/zlib/Lib/zlibD64.lib b/zlib/Lib/zlibD64.lib index 483582d..d0e8c9c 100644 Binary files a/zlib/Lib/zlibD64.lib and b/zlib/Lib/zlibD64.lib differ diff --git a/zlib/Lib/zlibD64.pdb b/zlib/Lib/zlibD64.pdb index 0e6f7fb..d85ecfb 100644 Binary files a/zlib/Lib/zlibD64.pdb and b/zlib/Lib/zlibD64.pdb differ diff --git a/zlib/Lib/zlibR32.lib b/zlib/Lib/zlibR32.lib index c9cdc6d..5e855b6 100644 Binary files a/zlib/Lib/zlibR32.lib and b/zlib/Lib/zlibR32.lib differ diff --git a/zlib/Lib/zlibR64.lib b/zlib/Lib/zlibR64.lib index 4bfcb07..e25bbd5 100644 Binary files a/zlib/Lib/zlibR64.lib and b/zlib/Lib/zlibR64.lib differ