zoukankan      html  css  js  c++  java
  • java生成GIF图片

    简介

    GIF图形交换格式是一种位图图形文件格式,以8位色(即256种颜色)重现真彩色的图像。它实际上是一种压缩文档,采用LZW压缩算法进行编码,有效地减少了图像文件在网络上传输的时间。它是目前广泛应用于网络传输的图像格式之一。

    优点
    1. 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。
    2. 可插入多帧,从而实现动画效果。
    3. 可设置透明色以产生对象浮现于背景之上的效果。
    缺点
    1. 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩图像。

    代码实现

    测试代码依赖github上的一个开源实现

    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.FileOutputStream;
    import javax.imageio.ImageIO;
    
    public class Client {
    
      public static void main(String[] args) throws Exception {
        BufferedImage image1 = ImageIO.read(new File("D:/123.jpg"));
        BufferedImage image2 = ImageIO.read(new File("D:/456.jpg"));
        AnimatedGifEncoder e = new AnimatedGifEncoder();
        //生成的图片路径
        e.start(new FileOutputStream("D:/testgif.gif"));
        //图片之间间隔时间
        e.setDelay(500);   // 1 frame per sec
        //重复次数 0表示无限重复 默认不重复
        e.setRepeat(0);
        //添加图片
        e.addFrame(image1);
        e.addFrame(image2);
        e.finish();
      }
    
    }
    

    原图

    生成的效果图

    参考

    GIF/PNG和JPG的区别(一)
    github开源实现

  • 相关阅读:
    2020软件工程作业00
    2020软件工程作业03
    2020软件工程作业02
    软件工程作业01
    2020软件工程作业06
    2020软件工程作业05
    问题清单
    2020软件工程作业04
    2020软件工程作业02
    2020软件工程作业1
  • 原文地址:https://www.cnblogs.com/strongmore/p/14508381.html
Copyright © 2011-2022 走看看