Java tutorial
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); } }