Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (c) 2015 Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany.
   * All rights reserved. This program and the accompanying materials
   * are made available under the terms of the Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0)
   * which accompanies this distribution, and is available at http://creativecommons.org/licenses/by-nd/4.0/
   *
   * Contributors:
   *      Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany - RMI Client, FileChooser and WebDAV
   */
 package de.ipk_gatersleben.bit.bi.edal.rmi.client.util;
 
 import java.awt.Color;
 import java.awt.Font;
 import java.awt.Image;
 import java.awt.Shape;
 
 
A class used to get ImageIcon object from classpath. fixed by

Author(s):
arendd
Jinbo Chen
Version:
1.0
 
 public class ImageUtil {
 	public static final Color DEFAULT_TEXT_COLOR = new Color(37, 81, 54);
 	// public static final Color DEFAULT_TEXT_COLOR = new Color(37, 81, 54);
 	public static final Font FONT_12_BOLD = new Font("Courier New", 1, 12);
 	public static final Font FONT_14_BOLD = new Font("Courier New", 1, 14);
 
 	public static ImageIcon createImageIcon(String pathString description) {
 		java.net.URL imgURL = ImageUtil.class.getResource(path);
 		if (imgURL != null) {
 			return new ImageIcon(imgURLdescription);
 		} else {
 			..error("Couldn't find file: " + path);
 			return null;
 		}
 	}
 
 	public static Image getImage(String imgPath) {
 
 		BufferedImage img = null;
 		try {
 
 			img = ImageIO.read(ImageUtil.class.getResource(imgPath));
 		} catch (IOException e) {
 			..error("can't find image in path: "
 					+ imgPath);
 		}
 		return img;
 	}
 
 	public static TexturePaint createTexturePaint(String imgPath) {
 		ImageIcon icon = createImageIcon(imgPath"");
 		int imageWidth = icon.getIconWidth();
 		int imageHeight = icon.getIconHeight();
 		BufferedImage bi = new BufferedImage(imageWidthimageHeight, 2);
 		Graphics2D g2d = bi.createGraphics();
 		g2d.drawImage(icon.getImage(), 0, 0, null);
 		g2d.dispose();
 		return new TexturePaint(bi,
 				new Rectangle(0, 0, imageWidthimageHeight));
 	}
 	
 	public static Image createWindowTitleShadowImage(Graphics2D g2dString titleboolean activeWindow) {
         FontRenderContext context = g2d.getFontMetrics().getFontRenderContext();
         //add a "-" to make shadow tail a little bit longer than the text outline.
         GlyphVector vector = g2d.getFont().createGlyphVector(contexttitle + "");
         Shape textShape = vector.getOutline();
 
         int strokeWidth = 15;
         Stroke stroke = new BasicStroke(strokeWidth..);
         Shape strokedTextShape = stroke.createStrokedShape(textShape);
         Rectangle strokedTextBounds = strokedTextShape.getBounds();
 
         BufferedImage image = new BufferedImage(strokedTextBounds.width,
                 strokedTextBounds.height.);
         Graphics2D imageGraphics = (Graphics2Dimage.createGraphics();
 
         imageGraphics.translate(-strokedTextShape.getBounds()., -strokedTextShape.getBounds().);
         imageGraphics.setColor(.);
         imageGraphics.fill(strokedTextShape);
        imageGraphics.dispose();
        if (activeWindow) {
            image = createDropShadow(image, 15, new Color(255, 255, 255, 200));
        } else {
            image = createDropShadow(image, 15, new Color(200, 200, 200, 200));
        }
        return image;
    }
	 public static BufferedImage createDropShadow(BufferedImage imageint size) {
	        return createDropShadow(imagesize.);
	    }
	    public static BufferedImage createDropShadow(BufferedImage imageint sizeColor renderColor) {
	        BufferedImage shadow = new BufferedImage(
	                image.getWidth() + 4 * size,
	                image.getHeight() + 4 * size,
	                .);
	        Graphics2D g2 = shadow.createGraphics();
	        g2.drawImage(imagesize * 2, size * 2, null);
	        g2.setComposite(.);
	        g2.setColor(renderColor);
	        g2.fillRect(0, 0, shadow.getWidth(), shadow.getHeight());
	        g2.dispose();
	        shadow = getGaussianBlurFilter(sizetrue).filter(shadownull);
	        shadow = getGaussianBlurFilter(sizefalse).filter(shadownull);
	        return shadow;
	    }
	    
	    public static ConvolveOp getGaussianBlurFilter(int radiusboolean horizontal) {
	        if (radius < 1) {
	            throw new IllegalArgumentException("Radius must be >= 1");
	        }
	        int size = radius * 2 + 1;
	        float[] data = new float[size];
	        float sigma = radius / 3.0f;
	        float twoSigmaSquare = 2.0f * sigma * sigma;
	        float sigmaRoot = (float) Math.sqrt(twoSigmaSquare * .);
	        float total = 0.0f;
	        for (int i = -radiusi <= radiusi++) {
	            float distance = i * i;
	            int index = i + radius;
	            data[index] = (float) Math.exp(-distance / twoSigmaSquare) / sigmaRoot;
	            total += data[index];
	        }
	        for (int i = 0; i < data.lengthi++) {
	            data[i] /= total;
	        }
	        Kernel kernel = null;
	        if (horizontal) {
	            kernel = new Kernel(size, 1, data);
	        } else {
	            kernel = new Kernel(1, sizedata);
	        }
	        return new ConvolveOp(kernel.null);
	    }
New to GrepCode? Check out our FAQ X