import java.awt.*;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.lang.*;
import javax.swing.event.*;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
public class CropImage
{
public static void main(String args[])
{
JFrame f;
f=new CropImageFrame();
// f.setVisible(true);
}
}
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
class CropImageFrame extends JFrame
{
public CropImageFrame()
{
JButton button;
JPanel mainPanel;
Image myImage;
Image[][] myImagePiece;
int numCols=2;
int numRows=2;
Container cp;
ImageProducer imProducer;
CropImageFilter cropFilter;
FilteredImageSource croppedImageProducer;
System.out.println("Attempting to Crop Image");
myImage=Toolkit.getDefaultToolkit().getImage("crown.jpg");
MediaTracker mTracker=new MediaTracker(this);
mTracker.addImage(myImage,1);
try
{
mTracker.waitForID(1);
}
catch(InterruptedException e)
{
System.out.println("ERROR FOOL..");
}
int imgW=myImage.getWidth(null);
int imgH=myImage.getHeight(null);
int cVal=imgW/numCols;
int rVal=imgH/numRows;
System.out.println(imgW);
System.out.println(imgH);
System.out.println("cVal= " + cVal);
System.out.println("rVal= " + rVal);
for(int c=0;c<numCols;c++)
{
for(int r=0;r<numRows;r++)
{
cropFilter = new CropImageFilter(0,0,cVal,rVal);
imProducer = myImage.getSource();
croppedImageProducer = new FilteredImageSource(imProducer, cropFilter);
myImagePiece[c][r] = createImage(croppedImageProducer);
if(imgH>rVal)
rVal=rVal+rVal;
}
if(imgW>cVal)
cVal=cVal+cVal;
}
button= new JButton(new ImageIcon(myImagePiece[1][1])); // Trying to Display bottom right corner
mainPanel=new JPanel();
mainPanel.add(button);
cp=getContentPane();
cp.add(mainPanel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300,200);
setLocation(new Point(400,300));
setVisible(true);
}
}
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
This post has been edited by peepsrct: 21 October 2010 - 09:54 PM

New Topic/Question
Reply




MultiQuote







|