Java examples for 2D Graphics:BufferedImage
trim BufferedImage Around Center
/**// w w w. j a v a 2s. c o m * Copyright 2012 Dr. Krusche & Partner PartG * * AMES-Web-Service is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation, either version 3 of * the License, or (at your option) any later version. * * AMES- Web-Service is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this software. If not, see <http://www.gnu.org/licenses/>. * */ //package com.java2s; import java.awt.Color; import java.awt.Graphics2D; import java.awt.Point; import java.awt.image.BufferedImage; public class Main { /** * @param img * @param center * @param bgColor * @return */ public static BufferedImage trimAroundCenter(BufferedImage img, Point center, Color bgColor) { int width = img.getWidth(null); width = 2 * Math.max(center.x, (width - center.x)); int height = img.getHeight(null); height = 2 * Math.max(center.y, (height - center.y)); /* * Create the return image */ BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); Graphics2D g2 = bi.createGraphics(); g2.setColor(bgColor); g2.fillRect(0, 0, width, height); g2.drawImage(img, width / 2 - center.x, height / 2 - center.y, null); g2.dispose(); bi.flush(); return bi; } }