У меня есть программа, которая рисует некоторую векторную графику, используя System.Drawing и класс Graphics. Сглаживание работает, вроде бы хорошо, но для моей потребности мне нужна избыточная дискретизация, поэтому я создаю исходное изображение, которое будет в n раз больше, а затем уменьшу окончательное изображение на n. В Windows и .NET полученное изображение выглядит великолепно! Однако на Mono 2.4.2.3 (стоковая установка Ubuntu 9.10) интрополяция ужасна. Вот как я масштабирую свои изображения:
Bitmap bmp = new Bitmap(Bmp.Width / OverSampling, Bmp.Height / OverSampling);
Graphics g = Graphics.FromImage(bmp);
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.DrawImage(Bmp, 0, 0, bmp.Width, bmp.Height);
g.Dispose();
Из того, что я могу сказать, интерполяция вообще не происходит. Есть идеи?