Difference between revisions of "Structures"
From XnView Wiki
(Created page with '== GFL_BITMAP == The GFL_BITMAP structure contains all informations about picture in memory. typedef struct ( GFL_BITMAP_TYPE Type, GFL_ORIGIN Origin, &nbs…') |
|||
Line 256: | Line 256: | ||
== GFL_LOAD_PARAMS == | |||
GFL_LOAD_PARAMS | |||
The GFL_LOAD_PARAMS structure contains options for picture loading. | The GFL_LOAD_PARAMS structure contains options for picture loading. | ||
typedef struct ( | |||
GFL_UINT32 Flags, | |||
GFL_INT32 FormatIndex, | |||
GFL_INT32 ImageWanted, | |||
GFL_ORIGIN Origin, | |||
GFL_BITMAP_TYPE ColorModel, | |||
GFL_UINT32 LinePadding, | |||
GFL_UINT8 DefaultAlpha, | |||
GFL_UINT8 Reserved1, | |||
GFL_UINT16 Reserved2, | |||
GFL_INT32 Width, | |||
GFL_INT32 Height, | |||
GFL_UINT32 Offset, | |||
GFL_CORDER ChannelOrder, | |||
GFL_CTYPE ChannelType, | |||
GFL_UINT16 PcdBase, | |||
GFL_UINT16 EpsDpi, | |||
GFL_INT32 EpsWidth, | |||
GFL_INT32 EpsHeight, | |||
GFL_READ_CALLBACK Read, | |||
GFL_TELL_CALLBACK Tell, | |||
GFL_SEEK_CALLBACK Seek | |||
} GFL_LOAD_PARAMS | |||
'''Members''' | |||
Members | |||
FormatIndex | :Flags | ||
Index of the format used to load. | ::Options | ||
Default value : -1 (for an automatic recognition). | ::{| | ||
ImageWanted | |GFL_LOAD_SKIP_ALPHA || If the picture has an alpha channel, it is ignored | ||
For a multi-page file, identifies the image number. | |- | ||
Default value : 0 | |GFL_LOAD_IGNORE_READ_ERROR || Ignore all read errors | ||
Origin | |- | ||
Origin wanted. GFL_TOP_LEFT Top left | |GFL_LOAD_BY_EXTENSION_ONLY || Use only extension to recognize the filetype | ||
GFL_BOTTOM_LEFT Bottom left | |- | ||
GFL_TOP_RIGHT Top right | |GFL_LOAD_READ_ALL_COMMENT || Read all comment in the file | ||
GFL_BOTTOM_RIGHT Bottom right | |- | ||
Default value : GFF_TOP_LEFT | |GFL_LOAD_FORCE_COLOR_MODEL || ColorModel is used for the picture type | ||
ColorModel | |- | ||
Color Model wanted. GFL_RGB True colors - Red/Green/Blue (24 bits) | |GFL_LOAD_PREVIEW_NO_CANVAS_RESIZE || Keep the ratio for the preview | ||
GFL_BGR True colors - Blue/Green/Red (24 bits) | |- | ||
GFL_RGBA True colors - Red/Green/Blue/Alpha (32 bits) | |GFL_LOAD_BINARY_AS_GREY || Load a binary file in 8bits | ||
GFL_ABGR True colors - Alpha/Blue/Green/Red (32 bits) | |- | ||
GFL_BGRA True colors - Blue/Green/Red/Alpha (32 bits) | |GFL_LOAD_ORIGINAL_COLORMODEL || If the color model of the file is CMYK, so the picture loaded will be in CMYK | ||
GFL_ARGB True colors - Red/Green/Blue/Alpha (32 bits) | |- | ||
Default value : GFL_RGB | |GFL_LOAD_ONLY_FIRST_FRAME || If the color model of the file is CMYK, so the picture loaded will be in CMYK | ||
LinePadding | |- | ||
Pad for a pixels line (For example, a value of 4 allow a line padding on 32bits). | |GFL_LOAD_ORIGINAL_DEPTH || If the file has more than 8 bits per component, keep it | ||
Default value : 1 | |- | ||
DefaultAlpha | |GFL_LOAD_METADATA || Read all metadata (IPTC & EXIF) | ||
Alpha value to use when the picture is loaded in 32bits, but the original file doesn't have an alpha. | |- | ||
Default value: Black | |GFL_LOAD_COMMENT || Read comment | ||
Width | |- | ||
For RAW or YUV format, width of picture. | |GFL_LOAD_HIGH_QUALITY_THUMBNAIL || Use high quality for gflLoadThumbnail | ||
Height | |} | ||
For RAW or YUV format, height of picture. | :FormatIndex | ||
Offset | ::Index of the format used to load. | ||
For RAW or YUV format, offset of the picture in the file. | ::Default value : -1 (for an automatic recognition). | ||
ChannelOrder | :ImageWanted | ||
For RAW format, channel order of the components. GFL_CORDER_INTERLEAVED Interleaved | ::For a multi-page file, identifies the image number. | ||
GFL_CORDER_SEQUENTIAL Sequential | ::Default value : 0 | ||
GFL_CORDER_SEPARATE Separate | :Origin | ||
::Origin wanted. | |||
::{| | |||
|GFL_TOP_LEFT || Top left | |||
|- | |||
|GFL_BOTTOM_LEFT || Bottom left | |||
|- | |||
|GFL_TOP_RIGHT || Top right | |||
|- | |||
|GFL_BOTTOM_RIGHT || Bottom right | |||
|} | |||
::Default value : GFF_TOP_LEFT | |||
:ColorModel | |||
::Color Model wanted. | |||
::{| | |||
|GFL_RGB || True colors - Red/Green/Blue (24 bits) | |||
|- | |||
|GFL_BGR || True colors - Blue/Green/Red (24 bits) | |||
|- | |||
|GFL_RGBA || True colors - Red/Green/Blue/Alpha (32 bits) | |||
|- | |||
|GFL_ABGR || True colors - Alpha/Blue/Green/Red (32 bits) | |||
|- | |||
|GFL_BGRA || True colors - Blue/Green/Red/Alpha (32 bits) | |||
|- | |||
|GFL_ARGB || True colors - Red/Green/Blue/Alpha (32 bits) | |||
|} | |||
::Default value : GFL_RGB | |||
:LinePadding | |||
::Pad for a pixels line (For example, a value of 4 allow a line padding on 32bits). | |||
::Default value : 1 | |||
:DefaultAlpha | |||
::Alpha value to use when the picture is loaded in 32bits, but the original file doesn't have an alpha. | |||
::Default value: Black | |||
:Width | |||
::For RAW or YUV format, width of picture. | |||
:Height | |||
::For RAW or YUV format, height of picture. | |||
:Offset | |||
::For RAW or YUV format, offset of the picture in the file. | |||
:ChannelOrder | |||
::For RAW format, channel order of the components. GFL_CORDER_INTERLEAVED :Interleaved | |||
::{| | |||
|GFL_CORDER_SEQUENTIAL || Sequential | |||
|- | |||
|GFL_CORDER_SEPARATE || Separate | |||
|} | |||
:ChannelType | |||
::For RAW format, channel type of the components. | |||
::{| | |||
|GFL_CTYPE_GREYSCALE || Greyscale | |||
|- | |||
|GFL_CTYPE_RGB || Red-Green-Blue | |||
|- | |||
|GFL_CTYPE_BGR || Blue-Green-Red | |||
|- | |||
|GFL_CTYPE_RGBA || Red-Green-Blue-Alpha | |||
|- | |||
|GFL_CTYPE_ABGR || Alpha-Blue-Green-Red | |||
|- | |||
|GFL_CTYPE_CMY || Cyan-Magenta-Yellow | |||
|- | |||
|GFL_CTYPE_CMYK || Cyan-Magenta-Yellow-Black | |||
|} | |||
:PcdBase | |||
::For PCD format, it's the base used. | |||
::{| | |||
|0 || 192x144 | |||
|- | |||
|1 || 384x288 | |||
|- | |||
|2 || 768x576 | |||
|} | |||
:EpsDpi | |||
::For PS/EPS format, dpi to be used for loading. | |||
:EpsWidth | |||
::For PS/EPS format, width to be used for loading. | |||
:EpsHeight | |||
::For PS/EPS format, height to be used for loading. | |||
:Read | |||
::Pointer to a read user function. | |||
:Tell | |||
::Pointer to a tell user function. | |||
:Seek | |||
::Pointer to a seek user function. | |||
== GFL_SAVE_PARAMS == | |||
GFL_SAVE_PARAMS | |||
The GFL_SAVE_PARAMS structure contains options for the save of picture. | The GFL_SAVE_PARAMS structure contains options for the save of picture. | ||
typedef struct ( | |||
GFL_UINT32 Flags, | |||
GFL_INT32 FormatIndex, | |||
GFL_COMPRESSION Compression, | |||
GFL_INT16 Quality, | |||
GFL_INT16 CompressionLevel, | |||
GFL_BOOL Interlaced, | |||
GFL_BOOL Progressive, | |||
GFL_BOOL OptimizeHuffmanTable, | |||
GFL_BOOL InAscii, | |||
GFL_UINT32 Offset, | |||
GFL_CORDER ChannelOrder, | |||
GFL_CTYPE ChannelType, | |||
GFL_WRITE_CALLBACK Write, | |||
GFL_TELL_CALLBACK Tell, | |||
GFL_SEEK_CALLBACK Seek | |||
} GFL_SAVE_PARAMS | |||
'''Members''' | |||
Members | |||
Quality | :Flags | ||
Quality of the compression (JPEG) | ::Options | ||
0: the worst, 100: the best | ::{| | ||
CompressionLevel | |GFL_SAVE_REPLACE_EXTENSION || Replace extension by the default format extension | ||
Level of compression (PNG). | |- | ||
1: minimum, 7: maximum | |GFL_SAVE_ANYWAY || Convert picture if colormode can be saved in this format (For example, RGB picture must be converted in 256 colors to save it in GIF) | ||
Interlaced | |} | ||
Interlaced mode (GIF). | :FormatIndex | ||
Progressive | ::Index of format to be used. | ||
Progressive mode (JPEG). | :Compression | ||
OptimizeHuffmanTable | ::{| | ||
Optimize the Huffman table (JPEG). | |GFL_NO_COMPRESSION || No compression | ||
InAscii | |- | ||
Use the ascii mode (PNM) | |GFL_RLE || Packbits | ||
Offset | |- | ||
For RAW or YUV format, offset of the data start. | |GFL_LZW || LZW (tiff only) | ||
ChannelOrder | |- | ||
For RAW format, channel order of components. GFL_CORDER_INTERLEAVED Interleaved | |GFL_CCITT_FAX3 || Fax Group 3 (tiff only) | ||
GFL_CORDER_SEQUENTIAL Sequential | |- | ||
GFL_CORDER_SEPARATE Separate | |GFL_CCITT_FAX3_2D || Fax Group 3-2D (tiff only) | ||
|- | |||
|GFL_CCITT_FAX4 || Fax Group 4 (tiff only) | |||
|} | |||
:Quality | |||
::Quality of the compression (JPEG) | |||
::0: the worst, 100: the best | |||
:CompressionLevel | |||
::Level of compression (PNG). | |||
::1: minimum, 7: maximum | |||
:Interlaced | |||
::Interlaced mode (GIF). | |||
:Progressive | |||
::Progressive mode (JPEG). | |||
:OptimizeHuffmanTable | |||
::Optimize the Huffman table (JPEG). | |||
:InAscii | |||
::Use the ascii mode (PNM) | |||
:Offset | |||
::For RAW or YUV format, offset of the data start. | |||
:ChannelOrder | |||
::For RAW format, channel order of components. | |||
::{| | |||
|GFL_CORDER_INTERLEAVED || Interleaved | |||
|- | |||
|GFL_CORDER_SEQUENTIAL || Sequential | |||
|- | |||
|GFL_CORDER_SEPARATE || Separate | |||
|} | |||
:ChannelType | |||
::For RAW format, channel type of components. | |||
::{| | |||
|GFL_CTYPE_GREYSCALE || Greyscale | |||
|- | |||
|GFL_CTYPE_RGB || Red-Green-Blue | |||
|- | |||
|GFL_CTYPE_BGR || Bleu-Green-Red | |||
|- | |||
|GFL_CTYPE_RGBA || Red-Green-Bleu-Alpha | |||
|- | |||
|GFL_CTYPE_ABGR || Alpha-Bleu-Green-Red | |||
|- | |||
|GFL_CTYPE_CMY || Cyan-Magenta-Yellow | |||
|- | |||
|GFL_CTYPE_CMYK || Cyan-Magenta-Yellow-Black | |||
|} | |||
:Write | |||
::Pointer to a write user function. | |||
:Tell | |||
::Pointer to a tell user function. | |||
:Seek | |||
::Pointer to a seek user function. | |||
== GFL_RECT == | |||
GFL_RECT | |||
The GFL_RECT structure define a rectangle. | The GFL_RECT structure define a rectangle. | ||
typedef struct ( | |||
GFL_INT32 x, | |||
GFL_INT32 y, | |||
GFL_INT32 w, | |||
GFL_INT32 h | |||
} GFL_RECT | |||
'''Members''' | |||
Members | |||
:x | |||
::X position. | |||
:y | |||
::Y position. | |||
:w | |||
::Width. | |||
:h | |||
::Height. | |||
GFL_COLOR | == GFL_COLOR == | ||
The GFL_COLOR structure allow to define a color. | The GFL_COLOR structure allow to define a color. | ||
typedef struct ( | |||
GFL_UINT16 Red, | |||
GFL_UINT16 Green, | |||
GFL_UINT16 Blue, | |||
GFL_UINT16 Alpha | |||
} GFL_COLOR | |||
'''Members''' | |||
Members | |||
:Red | |||
::Define the red component. | |||
:Green | |||
::Define the green component. | |||
:Blue | |||
::Define the blue component. | |||
:Alpha | |||
::Define the alpha component. | |||
GFL_POINT | == GFL_POINT == | ||
The GFL_POINT structure allows to define a point. | The GFL_POINT structure allows to define a point. | ||
typedef struct ( | |||
GFL_INT32 x, | |||
GFL_INT32 y | |||
} GFL_POINT | |||
'''Members''' | |||
Members | |||
:x | |||
::X position. | |||
:y | |||
::Y position. | |||
GFL_FILTER | == GFL_FILTER == | ||
The GFL_FILTER structure allows to define a matrix for convolution (maximum 7x7). | The GFL_FILTER structure allows to define a matrix for convolution (maximum 7x7). | ||
typedef struct ( | |||
GFL_INT16 Size, | |||
GFL_INT16 Matrix[7*7], | |||
GFL_INT16 Divisor, | |||
GFL_INT16 Bias | |||
} GFL_FILTER | |||
'''Members''' | |||
Members | |||
:Size | |||
::Define the width of the matrix (maximum 7). | |||
:Matrix | |||
::Define each values fo the matrix. | |||
:Divisor | |||
::Define the divisor to apply. | |||
:Bias | |||
::Define the bias to apply. | |||
'''Example''' | |||
:A "blur" matrix is defined like this: | |||
::Size = 3 | |||
::Matrix = (1 2 1 2 4 2 1 2 1) | |||
::Divisor = 16 | |||
::Bias = 0 |
Revision as of 09:03, 23 September 2009
GFL_BITMAP
The GFL_BITMAP structure contains all informations about picture in memory.
typedef struct ( GFL_BITMAP_TYPE Type, GFL_ORIGIN Origin, GFL_INT32 Width, GFL_INT32 Height, GFL_UINT32 BytesPerLine, GFL_INT16 LinePadding, GFL_UINT16 BitsPerComponent, GFL_UINT16 ComponentsPerPixel, GFL_UINT16 BytesPerPixel, GFL_UINT16 Xdpi, GFL_UINT16 Ydpi, GFL_INT16 TransparentIndex, GFL_INT32 ColorUsed, GFL_COLORMAP* ColorMap, GFL_UINT8* Data, char* Comment, void* MetaData } GFL_BITMAP
Members
- Type
- Type of the picture
GFL_BINARY 0x0001 Binary GFL_GREY 0x0002 Grey scale GFL_COLORS 0x0004 Colors with colormap GFL_RGB 0x00010 TrueColors - Red/Green/Blue GFL_RGBA 0x0020 TrueColors - Red/Green/Blue/Alpha GFL_BGR 0x0040 TrueColors - Blue/Green/Red GFL_ABGR 0x0080 TrueColors - Alpha/Blue/Green/Red GFL_BGRA 0x0100 TrueColors - Blue/Green/Red/Alpha GFL_ARGB 0x0200 TrueColors - Alpha/Red/Green/Blue GFL_CMYK 0x0400 TrueColors - Cyan/Magenta/Yellow/Black
- Origin
- Origin of the picture.
GFL_TOP_LEFT 0 Top left (default) GFL_BOTTOM_LEFT 2 Bottom left GFL_TOP_RIGHT 1 Top right GFL_BOTTOM_RIGHT 3 Bottom right
- Width
- Width in pixels of the picture.
- Height
- Height in pixels of the picture.
- BytesPerLine
- Bytes per line of pixels.
- LinePadding
- Internal use, do not modify.
- BitsPerComponent
- Bits per component, can be 1, 8, 16
- ComponentsPerPixel
- Component per pixel, can be 1, 3 or 4
- BytesPerPixel
- Bytes per pixel (For example: 1, 3 or 4).
- Xdpi
- Pixels per inch in X axis.
- Ydpi
- Pixels per inch in Y axis.
- TransparentIndex
- Index of transparency (only for GFL_COLORS & GFL_GREY type).
- ColorUsed
- Number of color used in the picture (only for GFL_COLORS & GFL_GREY type).
- ColorMap
- Address of a GFL_COLORMAP structure for the colormap (only for GFL_COLORS type).
- Data
- Pointer of the picture data.
- Comment
- Address of a string used by the comment. You must use gflSetComment to change the comment.
- MetaData
- Pointer of Metadata. You must use gflBitmapGetIPTC & gflBitmapGetEXIF to obtain readable data.
GFL_COLORMAP
The GFL_COLORMAP structure is used for colormap.
typedef struct ( GFL_UINT8 Red[256], GFL_UINT8 Green[256], GFL_UINT8 Blue[256] } GFL_COLORMAP
Members
- Red
- Array of red components.
- Green
- Array of green components.
- Blue
- Array of blue components.
GFL_FORMAT_INFORMATION
The GFL_FORMAT_INFORMATION structure contains informations about a format available in GFL.
typedef struct ( GFL_INT32 Index, GFL_ORIGIN Name[8], char Description[64], GFL_UINT32 Status, GFL_UINT32 NumberOfExtension, char Extension[16][8] } GFL_FORMAT_INFORMATION
Members
- Index
- Index of the format.
- Name
- Null-terminated string that contains the name of the format. For example, "jpeg" is for JPEG format.
- Description
- Null-terminated string that contains the label of the format.
- Status
- Format status.
- GFL_READ Reading support
- GFL_WRITE Writing support
- NumberOfExtension
- Nomber of extension known by this format.
- Extension
- Array of Null-terminated string that contains the extension.
GFL_FILE_INFORMATION
The GFL_FILE_INFORMATION structure contains informations about a picture's file.
typedef struct ( GFL_BITMAP_TYPE Type, GFL_ORIGIN Origin, GFL_INT32 Width, GFL_INT32 Height, GFL_INT32 FormatIndex, char FormatName[8], char Description[64], GFL_UINT16 Xdpi, GFL_UINT16 Ydpi, GFL_UINT16 BitsPerComponent, GFL_UINT16 ComponentsPerPixel, GFL_INT32 NumberOfImages, GFL_UINT32 FileSize, GFL_COLORMODEL ColorModel, GFL_COMPRESSION Compression, char CompressionDescription[64] } GFL_LOAD_PARAMS
Members
- Type
- Not used
- Origin
- Origin of the picture.
GFL_TOP_LEFT 0 Top left (default) GFL_BOTTOM_LEFT 2 Bottom left GFL_TOP_RIGHT 1 Top right GFL_BOTTOM_RIGHT 3 Bottom right
- Width
- Width in pixels of the picture.
- Height
- Height in pixels of the picture.
- FormatIndex
- Index of picture's format.
- FormatName
- Name of picture's format.
- Description
- File label.
- Xdpi
- Pixels per inch in the X axis.
- Ydpi
- Pixels per inch in the Y axis.
- BitsPerComponent
- Bits per component, can be 1, 8, 16
- ComponentsPerPixel
- Component per pixel, can be 1, 3 or 4
- NumberOfImages
- Number of picture in the file.
- FileSize
- Size of the file.
- ColorModel
- Color model.
GFL_CM_RGB 0 Red-Green-Blue GFL_CM_GREY 1 Greyscale GFL_CM_CMY 2 Cyan-Magenta-Yellow GFL_CM_CMYK 3 Cyan-Magenta-Yellow-Black GFL_CM_YCBCR 4 YCbCr GFL_CM_YUV16 5 YUV 16bits GFL_CM_LAB 6 Lab GFL_CM_LOGLUV 7 Log Luv GFL_CM_LOGL 8 Log L
- Compression
GFL_NO_COMPRESSION 0 No compression GFL_RLE 1 Packbits GFL_LZW 2 LZW GFL_JPEG 3 JPEG GFL_ZIP 4 ZIP GFL_SGI_RLE 5 SGI Packbits GFL_CCITT_RLE 6 CCITT RLE GFL_CCITT_FAX3 7 Fax Group 3 GFL_CCITT_FAX3_2D 8 Fax Group 3-2D GFL_CCITT_FAX4 9 Fax Group 4 GFL_WAVELET 10 Wavelet GFL_UNKNOWN_COMPRESSION 255 Other compression
- CompressionDescription
- Pointer to a buffer that contains the full compression description.
Remarks
- gflFreeFileInformation must be used for freeing the allocated memory.
GFL_LOAD_PARAMS
The GFL_LOAD_PARAMS structure contains options for picture loading.
typedef struct ( GFL_UINT32 Flags, GFL_INT32 FormatIndex, GFL_INT32 ImageWanted, GFL_ORIGIN Origin, GFL_BITMAP_TYPE ColorModel, GFL_UINT32 LinePadding, GFL_UINT8 DefaultAlpha, GFL_UINT8 Reserved1, GFL_UINT16 Reserved2, GFL_INT32 Width, GFL_INT32 Height, GFL_UINT32 Offset, GFL_CORDER ChannelOrder, GFL_CTYPE ChannelType, GFL_UINT16 PcdBase, GFL_UINT16 EpsDpi, GFL_INT32 EpsWidth, GFL_INT32 EpsHeight, GFL_READ_CALLBACK Read, GFL_TELL_CALLBACK Tell, GFL_SEEK_CALLBACK Seek } GFL_LOAD_PARAMS
Members
- Flags
- Options
GFL_LOAD_SKIP_ALPHA If the picture has an alpha channel, it is ignored GFL_LOAD_IGNORE_READ_ERROR Ignore all read errors GFL_LOAD_BY_EXTENSION_ONLY Use only extension to recognize the filetype GFL_LOAD_READ_ALL_COMMENT Read all comment in the file GFL_LOAD_FORCE_COLOR_MODEL ColorModel is used for the picture type GFL_LOAD_PREVIEW_NO_CANVAS_RESIZE Keep the ratio for the preview GFL_LOAD_BINARY_AS_GREY Load a binary file in 8bits GFL_LOAD_ORIGINAL_COLORMODEL If the color model of the file is CMYK, so the picture loaded will be in CMYK GFL_LOAD_ONLY_FIRST_FRAME If the color model of the file is CMYK, so the picture loaded will be in CMYK GFL_LOAD_ORIGINAL_DEPTH If the file has more than 8 bits per component, keep it GFL_LOAD_METADATA Read all metadata (IPTC & EXIF) GFL_LOAD_COMMENT Read comment GFL_LOAD_HIGH_QUALITY_THUMBNAIL Use high quality for gflLoadThumbnail
- FormatIndex
- Index of the format used to load.
- Default value : -1 (for an automatic recognition).
- ImageWanted
- For a multi-page file, identifies the image number.
- Default value : 0
- Origin
- Origin wanted.
GFL_TOP_LEFT Top left GFL_BOTTOM_LEFT Bottom left GFL_TOP_RIGHT Top right GFL_BOTTOM_RIGHT Bottom right
- Default value : GFF_TOP_LEFT
- ColorModel
- Color Model wanted.
GFL_RGB True colors - Red/Green/Blue (24 bits) GFL_BGR True colors - Blue/Green/Red (24 bits) GFL_RGBA True colors - Red/Green/Blue/Alpha (32 bits) GFL_ABGR True colors - Alpha/Blue/Green/Red (32 bits) GFL_BGRA True colors - Blue/Green/Red/Alpha (32 bits) GFL_ARGB True colors - Red/Green/Blue/Alpha (32 bits)
- Default value : GFL_RGB
- LinePadding
- Pad for a pixels line (For example, a value of 4 allow a line padding on 32bits).
- Default value : 1
- DefaultAlpha
- Alpha value to use when the picture is loaded in 32bits, but the original file doesn't have an alpha.
- Default value: Black
- Width
- For RAW or YUV format, width of picture.
- Height
- For RAW or YUV format, height of picture.
- Offset
- For RAW or YUV format, offset of the picture in the file.
- ChannelOrder
- For RAW format, channel order of the components. GFL_CORDER_INTERLEAVED :Interleaved
GFL_CORDER_SEQUENTIAL Sequential GFL_CORDER_SEPARATE Separate
- ChannelType
- For RAW format, channel type of the components.
GFL_CTYPE_GREYSCALE Greyscale GFL_CTYPE_RGB Red-Green-Blue GFL_CTYPE_BGR Blue-Green-Red GFL_CTYPE_RGBA Red-Green-Blue-Alpha GFL_CTYPE_ABGR Alpha-Blue-Green-Red GFL_CTYPE_CMY Cyan-Magenta-Yellow GFL_CTYPE_CMYK Cyan-Magenta-Yellow-Black
- PcdBase
- For PCD format, it's the base used.
0 192x144 1 384x288 2 768x576
- EpsDpi
- For PS/EPS format, dpi to be used for loading.
- EpsWidth
- For PS/EPS format, width to be used for loading.
- EpsHeight
- For PS/EPS format, height to be used for loading.
- Read
- Pointer to a read user function.
- Tell
- Pointer to a tell user function.
- Seek
- Pointer to a seek user function.
GFL_SAVE_PARAMS
The GFL_SAVE_PARAMS structure contains options for the save of picture.
typedef struct ( GFL_UINT32 Flags, GFL_INT32 FormatIndex, GFL_COMPRESSION Compression, GFL_INT16 Quality, GFL_INT16 CompressionLevel, GFL_BOOL Interlaced, GFL_BOOL Progressive, GFL_BOOL OptimizeHuffmanTable, GFL_BOOL InAscii, GFL_UINT32 Offset, GFL_CORDER ChannelOrder, GFL_CTYPE ChannelType, GFL_WRITE_CALLBACK Write, GFL_TELL_CALLBACK Tell, GFL_SEEK_CALLBACK Seek } GFL_SAVE_PARAMS
Members
- Flags
- Options
GFL_SAVE_REPLACE_EXTENSION Replace extension by the default format extension GFL_SAVE_ANYWAY Convert picture if colormode can be saved in this format (For example, RGB picture must be converted in 256 colors to save it in GIF)
- FormatIndex
- Index of format to be used.
- Compression
GFL_NO_COMPRESSION No compression GFL_RLE Packbits GFL_LZW LZW (tiff only) GFL_CCITT_FAX3 Fax Group 3 (tiff only) GFL_CCITT_FAX3_2D Fax Group 3-2D (tiff only) GFL_CCITT_FAX4 Fax Group 4 (tiff only)
- Quality
- Quality of the compression (JPEG)
- 0: the worst, 100: the best
- CompressionLevel
- Level of compression (PNG).
- 1: minimum, 7: maximum
- Interlaced
- Interlaced mode (GIF).
- Progressive
- Progressive mode (JPEG).
- OptimizeHuffmanTable
- Optimize the Huffman table (JPEG).
- InAscii
- Use the ascii mode (PNM)
- Offset
- For RAW or YUV format, offset of the data start.
- ChannelOrder
- For RAW format, channel order of components.
GFL_CORDER_INTERLEAVED Interleaved GFL_CORDER_SEQUENTIAL Sequential GFL_CORDER_SEPARATE Separate
- ChannelType
- For RAW format, channel type of components.
GFL_CTYPE_GREYSCALE Greyscale GFL_CTYPE_RGB Red-Green-Blue GFL_CTYPE_BGR Bleu-Green-Red GFL_CTYPE_RGBA Red-Green-Bleu-Alpha GFL_CTYPE_ABGR Alpha-Bleu-Green-Red GFL_CTYPE_CMY Cyan-Magenta-Yellow GFL_CTYPE_CMYK Cyan-Magenta-Yellow-Black
- Write
- Pointer to a write user function.
- Tell
- Pointer to a tell user function.
- Seek
- Pointer to a seek user function.
GFL_RECT
The GFL_RECT structure define a rectangle.
typedef struct ( GFL_INT32 x, GFL_INT32 y, GFL_INT32 w, GFL_INT32 h } GFL_RECT
Members
- x
- X position.
- y
- Y position.
- w
- Width.
- h
- Height.
GFL_COLOR
The GFL_COLOR structure allow to define a color.
typedef struct ( GFL_UINT16 Red, GFL_UINT16 Green, GFL_UINT16 Blue, GFL_UINT16 Alpha } GFL_COLOR
Members
- Red
- Define the red component.
- Green
- Define the green component.
- Blue
- Define the blue component.
- Alpha
- Define the alpha component.
GFL_POINT
The GFL_POINT structure allows to define a point.
typedef struct ( GFL_INT32 x, GFL_INT32 y } GFL_POINT
Members
- x
- X position.
- y
- Y position.
GFL_FILTER
The GFL_FILTER structure allows to define a matrix for convolution (maximum 7x7).
typedef struct ( GFL_INT16 Size, GFL_INT16 Matrix[7*7], GFL_INT16 Divisor, GFL_INT16 Bias } GFL_FILTER
Members
- Size
- Define the width of the matrix (maximum 7).
- Matrix
- Define each values fo the matrix.
- Divisor
- Define the divisor to apply.
- Bias
- Define the bias to apply.
Example
- A "blur" matrix is defined like this:
- Size = 3
- Matrix = (1 2 1 2 4 2 1 2 1)
- Divisor = 16
- Bias = 0