When using e.g. cairo_pattern_set_filter(pattern, CAIRO_FILTER_BEST) and the pattern uses a bitmap surface, is the filter only for upsampling? I have high-res bitmaps that, when drawn to occupy fewer canvas pixels (downsampled), they look like they're being nearest neighbour filtered. Ray