Skia supports bilinear down-scaling using mipmap. It's not that easy to implement and Skia also caches them.