ResizeType

ResizeType enumeration

Определяет тип изменения размера.

public enum ResizeType

Ценности

ИмяЦенностьОписание
None0Пиксели не сохраняются во время операции изменения размера.
LeftTopToLeftTop1Левая верхняя точка нового изображения совпадет с левой верхней точкой исходного изображения. При необходимости произойдет кадрирование.
RightTopToRightTop2Правая верхняя точка нового изображения совпадет с правой верхней точкой исходного изображения. При необходимости произойдет кадрирование.
RightBottomToRightBottom3Правая нижняя точка нового изображения совпадет с правой нижней точкой исходного изображения. При необходимости произойдет кадрирование.
LeftBottomToLeftBottom4Левая нижняя точка нового изображения будет совпадать с левой нижней точкой исходного изображения. При необходимости произойдет кадрирование.
CenterToCenter5Центр нового изображения совпадет с центром исходного изображения. При необходимости произойдет кадрирование.
LanczosResample6Повторная выборка с использованием алгоритма Ланцоша с a=3.
NearestNeighbourResample7Передискретизировать с использованием алгоритма ближайшего соседа.
AdaptiveResample8Повторная выборка с использованием адаптивного алгоритма на основе взвешенной и смешанной рациональной функции и алгоритмов интерполяции lanczos3.
BilinearResample9Повторная выборка с использованием билинейной интерполяции. Предварительная фильтрация изображения разрешена для удаления шума перед повторной выборкой, когда это необходимо
HighQualityResample10Высококачественный ресемпл
CatmullRom11Метод кубической интерполяции Катмулла-Рома.
CubicConvolution12Метод интерполяции кубической свертки
CubicBSpline13Метод кубической интерполяции CubicBSpline
Mitchell14Метод кубической интерполяции Митчелла
SinC15Метод кубической интерполяции Sinc (Lanczos3)
Bell16Метод интерполяции Белла

Примеры

Измените размер изображения, используя определенный тип изменения размера.

[C#]

using (var image = Image.Load("Photo.jpg"))
{
    image.Resize(640, 480, ResizeType.CatmullRom);
    image.Save("ResizedPhoto.jpg");

    image.Resize(1024, 768, ResizeType.CubicConvolution);
    image.Save("ResizedPhoto2.jpg");

    var resizeSettings = new ImageResizeSettings
    {
        Mode = ResizeType.CubicBSpline,
        FilterType = ImageFilterType.SmallRectangular
    };

    image.Resize(800, 800, resizeSettings);
    image.Save("ResizedPhoto3.jpg");
}

В этом примере загружается изображение и изменяется его размер с использованием различных методов изменения размера.

[C#]

string dir = "c:\\temp\\";

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
{
    // Масштабирование в 2 раза с использованием передискретизации ближайших соседей.
    image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);
    image.Save(dir + "upsample.nearestneighbour.gif");
}

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
{
    // Масштабирование в 2 раза с использованием передискретизации ближайших соседей.
    image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);
    image.Save(dir + "downsample.nearestneighbour.gif");
}

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
{
    // Масштабируем в 2 раза, используя билинейную передискретизацию.
    image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.BilinearResample);
    image.Save(dir + "upsample.bilinear.gif");
}

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
{
    // Уменьшить масштаб в 2 раза, используя билинейную передискретизацию.
    image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.BilinearResample);
    image.Save(dir + "downsample.bilinear.gif");
}

Смотрите также