1

Javaでtiffファイルを圧縮する方法、jpegファイルをtiffに追加すると、ファイルサイズが増加しました

File f2 = new File("D:/KYCDATA/mani/myimage_compressed.jpeg");

    BufferedImage image3 = ImageIO.read(f2);
    List<BufferedImage> list = new ArrayList<BufferedImage>();
    list.add(image3);

    File tiffFile = new File("D:/KYCDATA/mani/mani.tiff");
    if(tiffFile.exists()) {
        tiffFile.delete();
    }
    ImageOutputStream ios = null;
    ImageWriter writer = null;
    Iterator it = ImageIO.getImageWritersByFormatName("tiff");
    if (it.hasNext()) {
        writer = (ImageWriter) it.next();
    }

    ios = ImageIO.createImageOutputStream(tiffFile);
    writer.setOutput(ios);

    IIOImage iioImage = null;
    for (int i = 0; i < list.size(); i++) {
        iioImage = new IIOImage(list.get(i), null, null);
        if (i == 0) {
            writer.write(iioImage);
        } else {
            writer.writeInsert(i, iioImage, null);
        }
        writer.endWriteSequence();
4

2 に答える 2

3

TIFF は可逆圧縮を使用するため、質問を正しく理解していれば、TIFF は元の JPEG よりも大きいと予想されます。簡単な説明については、こちらを参照してください。

http://www.cambridgeincolour.com/tutorials/imagetypes.htm

于 2012-12-17T04:49:37.993 に答える