Actions

Advanced functions

From XnView Wiki

The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

gflResize

The gflResize function allows to resize a picture.

GFL_ERROR gflResize(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst,  
  GFL_INT32 width,  
  GFL_INT32 height,  
  GFL_UINT32 method,  
  GFL_UINT32 flags
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.
width
New width.
height
New height.
method
GFL_RESIZE_QUICK Quick
GFL_RESIZE_BILINEAR Bilinear
flags
Reserved, must be 0.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.

gflResizeCanvas

The gflResizeCanvas function allows to resize the canvas of a picture.

GFL_ERROR gflResizeCanvas(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst,  
  GFL_INT32 width,  
  GFL_INT32 height,  
  GFL_CANVASRESIZE mode,  
  const GFL_COLOR* color
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.
width
New width.
height
New height.
mode
GFL_CANVASRESIZE_CENTER Center
GFL_CANVASRESIZE_TOPLEFT Top-Left
GFL_CANVASRESIZE_TOPRIGHT Top-Right
GFL_CANVASRESIZE_BOTTOMLEFT Bottom-Left
GFL_CANVASRESIZE_BOTTOMRIGHT Bottom-Right
color
Pointer to a GFL_COLOR structure to receive the background color.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.


gflCrop

The gflCrop function crops a picture.

GFL_ERROR gflCrop(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst,  
  const GFL_RECT* rect
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.
rect
Crop rectangle.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.

gflAutoCrop

The gflAutoCrop function performs a automatic crop on a picture.

GFL_ERROR gflAutoCrop(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst,  
  const GFL_COLOR* color, 
  GFL_INT32 tolerance
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.
color
Pointer to a GFL_COLOR structure used to set the background color to search.
Can be NULL, the background color is the color at x=0, y=0.
tolerance
Color tolerance.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.


gflRotate

The gflRotate function applies a rotation on a picture.

GFL_ERROR gflRotate(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst,  
  GFL_INT32 angle,  
  const GFL_COLOR* color
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.
angle
Angle of rotation in degrees.
color
Pointer to a GFL_COLOR structure used to set the background color.
Can be NULL, the background color is (0,0,0).

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.


gflRotateFine

The gflRotateFine function applies a rotation on a picture.

GFL_ERROR gflRotateFine(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst,  
  double angle,  
  const GFL_COLOR* color
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.
angle
Angle of rotation in degrees.
color
Pointer to a GFL_COLOR structure used to set the background color.
Can be NULL, the background color is (0,0,0).

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.

gflFlipHorizontal

The gflFlipHorizontal function applies a horizontal flip on picture.

GFL_ERROR gflFlipHorizontal(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.


gflFlipVertical

The gflFlipVertical function applies a vertical flip on picture.

GFL_ERROR gflFlipVertical(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.

gflChangeColorDepth

The gflChangeColorDepth function changes the picture type.

GFL_ERROR gflChangeColorDepth(
  GFL_BITMAP* src,  
  GFL_BITMAP** dst,  
  GFL_MODE mode,  
  GFL_MODE_PARAMS params
);

Parameters

src
Pointer to a GFL_BITMAP structure.
dst
Address of a pointer to a GFL_BITMAP structure. NULL if on the same instance.
mode
GFL_MODE_TO_BINARY Binary (8 bits)
GFL_MODE_TO_4GREY 4 Greyscale (8 bits)
GFL_MODE_TO_8GREY 8 Greyscale (8 bits)
GFL_MODE_TO_16GREY 16 Greyscale (8 bits)
GFL_MODE_TO_32GREY 32 Greyscale (8 bits)
GFL_MODE_TO_64GREY 64 Greyscale (8 bits)
GFL_MODE_TO_128GREY 128 Greyscale (8 bits)
GFL_MODE_TO_216GREY 216 Greyscale (8 bits)
GFL_MODE_TO_256GREY 256 Greyscale (8 bits)
GFL_MODE_TO_8COLORS 8 Colors (8 bits)
GFL_MODE_TO_16COLORS 16 Colors (8 bits)
GFL_MODE_TO_32COLORS 32 Colors (8 bits)
GFL_MODE_TO_64COLORS 64 Colors (8 bits)
GFL_MODE_TO_128GREY 128 Colors (8 bits)
GFL_MODE_TO_216COLORS 216 Colors (8 bits)
GFL_MODE_TO_256COLORS 256 Colors (8 bits)
GFL_MODE_TO_RGB Red-Green-Blue (24 bits)
GFL_MODE_TO_RGBA Red-Green-Blue-Alpha (32 bits)
GFL_MODE_TO_BGR Blue-Green-Red (24 bits)
GFL_MODE_TO_ABGR Alpha-Blue-Green-Red (32 bits)
GFL_MODE_TO_BGRA Blue-Green-Red-Alpha (32 bits)
params
Indicates a dither to be used for colors, greyscale & binary.
GFL_MODE_NO_DITHER No dithering
GFL_MODE_ADAPTIVE Adaptive without dithering
GFL_MODE_PATTERN_DITHER Pattern dithering
GFL_MODE_HALTONE45_DITHER HalfTone 45 dithering
GFL_MODE_HALTONE90_DITHER HalfTone 90 dithering
GFL_MODE_FLOYD_STEINBERG Floyd-Steinberg dithering

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.

gflMerge

The gflMerge function allows to merge a list of picture.

GFL_ERROR gflMerge(
  const GFL_BITMAP* src[],  
  const GFL_POINT origin[],  
  const GFL_UINT32 opacity[],  
  GFL_INT32  num_bitmap,  
  GFL_BITMAP** dst
);

Parameters

src
Address of an array of pointer to GFL_BITMAP structure.
origin
Address of an array of GFL_POINT structure, origin to insert for each picture.
If NULL, origin used is (0,0).
opacity
Address of an array of opacity, for each picture.
num_bitmap
Number of picture to merge.
dst
Address of a pointer to a GFL_BITMAP structure.

Remark

gflMerge works only in 24 or 32bits.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.


gflBitblt

The gflBitblt function performs a block transfert between two pictures.

GFL_ERROR gflBitblt(
  const GFL_BITMAP* src,  
  const GFL_RECT* rect,  
  const GFL_BITMAP* dst,  
  GFL_INT32 x_dest,  
  GFL_INT32 y_dest
);

Parameters

src
Pointer to a GFL_BITMAP structure, used as source.
rect
Pointer to a GFL_RECT structure. Area to copy.
dst
Pointer to a GFL_BITMAP structure, used as destination.
x_dest
X position in the destination picture.
y_dest
Y position in the destination picture.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.


gflBitbltEx

The gflBitbltEx function performs a block transfert between two pictures with alpha blending.

GFL_ERROR gflBitbltEx(
  const GFL_BITMAP* src,  
  const GFL_RECT* rect,  
  const GFL_BITMAP* dst,  
  GFL_INT32 x_dest,  
  GFL_INT32 y_dest
);

Parameters

src
Pointer to a GFL_BITMAP structure, used as source. Must be 32bits.
rect
Pointer to a GFL_RECT structure. Area to copy.
dst
Pointer to a GFL_BITMAP structure, used as destination.
x_dest
X position in the destination picture.
y_dest
Y position in the destination picture.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.

gflGetColorAt

The gflGetColorAt function gets the color at a position of the picture.

GFL_ERROR gflGetColorAt(
  GFL_BITMAP* src,  
  GFL_INT32 x,  
  GFL_INT32 y,  
  GFL_COLOR* color
);

Parameters

src
Pointer to a GFL_BITMAP structure.
x
X position.
y
Y position.
color
Pointer to a GFL_COLOR structure to obtain the result.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.


gflSetColorAt

The gflSetColorAt function allows to set a color at a position of the picture.

GFL_ERROR gflSetColorAt(
  GFL_BITMAP* src,  
  GFL_INT32 x,  
  GFL_INT32 y,  
  const GFL_COLOR* color
);

Parameters

src
Pointer to a GFL_BITMAP structure.
x
X position.
y
Y position.
color
Pointer to a GFL_COLOR structure.

Return value

The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR.