| import java.awt.Graphics;
 import java.awt.Image;
 import java.awt.image.BufferedImage;
 import java.awt.image.BufferedImageOp;
 import java.awt.image.ConvolveOp;
 import java.awt.image.Kernel;
 
 import javax.swing.JFrame;
 import javax.swing.JPanel;
 
 public class MainClass extends JPanel {
 
 public void paint(Graphics g) {
 BufferedImage img = createImage();
 
 float ninth = 1.0f / 9.0f;
 
 float[] blurKernel = { ninth, ninth, ninth, ninth, ninth, ninth, ninth, ninth, ninth };
 
 BufferedImageOp blurOp = new ConvolveOp(new Kernel(3, 3, blurKernel));
 
 BufferedImage clone = blurOp.filter(img, null);
 
 g.drawImage(clone, 20,20,this);
 }
 private BufferedImage createImage(){
 BufferedImage bufferedImage = new BufferedImage(200,200,BufferedImage.TYPE_INT_RGB);
 Graphics g = bufferedImage.getGraphics();
 g.drawString("www.java2s.com", 20,20);
 
 return bufferedImage;
 }
 
 public static void main(String[] args) {
 JFrame frame = new JFrame();
 frame.getContentPane().add(new MainClass());
 
 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 frame.setSize(200, 200);
 frame.setVisible(true);
 }
 
 
 }
 
 
 |