Ao trabalhar com galerias de imagens, relatórios ou materiais de marketing, simplesmente misturar imagens muitas vezes pode levar a confusão visual. Adicionar fronteiras e rótulos melhora a clareza e o profissionalismo, separando imagens claramente e fornecendo contexto como datas ou informações de produto. Este post de blog irá guiá-lo através do processo de mistura das imagens com limites personalizados e etiquetas de texto usando Aspose.Imaging para .NET.

Introdução

Aspose.Imaging para .NET é uma poderosa biblioteca que simplifica as tarefas de processamento de imagem, incluindo a fusão de várias imagens em uma única imagem composta. Ao aproveitar a sua API de gráficos, os desenvolvedores podem facilmente adicionar limites em torno de cada imagem combinada e sobrecarregar texto personalizado para fornecer contexto ou informação adicional.

Este tutorial irá guiá-lo através do processo de configurar o seu ambiente de desenvolvimento, preparando imagens para fusão, criando uma imagem composta com fronteiras e rótulos, e salvando o resultado final.

Pré-requisitos

Antes de mergulhar nos exemplos de código, certifique-se de que você tem os seguintes requisitos:

  • Visual Studio 2019 ou posterior

  • .NET 6.0 ou posterior (ou .Net Framework 4.6.2+)

  • Aspose.Imaging para .NET instalado através do NuGet Package Manager

PM> Install-Package Aspose.Imaging
  • Um conjunto de imagens para fusão e anotação

Implementação passo a passo

Passo 1: A configuração inicial

Primeiro, precisamos iniciar a licença medida e carregar os nossos arquivos de entrada.

// Initialize metered license
Metered metered = new Metered();
metered.SetMeteredKey("your-public-key", "your-private-key");

using (Image image1 = Image.Load("path/to/image1.jpg"))
{
    // Load additional images as needed
}

Passo 2: Configurar o tamanho de saída

Em seguida, calculamos o tamanho de saída com base no número de imagens e no layout desejado.

int width = image1.Width + borderThickness * 2; // Width including borders
int height = image1.Height + borderThickness * 2; // Height including borders

// Calculate total output dimensions based on number of images and layout (horizontal/vertical)

Passo 3: Criar a imagem compacta

Criamos uma instância de Image com o tamanho calculado, em seguida, desenhar cada imagem fonte sobre ele.

using (Image composite = Image.Create(new JpegOptions(), width * numberOfImages, height))
{
    using (Graphics graphics = new Graphics(composite))
    {
        // Draw images and borders
    }
}

Passo 4: Adicionar fronteiras a cada imagem

Usando o Graphics Classe, nós desenhamos uma fronteira em torno de cada imagem.

graphics.DrawRectangle(new Pen(borderColor), x, y, width - borderThickness * 2, height - borderThickness * 2);

Passo 5: Overlay Custom Text Label

Finalmente, adicionamos rótulos de texto personalizados para fornecer contexto ou informações adicionais para cada imagem.

Font font = new Font("Arial", fontSize);
SolidBrush brush = new SolidBrush(textColor);

graphics.DrawString(labelText, font, brush, x + borderThickness, y + height - borderThickness * 2);

Passo 6: Salvar a imagem composta final

Uma vez que todas as imagens são misturadas e anotadas, salvo a imagem composta em um arquivo.

composite.Save("path/to/output.jpg");

Sinta-se livre para experimentar com diferentes layouts, estilos de fronteira e opções de letra para alcançar o efeito visual desejado em suas imagens compostas.

More in this category