简体   繁体   English

用Java压缩png

[英]Compress png with Java

i want compress png with graphicsmagick or ImageMagick using im4java , anyone can help me about it ? 我想使用im4java用graphicsmagick或ImageMagick压缩png,有人可以帮助我吗? i found 我发现

 package example;
import com.googlecode.pngtastic.core.PngImage;
import com.googlecode.pngtastic.core.PngOptimizer;

import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.InputStream;

/**
 * Example pngtastic image optimization usage from java
 */
public class Test {

    public static void main(String[] args) throws Exception {
        // load png image from a file
        final InputStream in = new BufferedInputStream(new FileInputStream("/input.png"));
        final PngImage image = new PngImage(in);

        // optimize
        final PngOptimizer optimizer = new PngOptimizer();
        final PngImage optimizedImage = optimizer.optimize(image);

        // export the optimized image to a new file
        final ByteArrayOutputStream optimizedBytes = new ByteArrayOutputStream();
        optimizedImage.writeDataOutputStream(optimizedBytes);
        optimizedImage.export("/output.png", optimizedBytes.toByteArray());
    }
}

using pngtastic but it very small image before compress 198.3kB and after compress 179.6kB 使用pngtastic,但在压缩198.3kB之前和压缩179.6kB之后图像非常小

i found it pngnq on linux , you can install it and using Runtime.getRuntime().exec("pngnq <file png>"); 我在Linux上找到了pngnq,可以安装并使用Runtime.getRuntime().exec("pngnq <file png>"); in java 在java中

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM