Two different main programs are shown main1
produces two image frames.
See p2a.jar
main2
produces one frame with two images side-by-side.
See p2b.jar
The program uses
ImageFrame.java
ImagePanel.java
ImageOp.java
which contains rgb2gray
ImageShow2.java
import java.awt.*; import java.awt.image.*; import javax.imageio.*; import javax.swing.*; public class ImageShow2 { public static void main1(String[] args) { // load the image String filename = (args.length>0)? args[0]: "bld.jpg"; ImagePanel p1 = new ImagePanel(filename); ImageFrame f1 = new ImageFrame(p1); f1.setLocation(100,100); f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); BufferedImage gray = ImageOp.rgb2gray(p1.img); ImageFrame f2 = new ImageFrame(new ImagePanel(gray,"grayscale image")); Dimension dim = f1.getSize(); f2.setLocation(140+dim.width,100); //f2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { // load the image String filename = (args.length>0)? args[0]: "bld.jpg"; ImagePanel p1 = new ImagePanel(filename); ImageFrame f1 = new ImageFrame(p1); f1.setLocation(100,100); f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); BufferedImage gray = ImageOp.rgb2gray(p1.img); JPanel p2 = new ImagePanel(gray,"grayscale image"); f1.add(p2,BorderLayout.EAST); f1.pack(); } }
Maintained by John Loomis, updated Tue Mar 03 20:23:20 2020