The best down scaler I have come across gdk-pixbuf with GDK_INTERP_HYPER. Both the cairo scaler and gegl only do bilinear scaling. gdk_pixbuf_scale(px, spx, 0, 0, width_new, height_new, 0.0, 0.0, scale, scale, GDK_INTERP_HYPER); I have a test C program comparing the three methods. Ross