| Author |
Thumbnail
|
Stephen Justus
Greenhorn
Joined: Jul 20, 2004
Posts: 2
|
|
I need some help. I am using Tomcat version 4.1.24, jdk1.4.1_05, and Windows. The source below works fine but when I try to use it on Tomcat version 4.1.27, jdk1.4.1_05, and Linux it doesnt work. Any ideas why? package common; import com.sun.image.codec.jpeg.*; import java.awt.*; import javax.swing.ImageIcon; import java.awt.image.*; import java.io.*; public class Thumbnail extends BaseServlet{ public static void main(String[] args) throws Exception { try { // load image from INFILE Image image = Toolkit.getDefaultToolkit().getImage(args[0]); MediaTracker mediaTracker = new MediaTracker(new Container()); mediaTracker.addImage(image, 0); mediaTracker.waitForID(0); // determine thumbnail size from WIDTH and HEIGHT int thumbWidth = Integer.parseInt(args[2]); int thumbHeight = Integer.parseInt(args[3]); double thumbRatio = (double)thumbWidth / (double)thumbHeight; int imageWidth = image.getWidth(null); int imageHeight = image.getHeight(null); double imageRatio = (double)imageWidth / (double)imageHeight; if (thumbRatio < imageRatio) { thumbHeight = (int)(thumbWidth / imageRatio); } else { thumbWidth = (int)(thumbHeight * imageRatio); } // draw original image to thumbnail image object and // scale it to the new size on-the-fly BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB); Graphics2D graphics2D = thumbImage.createGraphics(); graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); graphics2D.drawImage(image, 0, 0, thumbWidth, thumbHeight, null); // save thumbnail image to OUTFILE BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(args[1])); JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); JPEGEncodeParam param = encoder. getDefaultJPEGEncodeParam(thumbImage); int quality = Integer.parseInt(args[4]); quality = Math.max(0, Math.min(quality, 100)); param.setQuality((float)quality / 100.0f, false); encoder.setJPEGEncodeParam(param); encoder.encode(thumbImage); } catch(Exception e) { System.out.println("failed"); } } }
|
 |
 |
|
|
subject: Thumbnail
|
|
|