Return to Snippet

Revision: 65820
at January 23, 2014 16:51 by johansonkatherine


Initial Code
// read the source TIFF image
ImageInputStreamiis = ImageIO.createImageInputStream(new FileInputStream("d:/pdftest/BW_MultiPage_TIFF.tif"));
Iterator<ImageReader> readers = ImageIO.getImageReaders(iis);
// create ImageReader object to parse the Image
ImageReaderir = readers.next();
// specify the input source
ir.setInput(iis);
// get the count of frames in TIFF image
intframeCount = ir.getNumImages(true);
// iterate through each TIFF frame
for (int i = 0; i <frameCount; ++i)
    // save the individual TIFF frame as separate image with JPEG compression
ImageIO.write(ir.read(i), "jpg", new File("d:/pdftest/TIFF_JPEG_Coversion/frame" + i + ".jpg"));
// show the total count of tiff frames (optional)
// System.out.println("Tiff contains: "+frameCount+" frames");


// specify the directory containing JPEG images
String image_Directory = "d:/pdftest/TIFF_JPEG_Coversion/";
// read the files from Image directory
File f = new File(image_Directory);
// get the list of files in directory
File[] fa = f.listFiles();

//Instantiate a Pdf object by calling its empty constructor
Pdf pdf1 = new Pdf();
//Create a section in the Pdf object
Section sec1 = pdf1.getSections().add();

for (int i = 0; i <fa.length; i++)
{
    // by default each image will be added as new paragraph on new page
    //Create an image object in the section
aspose.pdf.Image img1 = new aspose.pdf.Image(sec1);
    //Add image object into the Paragraphs collection of the section
sec1.getParagraphs().add(img1);
    //Set the path of image file
img1.getImageInfo().setFile(fa[i].getPath());
    //Set the image file Type
img1.getImageInfo().setImageFileType(ImageFileType.Jpeg);
}
//Save the Pdf
pdf1.save("d:/pdftest/JPEG_image_toPDF.pdf");
// close InputStream holding TIFF image
iis.close();

Initial URL
http://www.aspose.com/docs/display/pdfjava/Convert+TIFF+frames+to+JPEG+compression+and+transform+to+PDF

Initial Description
This technical tip shows how each TIFF frame can be converted to JPEG and then these images to PDF file using Aspose.Pdf for Java. Aspose.Pdf for Java is very well capable of dealing with TIFF images and can easily transform them into PDF format. However there are cases when a TIFF image contains frames with different resolution or page orientation and product might not work well. So in order to resolve such issues, we can first convert TIFF frames into individual JPEG images and then save these images into PDF format using Aspose.Pdf for Java.

Initial Title
Convert Each TIFF Frame to JPEG & Transform them to PDF Format Using Java

Initial Tags
format, image, java, api, convert

Initial Language
Java