//To compile put this in a directory called jarnal and run javac jarnal/makebg.java from the superdirectory of the jarnal directory //You will probably want to change the package name so you can put this in your own package package jarnal; import java.util.*; import java.io.*; import java.util.zip.*; import javax.imageio.*; import javax.imageio.stream.*; import java.awt.image.BufferedImage; public class makebg{ public static boolean convert(InputStream in, OutputStream out){ try{ ImageInputStream iis = ImageIO.createImageInputStream (in); Iterator readers = ImageIO.getImageReaders(iis); int iind = 0; if(readers.hasNext()) { ZipOutputStream zip = new ZipOutputStream(out); ImageReader reader = (ImageReader)readers.next(); reader.setInput (iis, false); ImageReadParam ip = reader.getDefaultReadParam(); int np = reader.getNumImages(true); for (int i = 0; i < np; i++){ BufferedImage bg = reader.read (i, ip); if(bg != null){ ZipEntry subname = new ZipEntry("p" + iind + ".jpg"); zip.putNextEntry(subname); ImageIO.write(bg, "jpg", zip); iind++; } } zip.close(); } else return false; } catch(IOException ex){return false;} return false; } }