Modules | Functions

File Formats
[Image Storage]

Collaboration diagram for File Formats:


 TIFF - Tagged Image File Format
 JPEG - JPEG File Interchange Format
 PNG - Portable Network Graphic Format
 GIF - Graphics Interchange Format
 BMP - Windows Device Independent Bitmap
 RAS - Sun Raster File
 LED - IUP image in LED
 SGI - Silicon Graphics Image File Format
 PCX - ZSoft Picture
 TGA - Truevision Graphics Adapter File
 PNM - Netpbm Portable Image Map
 PFM - Portable FloatMap Image Format
 ICO - Windows Icon
 KRN - IM Kernel File Format
 AVI - Windows Audio-Video Interleaved RIFF
 ECW - ECW JPEG 2000
 JP2 - JPEG-2000 JP2 File Format
 RAW - RAW File
 WMV - Windows Media Video Format


void imFormatRegisterInternal (void)
void imFormatRemoveAll (void)
void imFormatList (char **format_list, int *format_count)
int imFormatInfo (const char *format, char *desc, char *ext, int *can_sequence)
int imFormatInfoExtra (const char *format, char *extra)
int imFormatCompressions (const char *format, char **comp, int *comp_count, int color_mode, int data_type)
int imFormatCanWriteImage (const char *format, const char *compression, int color_mode, int data_type)

Detailed Description

See im.h

Internal Predefined File Formats:

Other Supported File Formats:

Some Known Compressions:

Function Documentation

void imFormatRegisterInternal ( void   ) 

Registers all the internal formats.
It is automatically called internally when a format is accessed, but can be called to force the internal formats to be registered before other formats. Notice that additional formats when registered will be registered before the internal formats if imFormatRegisterInternal is not called yet.
To control the register order is useful when two format drivers handle the same format. The first registered format will always be used first.

void imFormatRemoveAll ( void   ) 

Remove all registered formats. Call this if you are checking memory leaks.

void imFormatList ( char **  format_list,
int *  format_count 

Returns a list of the registered formats.
format_list is an array of format identifiers. Each format identifier is 10 chars max, maximum of 50 formats. You can use "char* format_list[50]".

im.FormatList() -> format_list: table of strings [in Lua 5] 
int imFormatInfo ( const char *  format,
char *  desc,
char *  ext,
int *  can_sequence 

Returns the format description.
Format description is 50 chars max.
Extensions are separated like "*.tif;*.tiff;", 50 chars max.
Returns an error code. The parameters can be NULL, except format. See also File Formats.

im.FormatInfo(format: string) -> error: number, desc: string, ext: string, can_sequence: boolean [in Lua 5] 
int imFormatInfoExtra ( const char *  format,
char *  extra 

Returns the format information of the third party library used to support the format.
Format extra is 50 chars max.
Returns an error code. See also File Formats.

im.FormatInfoExtra(format: string) -> error: number, extra: string [in Lua 5] 
int imFormatCompressions ( const char *  format,
char **  comp,
int *  comp_count,
int  color_mode,
int  data_type 

Returns the format compressions.
Compressions are 20 chars max each, maximum of 50 compressions. You can use "char* comp[50]".
color_mode and data_type are optional, use -1 to ignore them.
If you use them they will select only the allowed compressions checked like in imFormatCanWriteImage.
Returns an error code. See also File Formats, imErrorCodes, imDataType, imColorSpace and imColorModeConfig.

im.FormatCompressions(format: string, [color_mode: number], [data_type: number]) -> error: number, comp: table of strings [in Lua 5] 
int imFormatCanWriteImage ( const char *  format,
const char *  compression,
int  color_mode,
int  data_type 

Checks if the format support the given image class at the given compression.
Returns an error code. See also File Formats, imErrorCodes, imDataType, imColorSpace and imColorModeConfig.

im.FormatCanWriteImage(format: string, compression: string, color_mode: number, data_type: number) -> can_write: boolean [in Lua 5]