Want more features on Pastebin? Sign Up, it's FREE!
Guest

OpenImageLabel.java

By: a guest on Oct 1st, 2011  |  syntax: Java  |  size: 2.38 KB  |  views: 97  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. import javax.imageio.ImageIO;
  2. import javax.swing.Icon;
  3. import javax.swing.JPanel;
  4. import java.awt.Graphics;
  5. import java.awt.Graphics2D;
  6. import java.awt.Image;
  7. import java.awt.image.BufferedImage;
  8. import java.io.File;
  9. import java.io.IOException;
  10. import javax.swing.ImageIcon;
  11. import javax.swing.JLabel;
  12. import java.awt.Color;
  13. import java.awt.MediaTracker;
  14. import java.awt.Toolkit;
  15.  
  16. public class OpenImageLabel extends JLabel {
  17.         JLabel label;
  18.         BufferedImage bimage;
  19.         ImageIcon iconimage;
  20.         Image displayImage;
  21.         BufferedImage biSrc, biDest;
  22.         BufferedImage bi;
  23.         Graphics2D big;
  24.        
  25. public OpenImageLabel(){
  26.         this.setBackground(Color.RED);
  27.         iconimage = new ImageIcon();
  28.                
  29.         }
  30.        
  31.         public OpenImageLabel(Image image){
  32.        
  33.                 ImageIcon newimage = new (Image)(image);
  34.                
  35.                
  36.         }
  37.        
  38.        
  39.         public void setPane(BufferedImage image){
  40.                 //Doesn't work
  41.                 validate();
  42.                 }
  43.        
  44.         public void setPane(ImageIcon image){
  45.                 this.setIcon(image);
  46.                 validate();
  47.                 }
  48.        
  49.        
  50.         public void openFile(File file){
  51.                 String filename = (file.getPath());
  52.                 //iconimage = new ImageIcon(filename);
  53.  
  54.                 try {
  55.                         image = ImageIO.read(file);
  56.                 } catch (IOException e) {
  57.                         // TODO Auto-generated catch block
  58.                         e.printStackTrace();
  59.                 }
  60.                 displayImage = Toolkit.getDefaultToolkit().getImage(filename);
  61.                 MediaTracker mt = new MediaTracker(this);
  62.                 try {
  63.                      mt.waitForAll();
  64.                     } catch (Exception e) {
  65.                       System.out.println("Exception while loading.");
  66.                     }
  67.                 //Image image = toImage(displayImage);    
  68.                 this.setPane(displayImage);
  69.                    
  70.         }
  71.        
  72.           public void paintComponent(Graphics g) {
  73.                     super.paintComponent(g);
  74.                     Graphics2D g2D = (Graphics2D) g;
  75.                     g2D.drawImage(bi, 0, 0, this);
  76.                   }
  77.          
  78.         // This method returns an Image object from a buffered image
  79.           public static Image toImage(BufferedImage bufferedImage) {
  80.               return Toolkit.getDefaultToolkit().createImage(bufferedImage.getSource());
  81.           }
  82.          
  83.        
  84.         public void rotateImage(){
  85.                 //This is where we will rotate the image
  86.                 int w = bimage.getWidth();  
  87.                 int h = bimage.getHeight();  
  88.                 BufferedImage dimg = dimg = new BufferedImage(w, h, bimage.getType());  
  89.                 Graphics2D g = dimg.createGraphics();  
  90.                 g.rotate(Math.toRadians(90), w/2, h/2);  
  91.                 g.drawImage(bimage, null, 0, 0);  
  92.                 iconimage = (new ImageIcon(dimg));
  93.                 //setPane(iconimage);
  94.             }  
  95.        
  96. }
  97.  
  98.  
clone this paste RAW Paste Data