protected BufferedImage initOffsets() {
		BufferedImage img = image;
		
		if( img == null ) return img;
		
		scale = 1;
		while( img.getWidth() * (scale+1) <= getWidth() && img.getHeight() * (scale+1) <= getHeight() ) {
			++scale;
		}
		while( scale > 1 && (img.getWidth() * scale > getWidth() || img.getHeight() * scale > getHeight()) ) {
			--scale;
		}
		
		offX = (int)(getWidth() - img.getWidth() * scale) / 2;
		offY = (int)(getHeight() - img.getHeight() * scale) / 2;
		
		return img;
	}