Progressive Image

1.2k Views Asked by At

I am trying to use progressive image to load on site.I am a beginner and have no idea how to get a progressive image!

Basically can we convert a normal uploaded image to progressive image using java? If yes, please provide some idea or any references.Main objective is to render large image.

Thank you

Here is how my servlet looks

package com.throttle.images;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
  * Servlet implementation class ImagingServlet
*/
public class ImagingServlet extends HttpServlet{
private static final long serialVersionUID = 1L;

/**
 * @see HttpServlet#HttpServlet()
 */
public ImagingServlet() {
    super();
    // TODO Auto-generated constructor stub
}

/**
 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
 */
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
     response.setContentType("image/jpg");  

        ServletOutputStream out;  
        out = response.getOutputStream(); 
        String name = request.getParameter("name");
        FileInputStream fin = new FileInputStream("system file path"+name);  
        System.out.println(name);
        BufferedInputStream bin = new BufferedInputStream(fin);  
        BufferedOutputStream bout = new BufferedOutputStream(out);  
            int ch =0; ;  
            while((ch=bin.read())!=-1)  
            {  
            bout.write(ch);
            bout.flush();
            //out.flush();
            //delay();
            //response.flushBuffer();
            }  
}

/**
 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
 */
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
}


void delay(){
    for(int i=0;i<1000;i++){
        for(int j=0;j<1000;j++){
            ;;  
        }

    }
}

}

1

There are 1 best solutions below

0
On

Images already render progressively in a web browser -- but you can do even better. Simply save your GIF or PNG images with the "interlaced" option, or your JPEG images with the "progressive" option

references here