Como criar GIF animado em Java

Este tutorial rápido fornece detalhes sobre como criar GIF animado em Java adicionando diferentes tipos de imagens como PNG, JPEG etc. do disco. Ao usar o Java GIF, o processo de criação é simplificado e fácil de aprender, fornecendo detalhes de configuração, fluxo do programa e descrição detalhada. Você pode adicionar quantas imagens forem necessárias e pode aplicar filtros diferentes também de acordo com os requisitos do aplicativo.

Etapas para criar GIF animado em Java

  1. Estabeleça o ambiente do projeto para usar Aspose.Imaging for Java do repositório Maven
  2. Prepare a lista de arquivos de imagem do diretório desejado
  3. Inicialize uma lista de objetos de classe RasterImage
  4. Iterar através de toda a lista de arquivos de imagem e carregá-los todos na lista de RasterImage
  5. Crie um objeto GIFImage usando o primeiro RasterImage na lista
  6. Iterar pelo restante das imagens na lista e adicioná-las ao objeto GIFImage existente
  7. Salve a imagem GIF de saída no disco depois de adicionar todas as imagens

Estas etapas descrevem como usar Java para criar GIF animado compartilhando uma abordagem passo a passo. Primeiro, você precisa carregar todas as imagens do diretório de destino em uma lista de objetos RasterImage. Na próxima etapa, crie uma imagem GIF usando a primeira imagem raster na lista e adicione todas as outras imagens carregadas do disco a essa imagem GIF recém-criada antes de salvá-la no disco.

Código para criar GIF animado em Java

import java.io.File;
import java.io.FilenameFilter;
import com.aspose.imaging.Image;
import com.aspose.imaging.RasterImage;
import com.aspose.imaging.fileformats.gif.GifImage;
import com.aspose.imaging.fileformats.gif.blocks.GifFrameBlock;
import com.aspose.imaging.system.collections.Generic.List;
import com.aspose.imaging.License;
public class CreateAnimatedGifInJava {
public static void main(String[] args) // Main function to create animated GIF
{
// Create and initialize license to avoid trail version limitations
// while creating animated GIF from images
License licCreateAnimatedGif = new License();
licCreateAnimatedGif.setLicense("Aspose.Imaging.lic");
// Get list of all the images of type JPEG and PNG from the target library
File dir = new File("/Users/TestProject/Images");
File[] files = dir.listFiles(new FilenameFilter()
{
public boolean accept(File dir, String name)
{
return (name.toLowerCase().endsWith(".jpg") || name.toLowerCase().endsWith(".png"));
}
});
// Create an empty list of RasterImages
List<RasterImage> mylist = new List<RasterImage>();
// Iterate through all the image files and load them into RasterImage class
// Add each raster image in the list of Rester images declared above
for (File file : files)
{
if (file.isFile())
{
System.out.println(file.getPath());
RasterImage image1 = (RasterImage)Image.load(file.getPath());
mylist.add(image1);
}
}
// Create a GIF image using the first Raster image in the list
GifImage gifImage = new GifImage(new GifFrameBlock(mylist.get(0)));
// Iterate through all the remaining images and add them to the
// newly created GIF image
for(RasterImage img:mylist)
{
try
{
gifImage.addPage(img);
}
catch(Exception ex)
{
System.out.println(ex.getMessage());
}
}
// Save the output GIF file on the disk
gifImage.save("output.gif");
System.out.println("Done");
}
}

Essas linhas de código em Java criam GIF carregando todas as imagens nos objetos da classe RasterImage e fornecem controle para personalizar as imagens carregadas, como ajustar o brilho, contraste, gama, cortar a parte da imagem, filtrar segmentos de área retangular, normalizar ângulos e girando a imagem para citar alguns antes de adicionar à imagem GIF. Da mesma forma, antes de salvar o GIFImage de saída, você pode redimensioná-lo, girar o GIF inteiro, invertê-lo, definir a cor do plano de fundo, definir o tempo do quadro em milissegundos, definir a contagem de loops, definir a cor transparente e muito mais.

Este tutorial nos ensinou a criar uma imagem GIF em Java. Se você estiver interessado em aprender diferentes tipos de conversão, como converter um bitmap em PNG, consulte o artigo em como converter bitmap para PNG em Java.

 Português