Java BufferedImage Transform transform(BufferedImage image, int sx, int sy, int dx, int dy)

Here you can find the source of transform(BufferedImage image, int sx, int sy, int dx, int dy)

Description

transform

License

Open Source License

Declaration

private static BufferedImage transform(BufferedImage image, int sx, int sy, int dx, int dy) 

Method Source Code

//package com.java2s;
//License from project: Open Source License 

import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Rectangle;

import java.awt.geom.AffineTransform;

import java.awt.image.BufferedImage;

public class Main {
    private static BufferedImage transform(BufferedImage image, int sx, int sy, int dx, int dy) {
        AffineTransform at = new AffineTransform();

        at.concatenate(AffineTransform.getScaleInstance(sx, sy));
        at.concatenate(AffineTransform.getTranslateInstance(dx, dy));

        return createTransformed(image, at);
    }//w  w w  .  ja v a  2 s  . com

    private static BufferedImage createTransformed(BufferedImage image, AffineTransform at) {
        BufferedImage newImage = createImage(image);
        Graphics2D g = newImage.createGraphics();

        g.transform(at);
        g.drawImage(image, 0, 0, null);
        g.dispose();

        return newImage;
    }

    public static BufferedImage createImage(Rectangle bounds) {
        return createImage(bounds, BufferedImage.TYPE_INT_ARGB);
    }

    public static BufferedImage createImage(Rectangle bounds, int type) {
        return createImage(bounds.width, bounds.height, type);
    }

    public static BufferedImage createImage(Image image) {
        return createImage(image, BufferedImage.TYPE_INT_ARGB);
    }

    public static BufferedImage createImage(Image image, int type) {
        return createImage(image.getWidth(null), image.getHeight(null), type);
    }

    public static BufferedImage createImage(int width, int height) {
        return createImage(width, height, BufferedImage.TYPE_INT_ARGB);
    }

    public static BufferedImage createImage(int width, int height, int type) {
        return new BufferedImage(width, height, type);
    }
}

Related

  1. copyAndTranslateSubimage(BufferedImage src, Rectangle bounds)
  2. getTransformedImage(BufferedImage image, double scaleX, double scaleY, double shearX, double shearY)
  3. transform(BufferedImage image, int numquadrants)
  4. transform(String originalFile, String thumbnailFile, int thumbWidth, int thumbHeight)
  5. TransformGrayToTransparency(BufferedImage image)
  6. transformGrayToTransparency(BufferedImage image)
  7. transformImage(BufferedImage image, AffineTransform transform)