enum GdkPixbuf::InterpType

Overview

Interpolation modes for scaling functions.

The GDK_INTERP_NEAREST mode is the fastest scaling method, but has horrible quality when scaling down; GDK_INTERP_BILINEAR is the best choice if you aren't sure what to choose, it has a good speed/quality balance.

Note: Cubic filtering is missing from the list; hyperbolic interpolation is just as fast and results in higher quality.

Defined in:

lib/gi-crystal/src/auto/gdk_pixbuf-2.0/gdk_pixbuf.cr

Enum Members

Nearest = 0_u32

Nearest neighbor sampling; this is the fastest and lowest quality mode. Quality is normally unacceptable when scaling down, but may be OK when scaling up.

Tiles = 1_u32

This is an accurate simulation of the PostScript image operator without any interpolation enabled. Each pixel is rendered as a tiny parallelogram of solid color, the edges of which are implemented with antialiasing. It resembles nearest neighbor for enlargement, and bilinear for reduction.

Bilinear = 2_u32

Best quality/speed balance; use this mode by default. Bilinear interpolation. For enlargement, it is equivalent to point-sampling the ideal bilinear-interpolated image. For reduction, it is equivalent to laying down small tiles and integrating over the coverage area.

Hyper = 3_u32

This is the slowest and highest quality reconstruction function. It is derived from the hyperbolic filters in Wolberg's "Digital Image Warping", and is formally defined as the hyperbolic-filter sampling the ideal hyperbolic-filter interpolated image (the filter is designed to be idempotent for 1:1 pixel mapping). Deprecated: this interpolation filter is deprecated, as in reality it has a lower quality than the @GDK_INTERP_BILINEAR filter (Since: 2.38)

Class Method Summary

Instance Method Summary

Class methods inherited from struct Enum

g_type : UInt64 g_type

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


Instance Method Detail

def bilinear? #

def hyper? #

def nearest? #

def tiles? #