Сжатие изображения, минуя пикселей

Следующий метод Java принимает BufferedImage объекта и возвращает его сократилась версии. Параметр N определяет сокращение фактора.

Чтобы уменьшить изображение на целое N фактора, мы будем образцу каждого го пикселя по горизонтали и вертикали, и игнорировать другие.


    public static BufferedImage enlarge(BufferedImage image, int n) {

        

        int w = image.getWidth() / n;

        int h = image.getHeight() / n;

        

        BufferedImage shrunkImage =

                new BufferedImage(w, h, image.getType());

        

        for (int y=0; y < h; ++y)

            for (int x=0; x < w; ++x)

                shrunkImage.setRGB(x, y, image.getRGB(x*n, y*n));

        

        return shrunkImage;

    }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>