public static Color[] GetBaseColors(Bitmap bitmap) {
if (bitmap.Width == Size && bitmap.Height == Size) {
return GetBaseColors48(bitmap);
}
using (var resized = new Bitmap(Size, Size))
using (var graphics = Graphics.FromImage(resized)) {
graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
graphics.SmoothingMode = SmoothingMode.HighQuality;
graphics.PixelOffsetMode = PixelOffsetMode.HighQuality;
graphics.DrawImage(bitmap, 0, 0, Size, Size);
return GetBaseColors48(resized);
}
}