Code: Select all
Procedure FreeImage_OutputMessageProc()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"FreeImage_OutputMessageProc")
EndProcedure
Procedure FreeImage_AcquireMemory(stream.l,dat.l,sizeinbytes.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_AcquireMemory@12",stream.l,dat.l,sizeinbytes.d)
EndProcedure
Procedure FreeImage_AdjustBrightness(dib.l,percentage.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_AdjustBrightness@12",dib.l,percentage.d)
EndProcedure
Procedure FreeImage_AdjustContrast(dib.l,percentage.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_AdjustContrast@12",dib.l,percentage.d)
EndProcedure
Procedure FreeImage_AdjustCurve(dib.l,lut.l,channel.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_AdjustCurve@12",dib.l,lut.l,channel.l)
EndProcedure
Procedure FreeImage_AdjustGamma(dib.l,gamma.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_AdjustGamma@12",dib.l,gamma.d)
EndProcedure
Procedure FreeImage_Allocate(width.l,height.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Allocate@24",width.l,height.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l)
EndProcedure
Procedure FreeImage_AllocateT(type.l,width.l,height.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_AllocateT@28",type.l,width.l,height.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l)
EndProcedure
Procedure FreeImage_AppendPage(multibitmap.l,dat.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_AppendPage@8",multibitmap.l,dat.l)
EndProcedure
Procedure FreeImage_Clone(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Clone@4",dib.l)
EndProcedure
Procedure FreeImage_CloneTag(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_CloneTag@4",tag.l)
EndProcedure
Procedure FreeImage_CloseMemory(stream.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_CloseMemory@4",stream.l)
EndProcedure
Procedure FreeImage_CloseMultiBitmap(multibitmap.l,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_CloseMultiBitmap@8",multibitmap.l,flags.l)
EndProcedure
Procedure FreeImage_ColorQuantize(dib.l,quantize.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ColorQuantize@8",dib.l,quantize.l)
EndProcedure
Procedure FreeImage_ColorQuantizeEx(dib.l,quantize.l,PaletteSize.l,ReserveSize.l,ReservePalette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ColorQuantizeEx@20",dib.l,quantize.l,PaletteSize.l,ReserveSize.l,ReservePalette.l)
EndProcedure
Procedure FreeImage_Composite(fg.l,useFileBkg.l,appBkColor.l,bg.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Composite@16",fg.l,useFileBkg.l,appBkColor.l,bg.l)
EndProcedure
Procedure FreeImage_ConvertFromRawBits(bits.l,width.l,height.l,pitch.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l,topdown.l);)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertFromRawBits@36",bits.l,width.l,height.l,pitch.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l,topdown.l);)
EndProcedure
Procedure FreeImage_ConvertLine16To24_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To24_555@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16To24_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To24_565@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16To32_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To32_555@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16To32_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To32_565@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16To4_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To4_555@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16To4_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To4_565@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16To8_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To8_555@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16To8_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16To8_565@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16_555_To16_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16_555_To16_565@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine16_565_To16_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine16_565_To16_555@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine1To16_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine1To16_555@16",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine1To16_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine1To16_565@16",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine1To24(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine1To24@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine1To32(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine1To32@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine1To4(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine1To4@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine1To8(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine1To8@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine24To16_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine24To16_555@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine24To16_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine24To16_565@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine24To32(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine24To32@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine24To4(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine24To4@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine24To8(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine24To8@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine32To16_555(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine32To16_555@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine32To16_565(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine32To16_565@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine32To24(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine32To24@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine32To4(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine32To4@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine32To8(target.l,source.l,width_in_pixels.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine32To8@12",target.l,source.l,width_in_pixels.l)
EndProcedure
Procedure FreeImage_ConvertLine4To16_555(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine4To16_555@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine4To16_565(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine4To16_565@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine4To24(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine4To24@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine4To32(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine4To32@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine4To8(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine4To8@12",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine8To16_555(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine8To16_555@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine8To16_565(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine8To16_565@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine8To24(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine8To24@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine8To32(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine8To32@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertLine8To4(target.l,source.l,width_in_pixels.l,palette.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertLine8To4@16",target.l,source.l,width_in_pixels.l,palette.l)
EndProcedure
Procedure FreeImage_ConvertTo16Bits555(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertTo16Bits555@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertTo16Bits565(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertTo16Bits565@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertTo24Bits(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertTo24Bits@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertTo32Bits(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertTo32Bits@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertTo4Bits(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertTo4Bits@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertTo8Bits(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertTo8Bits@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertToGreyscale(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertToGreyscale@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertToRGBF(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertToRGBF@4",dib.l)
EndProcedure
Procedure FreeImage_ConvertToRawBits(bits.l,dib.l,pitch.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l,topdown.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertToRawBits@32",bits.l,dib.l,pitch.l,bpp.l,red_mask.l,green_mask.l,blue_mask.l,topdown.l)
EndProcedure
Procedure FreeImage_ConvertToStandardType(src.l,scale_linear.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertToStandardType@8",src.l,scale_linear.l)
EndProcedure
Procedure FreeImage_ConvertToType(src.l,dst_type.l,scale_linear.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ConvertToType@12",src.l,dst_type.l,scale_linear.l)
EndProcedure
Procedure FreeImage_Copy(dib.l,left.l,top.l,right.l,bottom.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Copy@20",dib.l,left.l,top.l,right.l,bottom.l)
EndProcedure
Procedure FreeImage_CreateICCProfile(dib.l,dat.l,size.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_CreateICCProfile@12",dib.l,dat.l,size.l)
EndProcedure
Procedure FreeImage_CreateTag(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_CreateTag@0",tag.l)
EndProcedure
Procedure FreeImage_DeInitialise()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_DeInitialise@0")
EndProcedure
Procedure FreeImage_DeletePage(bitmap.l,page.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_DeletePage@8",bitmap.l,page.l)
EndProcedure
Procedure FreeImage_DeleteTag(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_DeleteTag@4",tag.l)
EndProcedure
Procedure FreeImage_DestroyICCProfile(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_DestroyICCProfile@4",dib.l)
EndProcedure
Procedure FreeImage_Dither(dib.l,algorithm.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Dither@8",dib.l,algorithm.l)
EndProcedure
Procedure FreeImage_FIFSupportsExportBPP(fif.l,bbp.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FIFSupportsExportBPP@8",fif.l,bbp.l)
EndProcedure
Procedure FreeImage_FIFSupportsExportType(fif.l,type.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FIFSupportsExportType@8",fif.l,type.l)
EndProcedure
Procedure FreeImage_FIFSupportsICCProfiles(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FIFSupportsICCProfiles@4",fif.l)
EndProcedure
Procedure FreeImage_FIFSupportsReading(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FIFSupportsReading@4",fif.l)
EndProcedure
Procedure FreeImage_FIFSupportsWriting(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FIFSupportsWriting@4",fif.l)
EndProcedure
Procedure FreeImage_FindCloseMetadata(mdhandle.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FindCloseMetadata@4",mdhandle.l)
EndProcedure
Procedure FreeImage_FindFirstMetadata(model.l,dib.l,tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FindFirstMetadata@12",model.l,dib.l,tag.l)
EndProcedure
Procedure FreeImage_FindNextMetadata(mdhandle.l,tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FindNextMetadata@8",mdhandle.l,tag.l)
EndProcedure
Procedure FreeImage_FlipHorizontal(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FlipHorizontal@4",dib.l)
EndProcedure
Procedure FreeImage_FlipVertical(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_FlipVertical@4",dib.l)
EndProcedure
Procedure FreeImage_GetBPP(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetBPP@4",dib.l)
EndProcedure
Procedure FreeImage_GetBackgroundColor(dib.l,bkcolor.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetBackgroundColor@8",dib.l,bkcolor.l)
EndProcedure
Procedure FreeImage_GetBits(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetBits@4",dib.l)
EndProcedure
Procedure FreeImage_GetBlueMask(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetBlueMask@4",dib.l)
EndProcedure
Procedure FreeImage_GetChannel(dib.l,channel.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetChannel@8",dib.l,channel.l)
EndProcedure
Procedure FreeImage_GetColorType(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetColorType@4",dib.l)
EndProcedure
Procedure FreeImage_GetColorsUsed(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetColorsUsed@4",dib.l)
EndProcedure
Procedure FreeImage_GetComplexChannel(src.l,channel)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetComplexChannel@8",src.l,channel)
EndProcedure
Procedure FreeImage_GetCopyrightMessage()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetCopyrightMessage@0")
EndProcedure
Procedure FreeImage_GetDIBSize(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetDIBSize@4",dib.l)
EndProcedure
Procedure FreeImage_GetDotsPerMeterX(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetDotsPerMeterX@4",dib.l)
EndProcedure
Procedure FreeImage_GetDotsPerMeterY(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetDotsPerMeterY@4",dib.l)
EndProcedure
Procedure FreeImage_GetFIFCount()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFCount@0")
EndProcedure
Procedure FreeImage_GetFIFDescription(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFDescription@4",fif.l)
EndProcedure
Procedure FreeImage_GetFIFExtensionList(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFExtensionList@4",fif.l)
EndProcedure
Procedure FreeImage_GetFIFFromFilename(filename.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFFromFilename@4",filename.s)
EndProcedure
Procedure FreeImage_GetFIFFromFilenameU(filename.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFFromFilenameU@4",filename.s)
EndProcedure
Procedure FreeImage_GetFIFFromFormat(format.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFFromFormat@4",format.s)
EndProcedure
Procedure FreeImage_GetFIFFromMime(mime.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFFromMime@4",mime.s)
EndProcedure
Procedure FreeImage_GetFIFMimeType(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFMimeType@4",fif.l)
EndProcedure
Procedure FreeImage_GetFIFRegExpr(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFIFRegExpr@4",fif.l)
EndProcedure
Procedure FreeImage_GetFileType(filename.s,size.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFileType@8",filename.s,size.l)
EndProcedure
Procedure FreeImage_GetFileTypeFromHandle(io.l,handle.l,size.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFileTypeFromHandle@12",io.l,handle.l,size.l)
EndProcedure
Procedure FreeImage_GetFileTypeFromMemory(stream.l,size.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFileTypeFromMemory@8",stream.l,size.l)
EndProcedure
Procedure FreeImage_GetFileTypeU(filename.s,size.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFileTypeU@8",filename.s,size.l)
EndProcedure
Procedure FreeImage_GetFormatFromFIF(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetFormatFromFIF@4",fif.l)
EndProcedure
Procedure FreeImage_GetGreenMask(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetGreenMask@4",dib.l)
EndProcedure
Procedure FreeImage_GetHeight(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetHeight@4",dib.l)
EndProcedure
Procedure FreeImage_GetHistogram()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetHistogram@12")
EndProcedure
Procedure FreeImage_GetICCProfile(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetICCProfile@4",dib.l)
EndProcedure
Procedure FreeImage_GetImageType()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetImageType@4")
EndProcedure
Procedure FreeImage_GetInfo(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetInfo@4",dib.l)
EndProcedure
Procedure FreeImage_GetInfoHeader(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetInfoHeader@4",dib.l)
EndProcedure
Procedure FreeImage_GetLine(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetLine@4",dib.l)
EndProcedure
Procedure FreeImage_GetLockedPageNumbers(bitmap.l,pages.l,count.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetLockedPageNumbers@12",bitmap.l,pages.l,count.l)
EndProcedure
Procedure FreeImage_GetMetadata(model.l,dib.l,key.s,tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetMetadata@16",model.l,dib.l,key.s,tag.l)
EndProcedure
Procedure FreeImage_GetMetadataCount(model.l,dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetMetadataCount@8",model.l,dib.l)
EndProcedure
Procedure FreeImage_GetPageCount(bitmap.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetPageCount@4",bitmap.l)
EndProcedure
Procedure FreeImage_GetPalette(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetPalette@4",dib.l)
EndProcedure
Procedure FreeImage_GetPitch(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetPitch@4",dib.l)
EndProcedure
Procedure FreeImage_GetPixelColor(dib.l,x.l,y.l,value.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetPixelColor@16",dib.l,x.l,y.l,value.l)
EndProcedure
Procedure FreeImage_GetPixelIndex(dib.l,x.l,y.l,value.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetPixelIndex@16",dib.l,x.l,y.l,value.l)
EndProcedure
Procedure FreeImage_GetRedMask(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetRedMask@4",dib.l)
EndProcedure
Procedure FreeImage_GetScanLine(dib.l,scanline.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetScanLine@8",dib.l,scanline.l)
EndProcedure
Procedure FreeImage_GetTagCount(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTagCount@4",tag.l)
EndProcedure
Procedure FreeImage_GetTagDescription(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTagDescription@4",tag.l)
EndProcedure
Procedure FreeImage_GetTagID(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTagID@4",tag.l)
EndProcedure
Procedure FreeImage_GetTagKey(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTagKey@4",tag.l)
EndProcedure
Procedure FreeImage_GetTagLength(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTagLength@4",tag.l)
EndProcedure
Procedure FreeImage_GetTagType(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTagType@4",tag.l)
EndProcedure
Procedure FreeImage_GetTagValue(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTagValue@4",tag.l)
EndProcedure
Procedure FreeImage_GetTransparencyCount(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTransparencyCount@4",dib.l)
EndProcedure
Procedure FreeImage_GetTransparencyTable(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetTransparencyTable@4",dib.l)
EndProcedure
Procedure FreeImage_GetVersion()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetVersion@0")
EndProcedure
Procedure FreeImage_GetWidth(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_GetWidth@4",dib.l)
EndProcedure
Procedure FreeImage_HasBackgroundColor(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_HasBackgroundColor@4",dib.l)
EndProcedure
Procedure FreeImage_Initialise(load_local_plugins_only.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Initialise@4",load_local_plugins_only.l)
EndProcedure
Procedure FreeImage_InsertPage(bitmap.l,page.l,dat.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_InsertPage@12",bitmap.l,page.l,dat.l)
EndProcedure
Procedure FreeImage_Invert(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Invert@4",dib.l)
EndProcedure
Procedure FreeImage_IsLittleEndian()
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_IsLittleEndian@0")
EndProcedure
Procedure FreeImage_IsPluginEnabled(fif.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_IsPluginEnabled@4",fif.l)
EndProcedure
Procedure FreeImage_IsTransparent(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_IsTransparent@4",dib.l)
EndProcedure
Procedure FreeImage_JPEGCrop(src_file.s,dst_file.s,left.l,top.l,right.l,bottom.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_JPEGCrop@24",src_file.s,dst_file.s,left.l,top.l,right.l,bottom.l)
EndProcedure
Procedure FreeImage_JPEGTransform(src_file.s,dst_file.s,operation.s,perfect.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_JPEGTransform@16",src_file.s,dst_file.s,operation.s,perfect.s)
EndProcedure
Procedure FreeImage_Load(fif.l,filename.s,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Load@12",fif.l,filename.s,flags.l)
EndProcedure
Procedure FreeImage_LoadFromHandle(fif.l,io.l,handle.l,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_LoadFromHandle@16",fif.l,io.l,handle.l,flags.l)
EndProcedure
Procedure FreeImage_LoadFromMemory(fif.l,stream.l,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_LoadFromMemory@12",fif.l,stream.l,flags.l)
EndProcedure
Procedure FreeImage_LoadMultiBitmapFromMemory(fif.l,stream.l,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_LoadMultiBitmapFromMemory@12",fif.l,stream.l,flags.l)
EndProcedure
Procedure FreeImage_LoadU(fif.l,filename.s,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_LoadU@12",fif.l,filename.s,flags.l)
EndProcedure
Procedure FreeImage_LockPage(bitmap.l,page.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_LockPage@8",bitmap.l,page.l)
EndProcedure
Procedure FreeImage_LookupSVGColor(szColor.s,nRed.l,nGreen.l,nBlue.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_LookupSVGColor@16",szColor.s,nRed.l,nGreen.l,nBlue.l)
EndProcedure
Procedure FreeImage_LookupX11Color(szColor.s,nRed.l,nGreen.l,nBlue.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_LookupX11Color@16",szColor.s,nRed.l,nGreen.l,nBlue.l)
EndProcedure
Procedure FreeImage_MakeThumbnail(dib.l,max_pixel_size.l,convert.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_MakeThumbnail@12",dib.l,max_pixel_size.l,convert.l)
EndProcedure
Procedure FreeImage_MovePage(bitmap.l,target.l,source.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_MovePage@12",bitmap.l,target.l,source.l)
EndProcedure
Procedure FreeImage_OpenMemory(dat.l,size_in_bytes.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_OpenMemory@8",dat.l,size_in_bytes.d)
EndProcedure
Procedure FreeImage_OpenMultiBitmap(fif.l,filename.s,create_new.l,read_only.l,keep_cache_in_memory.l,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_OpenMultiBitmap@24",fif.l,filename.s,create_new.l,read_only.l,keep_cache_in_memory.l,flags.l)
EndProcedure
Procedure FreeImage_Paste(dst.l,src.l,left.l,top.l,alpha.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Paste@20",dst.l,src.l,left.l,top.l,alpha.l)
EndProcedure
Procedure FreeImage_ReadMemory(buffer.l,size.l,count.l,stream.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ReadMemory@16",buffer.l,size.l,count.l,stream.l)
EndProcedure
Procedure FreeImage_RegisterExternalPlugin(path.s,format.s,description.s,extension.s,regexpr.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_RegisterExternalPlugin@20",path.s,format.s,description.s,extension.s,regexpr.s)
EndProcedure
Procedure FreeImage_RegisterLocalPlugin(proc_address.s,format.s,description.s,extension.s,regexpr.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_RegisterLocalPlugin@20",proc_address.s,format.s,description.s,extension.s,regexpr.s)
EndProcedure
Procedure FreeImage_Rescale(dib.l,dst_width.l,dst_height.l,filter.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Rescale@16",dib.l,dst_width.l,dst_height.l,filter.l)
EndProcedure
Procedure FreeImage_RotateClassic(dib.l,angle.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_RotateClassic@12",dib.l,angle.d)
EndProcedure
Procedure FreeImage_RotateEx(dib.l,angle.d,x_shift.d,y_shift.d,x_origin.d,y_origin.d,use_mask.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_RotateEx@48",dib.l,angle.d,x_shift.d,y_shift.d,x_origin.d,y_origin.d,use_mask.l)
EndProcedure
Procedure FreeImage_Save(fif.l,dib.l,filename.s,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Save@16",fif.l,dib.l,filename.s,flags.l)
EndProcedure
Procedure FreeImage_SaveToHandle(fif.l,dib.l,io.l,fi_handle.l,handle,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SaveToHandle@20",fif.l,dib.l,io.l,fi_handle.l,handle,flags.l)
EndProcedure
Procedure FreeImage_SaveToMemory(fif.l,dib.l,stream.l,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SaveToMemory@16",fif.l,dib.l,stream.l,flags.l)
EndProcedure
Procedure FreeImage_SaveU(fif.l,dib.l,filename.s,flags.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SaveU@16",fif.l,dib.l,filename.s,flags.l)
EndProcedure
Procedure FreeImage_SeekMemory(stream.l,offset.l,origin.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SeekMemory@12",stream.l,offset.l,origin.l)
EndProcedure
Procedure FreeImage_SetBackgroundColor(dib.l,bkcolor.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetBackgroundColor@8",dib.l,bkcolor.l)
EndProcedure
Procedure FreeImage_SetChannel(dib.l, dib8.l,channel.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetChannel@12",dib.l, dib8.l,channel.l)
EndProcedure
Procedure FreeImage_SetComplexChannel(dst.l,src.l,channel.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetComplexChannel@12",dst.l,src.l,channel.l)
EndProcedure
Procedure FreeImage_SetDotsPerMeterX(dib.l,res.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetDotsPerMeterX@8",dib.l,res.l)
EndProcedure
Procedure FreeImage_SetDotsPerMeterY(dib.l,res.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetDotsPerMeterY@8",dib.l,res.l)
EndProcedure
Procedure FreeImage_SetMetadata(model.l, dib.l,key.s,tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetMetadata@16",model.l, dib.l,key.s,tag.l)
EndProcedure
Procedure FreeImage_SetOutputMessage(proc.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetOutputMessage@4",proc.l)
EndProcedure
Procedure FreeImage_SetPixelColor(dib.l,x.l,y.l,value.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetPixelColor@16",dib.l,x.l,y.l,value.l)
EndProcedure
Procedure FreeImage_SetPixelIndex(dib.l,x.l,y.l,value.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetPixelIndex@16",dib.l,x.l,y.l,value.l)
EndProcedure
Procedure FreeImage_SetPluginEnabled(fif.l,enable.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetPluginEnabled@8",fif.l,enable.l)
EndProcedure
Procedure FreeImage_SetTagCount(tag.l,count.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTagCount@8",tag.l,count.l)
EndProcedure
Procedure FreeImage_SetTagDescription(tag.l,description.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTagDescription@8",tag.l,description.s)
EndProcedure
Procedure FreeImage_SetTagID(tag.l,id.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTagID@8",tag.l,id.l)
EndProcedure
Procedure FreeImage_SetTagKey(tag.l,key.s)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTagKey@8",tag.l,key.s)
EndProcedure
Procedure FreeImage_SetTagLength(tag.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTagLength@8",tag.l)
EndProcedure
Procedure FreeImage_SetTagType(tag.l,type.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTagType@8",tag.l,type.l)
EndProcedure
Procedure FreeImage_SetTagValue(tag.l,value.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTagValue@8",tag.l,value.l)
EndProcedure
Procedure FreeImage_SetTransparencyTable(dib.l,table.l,count.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTransparencyTable@12",dib.l,table.l,count.l)
EndProcedure
Procedure FreeImage_SetTransparent(dib.l,enabled.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_SetTransparent@8",dib.l,enabled.l)
EndProcedure
Procedure FreeImage_TagToString(model.l,tag.l,Make.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_TagToString@12",model.l,tag.l,Make.l)
EndProcedure
Procedure FreeImage_TellMemory(stream.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_TellMemory@4",stream.l)
EndProcedure
Procedure FreeImage_Threshold(dib.l,T.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Threshold@8",dib.l,T.l)
EndProcedure
Procedure FreeImage_TmoDrago03(src.l,gamma.d,exposure.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_TmoDrago03@20",src.l,gamma.d,exposure.d)
EndProcedure
Procedure FreeImage_TmoReinhard05(src.l,intensity.d,contrast.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_TmoReinhard05@20",src.l,intensity.d,contrast.d)
EndProcedure
Procedure FreeImage_ToneMapping(dib.l,tmo.l,first_param.d,second_param.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ToneMapping@24",dib.l,tmo.l,first_param.d,second_param.d)
EndProcedure
Procedure FreeImage_Unload(dib.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_Unload@4",dib.l)
EndProcedure
Procedure FreeImage_UnlockPage(bitmap.l,dat.l,changed.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_UnlockPage@12",bitmap.l,dat.l,changed.l)
EndProcedure
Procedure FreeImage_WriteMemory(buffer.l,size.l,count.l,stream.l)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_WriteMemory@16",buffer.l,size.l,count.l,stream.l)
EndProcedure
Procedure FreeImage_ZLibCRC32(crc.d,source.l,source_size.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ZLibCRC32@12",crc.d,source.l,source_size.d)
EndProcedure
Procedure FreeImage_ZLibCompress(target.l,target_size.d,source.l,source_size.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ZLibCompress@16",target.l,target_size.d,source.l,source_size.d)
EndProcedure
Procedure FreeImage_ZLibGUnzip(target.l,target_size.d,source.l,source_size.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ZLibGUnzip@16",target.l,target_size.d,source.l,source_size.d)
EndProcedure
Procedure FreeImage_ZLibGZip(target.l,target_size.d,source.l,source_size.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ZLibGZip@16",target.l,target_size.d,source.l,source_size.d)
EndProcedure
Procedure FreeImage_ZLibUncompress(target.l,target_size.d,source.l,source_size.d)
	ProcedureReturn CallFunction(#LIB_FREEIMAGE,"_FreeImage_ZLibUncompress@16",target.l,target_size.d,source.l,source_size.d)
EndProcedure
Code: Select all
#FREEIMAGE_MAJOR_VERSION   =3
#FREEIMAGE_MINOR_VERSION   =9
#FREEIMAGE_RELEASE_SERIAL  =3
;/** 48-bit RGB 
;*/
Structure FIRGB16
	red.l
	green.l
	blue.l
EndStructure
;/** 64-bit RGBA
;*/
Structure FIRGBA16
	red.l
	green.l
	blue.l
	alpha.l
EndStructure
;/** 96-bit RGB Float
;*/
Structure FIRGBF
	red.f
	green.f
	blue.f
EndStructure
;/** 128-bit RGBA Float
;*/
Structure FIRGBAF
	red.f
	green.f
	blue.f
	alpha.f
EndStructure
;/** Data Structure For COMPLEX type (complex number)
;*/
Structure FICOMPLEX
    ;/// real part
	r.d;
	;/// imaginary part
  i.d;
EndStructure
;// Indexes For byte arrays, masks And shifts For treating pixels As words ---
;// These coincide With the order of RGBQUAD And RGBTRIPLE -------------------
;// Little Endian (x86 / MS Windows, Linux) : BGR(A) order
#FI_RGBA_RED				=2
#FI_RGBA_GREEN			=1
#FI_RGBA_BLUE			=0
#FI_RGBA_ALPHA			=3
#FI_RGBA_RED_MASK		=$00FF0000
#FI_RGBA_GREEN_MASK		=$0000FF00
#FI_RGBA_BLUE_MASK		=$000000FF
#FI_RGBA_ALPHA_MASK		=$FF000000
#FI_RGBA_RED_SHIFT		=16
#FI_RGBA_GREEN_SHIFT		=8
#FI_RGBA_BLUE_SHIFT		=0
#FI_RGBA_ALPHA_SHIFT		=24
; ;// Big Endian (PPC / Linux, MaxOSX) : RGB(A) order
; #FI_RGBA_RED				0
; #FI_RGBA_GREEN			1
; #FI_RGBA_BLUE			2
; #FI_RGBA_ALPHA			3
; #FI_RGBA_RED_MASK		=$FF000000
; #FI_RGBA_GREEN_MASK		=$00FF0000
; #FI_RGBA_BLUE_MASK		=$0000FF00
; #FI_RGBA_ALPHA_MASK		=$000000FF
; #FI_RGBA_RED_SHIFT		24
; #FI_RGBA_GREEN_SHIFT		16
; #FI_RGBA_BLUE_SHIFT		8
; #FI_RGBA_ALPHA_SHIFT		0
#FI_RGBA_RGB_MASK		=(#FI_RGBA_RED_MASK|#FI_RGBA_GREEN_MASK|#FI_RGBA_BLUE_MASK)
;// The 16bit macros only include masks And shifts, since each color element is Not byte aligned
#FI16_555_RED_MASK		=$7C00
#FI16_555_GREEN_MASK		=$03E0
#FI16_555_BLUE_MASK		=$001F
#FI16_555_RED_SHIFT		=10
#FI16_555_GREEN_SHIFT	=5
#FI16_555_BLUE_SHIFT		=0
#FI16_565_RED_MASK		=$F800
#FI16_565_GREEN_MASK		=$07E0
#FI16_565_BLUE_MASK		=$001F
#FI16_565_RED_SHIFT		=11
#FI16_565_GREEN_SHIFT	=5
#FI16_565_BLUE_SHIFT		=0
;// ICC profile support ------------------------------------------------------
#FIICC_DEFAULT			=$00
#FIICC_COLOR_IS_CMYK		=$01
; FI_STRUCT (FIICCPROFILE) { 
; 	WORD    flags;	;// info flag
; 	DWORD	size;	;// profile's size measured in bytes
; 	void   *Data;	;// points to a block of contiguous memory containing the profile
; };
;// Important enums ----------------------------------------------------------
;/** I/O image format identifiers.
;*/
Enumeration
	#FIF_UNKNOWN = -1
	#FIF_BMP		= 0
	#FIF_ICO		= 1
	#FIF_JPEG	= 2
	#FIF_JNG		= 3
	#FIF_KOALA	= 4
	#FIF_LBM		= 5
	#FIF_IFF = #FIF_LBM
	#FIF_MNG		= 6
	#FIF_PBM		= 7
	#FIF_PBMRAW	= 8
	#FIF_PCD		= 9
	#FIF_PCX		= 10
	#FIF_PGM		= 11
	#FIF_PGMRAW	= 12
	#FIF_PNG		= 13
	#FIF_PPM		= 14
	#FIF_PPMRAW	= 15
	#FIF_RAS		= 16
	#FIF_TARGA	= 17
	#FIF_TIFF	= 18
	#FIF_WBMP	= 19
	#FIF_PSD		= 20
	#FIF_CUT		= 21
	#FIF_XBM		= 22
	#FIF_XPM		= 23
	#FIF_DDS		= 24
	#FIF_GIF     = 25
	#FIF_HDR		= 26
	#FIF_FAXG3	= 27
	#FIF_SGI		= 28
EndEnumeration
;/** Image type used in FreeImage.
;*/
Enumeration
	#FIT_UNKNOWN = 0	;// unknown type
	#FIT_BITMAP  = 1	;// standard image			: 1- 4- 8- 16- 24- 32-bit
	#FIT_UINT16	= 2	;// array of unsigned short	: unsigned 16-bit
	#FIT_INT16	= 3	;// array of short			: signed 16-bit
	#FIT_UINT32	= 4	;// array of unsigned long	: unsigned 32-bit
	#FIT_INT32	= 5	;// array of long			: signed 32-bit
	#FIT_FLOAT	= 6	;// array of float			: 32-bit IEEE floating point
	#FIT_DOUBLE	= 7	;// array of double			: 64-bit IEEE floating point
	#FIT_COMPLEX	= 8	;// array of FICOMPLEX		: 2 x 64-bit IEEE floating point
	#FIT_RGB16	= 9	;// 48-bit RGB image			: 3 x 16-bit
	#FIT_RGBA16	= 10	;// 64-bit RGBA image		: 4 x 16-bit
	#FIT_RGBF	= 11	;// 96-bit RGB float image	: 3 x 32-bit IEEE floating point
	#FIT_RGBAF	= 12	;// 128-bit RGBA float image	: 4 x 32-bit IEEE floating point
EndEnumeration
;/** Image color type used in FreeImage.
;*/
Enumeration
	#FIC_MINISWHITE = 0		;// min value is white
    #FIC_MINISBLACK = 1		;// min value is black
    #FIC_RGB        = 2		;// RGB color model
    #FIC_PALETTE    = 3		;// color map indexed
	#FIC_RGBALPHA   = 4		;// RGB color model With alpha channel
	#FIC_CMYK       = 5		;// CMYK color model
EndEnumeration
;/** Color quantization algorithms.
;Constants used in FreeImage_ColorQuantize.
;*/
Enumeration
    #FIQ_WUQUANT = 0		;// Xiaolin Wu color quantization algorithm
    #FIQ_NNQUANT = 1			;// NeuQuant neural-net quantization algorithm by Anthony Dekker
EndEnumeration
;/** Dithering algorithms.
;Constants used in FreeImage_Dither.
;*/
Enumeration
    #FID_FS			= 0	;// Floyd & Steinberg error diffusion
	#FID_BAYER4x4	= 1	;// Bayer ordered dispersed dot dithering (order 2 dithering matrix)
	#FID_BAYER8x8	= 2	;// Bayer ordered dispersed dot dithering (order 3 dithering matrix)
	#FID_CLUSTER6x6	= 3	;// Ordered clustered dot dithering (order 3 - 6x6 matrix)
	#FID_CLUSTER8x8	= 4	;// Ordered clustered dot dithering (order 4 - 8x8 matrix)
	#FID_CLUSTER16x16= 5	;// Ordered clustered dot dithering (order 8 - 16x16 matrix)
	#FID_BAYER16x16	= 6		;// Bayer ordered dispersed dot dithering (order 4 dithering matrix)
EndEnumeration
;/** Lossless JPEG transformations
;Constants used in FreeImage_JPEGTransform
;*/
Enumeration
	#FIJPEG_OP_NONE			= 0	;// no transformation
	#FIJPEG_OP_FLIP_H		= 1	;// horizontal flip
	#FIJPEG_OP_FLIP_V		= 2	;// vertical flip
	#FIJPEG_OP_TRANSPOSE		= 3	;// transpose across UL-To-LR axis
	#FIJPEG_OP_TRANSVERSE	= 4	;// transpose across UR-To-LL axis
	#FIJPEG_OP_ROTATE_90		= 5	;// 90-degree clockwise rotation
	#FIJPEG_OP_ROTATE_180	= 6	;// 180-degree rotation
	#FIJPEG_OP_ROTATE_270	= 7		;// 270-degree clockwise (Or 90 ccw)
EndEnumeration
;/** Tone mapping operators.
;Constants used in FreeImage_ToneMapping.
;*/
Enumeration
  #FITMO_DRAGO03	 = 0	;// Adaptive logarithmic mapping (F. Drago 2003)
	#FITMO_REINHARD05 = 1	;// Dynamic range reduction inspired by photoreceptor physiology (E. Reinhard 2005)
EndEnumeration
;/** Upsampling / downsampling filters. 
;Constants used in FreeImage_Rescale.
;*/
Enumeration
	#FILTER_BOX		  = 0	;// Box pulse Fourier window 1st order (constant) b-spline
	#FILTER_BICUBIC	  = 1	;// Mitchell & Netravali's two-param cubic filter
	#FILTER_BILINEAR   = 2	;// Bilinear filter
	#FILTER_BSPLINE	  = 3	;// 4th order (cubic) b-spline
	#FILTER_CATMULLROM = 4	;// Catmull-Rom spline Overhauser spline
	#FILTER_LANCZOS3	  = 5	;// Lanczos3 filter
EndEnumeration
;/** Color channels.
;Constants used in color manipulation routines.
;*/
Enumeration
	#FICC_RGB	= 0	;// Use red green And blue channels
	#FICC_RED	= 1	;// Use red channel
	#FICC_GREEN	= 2	;// Use green channel
	#FICC_BLUE	= 3	;// Use blue channel
	#FICC_ALPHA	= 4	;// Use alpha channel
	#FICC_BLACK	= 5	;// Use black channel
	#FICC_REAL	= 6	;// Complex images: use real part
	#FICC_IMAG	= 7	;// Complex images: use imaginary part
	#FICC_MAG	= 8	;// Complex images: use magnitude
	#FICC_PHASE	= 9		;// Complex images: use phase
EndEnumeration
;// Metadata support ---------------------------------------------------------
;/**
;  Tag Data type information (based on TIFF specifications)
;
;  Note: RATIONALs are the ratio of two 32-bit integer values.
;*/
Enumeration
	#FIDT_NOTYPE		= 0	;// placeholder 
	#FIDT_BYTE		= 1	;// 8-bit unsigned integer 
	#FIDT_ASCII		= 2	;// 8-bit bytes w/ last byte null 
	#FIDT_SHORT		= 3	;// 16-bit unsigned integer 
	#FIDT_LONG		= 4	;// 32-bit unsigned integer 
	#FIDT_RATIONAL	= 5	;// 64-bit unsigned fraction 
	#FIDT_SBYTE		= 6	;// 8-bit signed integer 
	#FIDT_UNDEFINED	= 7	;// 8-bit untyped Data 
	#FIDT_SSHORT		= 8	;// 16-bit signed integer 
	#FIDT_SLONG		= 9	;// 32-bit signed integer 
	#FIDT_SRATIONAL	= 10	;// 64-bit signed fraction 
	#FIDT_FLOAT		= 11	;// 32-bit IEEE floating point 
	#FIDT_DOUBLE		= 12	;// 64-bit IEEE floating point 
	#FIDT_IFD		= 13	;// 32-bit unsigned integer (offset) 
	#FIDT_PALETTE	= 14	;// 32-bit RGBQUAD 
EndEnumeration
;/**
;  Metadata models supported by FreeImage
;*/
Enumeration
	#FIMD_NODATA			= -1
	#FIMD_COMMENTS		= 0	;// single comment Or keywords
	#FIMD_EXIF_MAIN		= 1	;// Exif-TIFF metadata
	#FIMD_EXIF_EXIF		= 2	;// Exif-specific metadata
	#FIMD_EXIF_GPS		= 3	;// Exif GPS metadata
	#FIMD_EXIF_MAKERNOTE = 4	;// Exif maker note metadata
	#FIMD_EXIF_INTEROP	= 5	;// Exif interoperability metadata
	#FIMD_IPTC			= 6	;// IPTC/NAA metadata
	#FIMD_XMP			= 7	;// Abobe XMP metadata
	#FIMD_GEOTIFF		= 8	;// GeoTIFF metadata
	#FIMD_ANIMATION		= 9	;// Animation metadata
	#FIMD_CUSTOM			= 10	;// Used To attach other metadata types To a dib
EndEnumeration
;/**
;  Handle To a metadata model
;*/
;FI_STRUCT (FIMETADATA) { void *Data; };
; FI_STRUCT (Plugin) {
; 	FI_FormatProc format_proc;
; 	FI_DescriptionProc description_proc;
; 	FI_ExtensionListProc extension_proc;
; 	FI_RegExprProc regexpr_proc;
; 	FI_OpenProc open_proc;
; 	FI_CloseProc close_proc;
; 	FI_PageCountProc pagecount_proc;
; 	FI_PageCapabilityProc pagecapability_proc;
; 	FI_LoadProc load_proc;
; 	FI_SaveProc save_proc;
; 	FI_ValidateProc validate_proc;
; 	FI_MimeProc mime_proc;
; 	FI_SupportsExportBPPProc supports_export_bpp_proc;
; 	FI_SupportsExportTypeProc supports_export_type_proc;
; 	FI_SupportsICCProfilesProc supports_icc_profiles_proc;
; };
;// Load / Save flag constants -----------------------------------------------
#BMP_DEFAULT         =0
#BMP_SAVE_RLE        =1
#CUT_DEFAULT         =0
#DDS_DEFAULT			=0
#FAXG3_DEFAULT		=0
#GIF_DEFAULT			=0
#GIF_LOAD256			=1		;// Load the image As a 256 color image With ununsed palette entries If it's 16 or 2 color
#GIF_PLAYBACK		=2		;// 'Play' the GIF To generate each frame (As 32bpp) instead of returning raw frame Data when loading
#HDR_DEFAULT			=0
#ICO_DEFAULT         =0
#ICO_MAKEALPHA		=1		;// convert To 32bpp And create an alpha channel from the And-mask when loading
#IFF_DEFAULT         =0
#JPEG_DEFAULT        =0		;// loading (see JPEG_FAST); saving (see JPEG_QUALITYGOOD)
#JPEG_FAST           =$0001	;// load the file As fast As possible sacrificing some quality
#JPEG_ACCURATE       =$0002	;// load the file With the best quality sacrificing some speed
#JPEG_CMYK			=$0004	;// load separated CMYK "as is" (use | To combine With other load flags)
#JPEG_QUALITYSUPERB  =$80	;// save With superb quality (100:1)
#JPEG_QUALITYGOOD    =$0100	;// save With good quality (75:1)
#JPEG_QUALITYNORMAL  =$0200	;// save With normal quality (50:1)
#JPEG_QUALITYAVERAGE =$0400	;// save With average quality (25:1)
#JPEG_QUALITYBAD     =$0800	;// save With bad quality (10:1)
#JPEG_PROGRESSIVE	=$2000	;// save As a progressive-JPEG (use | To combine With other save flags)
#KOALA_DEFAULT       =0
#LBM_DEFAULT         =0
#MNG_DEFAULT         =0
#PCD_DEFAULT         =0
#PCD_BASE            =1		;// load the bitmap sized 768 x 512
#PCD_BASEDIV4        =2		;// load the bitmap sized 384 x 256
#PCD_BASEDIV16       =3		;// load the bitmap sized 192 x 128
#PCX_DEFAULT         =0
#PNG_DEFAULT         =0
#PNG_IGNOREGAMMA		=1		;// avoid gamma correction
#PNM_DEFAULT         =0
#PNM_SAVE_RAW        =0       ;// If set the writer saves in RAW format (i.e. P4 P5 Or P6)
#PNM_SAVE_ASCII      =1       ;// If set the writer saves in ASCII format (i.e. P1 P2 Or P3)
#PSD_DEFAULT         =0
#RAS_DEFAULT         =0
#SGI_DEFAULT			=0
#TARGA_DEFAULT       =0
#TARGA_LOAD_RGB888   =1       ;// If set the loader converts RGB555 And ARGB8888 -> RGB888.
#TIFF_DEFAULT        =0
#TIFF_CMYK			=$0001	;// reads/stores tags For separated CMYK (use | To combine With compression flags)
#TIFF_PACKBITS       =$0100  ;// save using PACKBITS compression
#TIFF_DEFLATE        =$0200  ;// save using DEFLATE compression (a.k.a. ZLIB compression)
#TIFF_ADOBE_DEFLATE  =$0400  ;// save using ADOBE DEFLATE compression
#TIFF_NONE           =$0800  ;// save without any compression
#TIFF_CCITTFAX3		=$1000  ;// save using CCITT Group 3 fax encoding
#TIFF_CCITTFAX4		=$2000  ;// save using CCITT Group 4 fax encoding
#TIFF_LZW			=$4000	;// save using LZW compression
#TIFF_JPEG			=$8000	;// save using JPEG compression
#WBMP_DEFAULT        =0
#XBM_DEFAULT			=0
#XPM_DEFAULT			=0

