HI,

Tried the same but it was not working...

it gives me an blank image... Please help me out...

try {

                java.awt.Image image = rr.toImage();// An image given by the
service
                MediaTracker mediaTracker = new MediaTracker(new
Container());
                mediaTracker.addImage(image, 0);
                mediaTracker.waitForID(0);

                BufferedImage bImage = new BufferedImage(698,
                                 440, BufferedImage.TYPE_INT_RGB);
                Graphics2D graphics2D = bImage.createGraphics();

graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
                            RenderingHints.VALUE_INTERPOLATION_BILINEAR);
                graphics2D.drawImage(image, 0, 0, (int) 698, (int)
                                            440, null);
                graphics2D.dispose();

                ImageIO.write(bImage, "gif", res.getOutputStream());
        } catch (Exception e) {
                e.printStackTrace();

        }

Here rr is an external service object which gives me an image...

At the client side i have called this servlet...

Regards,
Naveen

On Sun, Nov 22, 2009 at 1:28 PM, bryanb <webbt...@gmail.com> wrote:

> Something like this works for me.
>
> On the server:
>
> import java.awt.Container;
> import java.awt.Graphics2D;
> import java.awt.MediaTracker;
> import java.awt.RenderingHints;
> import java.awt.Toolkit;
> import java.awt.image.BufferedImage;
>
> import javax.imageio.ImageIO;
> import javax.servlet.http.HttpServlet;
> import javax.servlet.http.HttpServletRequest;
> import javax.servlet.http.HttpServletResponse;
>
> public class ImageServlet extends HttpServlet {
>        /**
>         *
>         */
>        private static final long serialVersionUID = 1L;
>
>        public void doGet(HttpServletRequest request, HttpServletResponse
> response) {
>                double thumbWidth;
>                double thumbHeight;
>
>                String imagefile = request.getParameter("file");
>                String height = request.getParameter("h");
>                String width = request.getParameter("w");
>
> //              System.err.println(imagefile + ", " + height + ", " +
> width);
>
>                // Set the mime type of the image
>                response.setContentType("image/png");
>
>                try {
>
>                        java.awt.Image image =
> Toolkit.getDefaultToolkit().getImage
> (imagefile);
>                        MediaTracker mediaTracker = new MediaTracker(new
> Container());
>                        mediaTracker.addImage(image, 0);
>                        mediaTracker.waitForID(0);
>
>                        int imageWidth = image.getWidth(null);
>                        int imageHeight = image.getHeight(null);
>                        double imageRatio = (double) imageWidth / (double)
> imageHeight;
>
>                        // if width parameter is null, then just use it to
> scale
>                        thumbHeight = new Double(height);
>
>                        if (width != null) {
>                                thumbWidth = new Double(width);
>                                // determine size from WIDTH and HEIGHT
>                                double thumbRatio = thumbWidth /
> thumbHeight;
>
>                                if (thumbRatio < imageRatio) {
>                                        thumbHeight = thumbWidth /
> imageRatio;
>                                } else {
>                                        thumbWidth = thumbHeight *
> imageRatio;
>                                }
>                        } else {
>                                thumbWidth = thumbHeight * imageRatio;
>                        }
>
>                        // draw original image to thumbnail image object and
> scale it to
> the new size on-the-fly
>                        BufferedImage thumbImage = new BufferedImage((int)
> thumbWidth,
> (int) thumbHeight, BufferedImage.TYPE_INT_RGB);
>                        Graphics2D graphics2D = thumbImage.createGraphics();
>
>  graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
> RenderingHints.VALUE_INTERPOLATION_BILINEAR);
>                        graphics2D.drawImage(image, 0, 0, (int) thumbWidth,
> (int)
> thumbHeight, null);
>                        graphics2D.dispose();
>
>                        ImageIO.write(thumbImage, "png",
> response.getOutputStream());
>                } catch (Exception e) {
>                        e.printStackTrace();
>
>                }
>        }
> }
>
>
> On the client, create a URL to get the image something like this:
>
> StringBuffer sb = new StringBuffer(GWT.getHostPageBaseURL());
> sb.append("ImageServlet?file=");
> sb.append(imagefilel);
> sb.append("&h=" + Utils.getPageHeight());
> sb.append("&w=" + Utils.getPageWidth());
> Image image = new Image(sb.toString);
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To post to this group, send email to google-web-tool...@googlegroups.com.
> To unsubscribe from this group, send email to
> google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/google-web-toolkit?hl=.
>
>
>

--

You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.


Reply via email to