Como mesclar JPG para JPG em C#

Como mesclar JPG para JPG em C#

Vamos desenvolver uma fusão JPG para JPG usando esta imagem C# biblioteca. Há muitos cenários em que você precisa mesclar várias imagens em um único arquivo de imagem. Assim, automatizar todo esse processo dará ao seu software de negócios uma vantagem competitiva. Portanto, nesta postagem do blog, aprenderemos como mesclar JPG para JPG em C# usando os métodos expostos por esta poderosa biblioteca. No final deste artigo, você poderá escrever trechos de código para obter essa funcionalidade.

As seguintes seções serão abordadas neste guia:

Instalação da biblioteca de imagens C#

A melhor parte é que você pode instalar essa biblioteca de nível empresarial facilmente. No entanto, baixe sua DLL ou instale-a executando o seguinte comando no gerenciador de pacotes NuGet.

Install-Package Aspose.Imaging

Como mesclar JPG para JPG em C#

Até agora, você instalou esta biblioteca de imagens C# em seu aplicativo .NET. Portanto, você está pronto para começar a escrever código para criar uma fusão JPG para JPG programaticamente.

Siga as etapas e os trechos de código mencionados abaixo:

  1. Chame a propriedade Size para obter o tamanho da imagem resultante.
  2. Faça um loop pelos caminhos da imagem, carregue a imagem uma a uma invocando o método Load da classe Image e adicione à lista imageSizes.
  3. Calcule a largura e a altura da imagem.
  4. Inicialize uma nova instância da classe FileCreateSource.
  5. Crie um novo objeto da classe JpegOptions.
  6. Invoque o método Create que cria uma nova imagem usando as opções de criação especificadas.
  7. Faça um loop pelas imagens, carregue as imagens chamando o método Load.
  8. Inicialize uma nova instância da estrutura Rectangle com o local e o tamanho especificados.
  9. Invoque o método SaveArgb32Pixels para salvar os pixels ARGB de 32 bits.
  10. Chame o método Save para salvar os dados da imagem no fluxo especificado no formato de arquivo especificado de acordo com as opções de salvamento.

Copie e cole o seguinte código em seu arquivo principal:

using Aspose.Imaging;
using Aspose.Imaging.FileFormats.Jpeg;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.Sources;
string[] imagePaths = {"image.jpg", "image.jpg" };
string outputPath =   "result1.jpg";
string tempFilePath = "temp.jpg";
// Chame a propriedade Size para obter o tamanho da imagem resultante. 
List<Size> imageSizes = new List<Size>();
// Faça um loop pelos caminhos da imagem, carregue a imagem uma a uma invocando o método Load da classe Image e adicione à lista imageSizes.
foreach (string imagePath in imagePaths)
{
    using (RasterImage image = (RasterImage)Image.Load(imagePath))
    {
        imageSizes.Add(image.Size);
    }
}
// Calcule a largura e a altura da imagem. 
int newWidth = imageSizes.Sum(size => size.Width);
int newHeight = imageSizes.Max(size => size.Height);
// Inicialize uma nova instância da classe FileCreateSource. 
Source tempFileSource = new FileCreateSource(tempFilePath, isTemporal: true);
// Crie um novo objeto da classe JpegOptions  
JpegOptions options = new JpegOptions() { Source = tempFileSource, Quality = 100 };
// Invoque o método Create que cria uma nova imagem usando as opções de criação especificadas. 
using (JpegImage newImage = (JpegImage)Image.Create(options, newWidth, newHeight))
{
    // Faça um loop pelas imagens, carregue as imagens chamando o método Load. 
    int stitchedWidth = 0;
    foreach (string imagePath in imagePaths)
    {
        using (RasterImage image = (RasterImage)Image.Load(imagePath))
        {
            // Inicialize uma nova instância da estrutura Rectangle com o local e o tamanho especificados. 
            Rectangle bounds = new Rectangle(stitchedWidth, 0, image.Width, image.Height);
            // Invoque o método SaveArgb32Pixels para salvar os pixels ARGB de 32 bits.
            newImage.SaveArgb32Pixels(bounds, image.LoadArgb32Pixels(image.Bounds));
            stitchedWidth += image.Width;
        }
    }
    // Chame o método Save para salvar os dados da imagem no fluxo especificado no formato de arquivo especificado de acordo com as opções de salvamento. 
    newImage.Save(outputPath);
}

Você pode ver a saída na imagem abaixo:

Fusão de JPG para JPG

Obtenha uma licença gratuita

Você pode aproveitar uma licença temporária gratuita para experimentar a API sem limitações de avaliação.

Resumindo

Este é o fim desta postagem no blog. Você aprendeu como mesclar JPG para JPG em C# usando esta biblioteca de imagens C#. Além disso, você pode criar uma fusão de JPG para JPG para seu aplicativo de negócios programaticamente. Além disso, não deixe de visitar a documentação para conhecer outros recursos interessantes.

Além disso, sugerimos que você siga nosso Guia de primeiros passos.

Finalmente, conholdate.com está escrevendo novas postagens no blog. Portanto, por favor, fique em contato para atualizações regulares.

Faça uma pergunta

Você pode nos informar sobre suas perguntas ou dúvidas em nosso fórum.

Perguntas frequentes

Como combino arquivos JPG em um JPG?

Invoque o método Load, crie uma instância da classe JpegOptions e invoque o método Save para salvar o arquivo. Além disso, você pode visitar este link para conhecer o trecho de código completo escrito em C#.

Como combino arquivos JPEG em um documento?

Você pode aproveitar esta imagem C# biblioteca para combinar arquivos de imagem JPEG/JPG em um documento programaticamente.

Veja também