Podczas pracy z galeriami zdjęć, raportami lub materiałami marketingowymi, po prostu łączenie obrazów może często prowadzić do zdezorientowania wizualnego. Dodanie granic i etykiet zwiększa jasność i profesjonalizm poprzez wyraźne oddzielenie obrazu i dostarczanie kontekstu, takich jak daty lub informacje o produkcie.

Wprowadzenie

Aspose.Imaging for .NET to potężna biblioteka, która upraszcza zadania przetwarzania obrazu, w tym łączenie wielu obrazów w jeden kompozytowy obraz. Korzystając z jego API Graphics, deweloperzy mogą łatwo dodać granice wokół każdego mieszanego zdjęcia i przepłukać przystosowany tekst, aby zapewnić dodatkowy kontekst lub informacje.

Ten tutorial przejdzie Cię przez proces ustawienia środowiska rozwoju, przygotowywania obrazów do połączenia, tworzenia kompozytowego obrazu z granicami i etykietami oraz oszczędzania ostatecznego wyniku.

Warunki

Przed zanurzeniem się w przykłady kodu upewnij się, że masz następujące warunki:

  • Wizual Studio 2019 lub później

  • .NET 6.0 lub nowszy (lub .Net Framework 4.6.2+)

  • Aspose.Imaging dla .NET zainstalowany za pośrednictwem NuGet Package Manager

PM> Install-Package Aspose.Imaging
  • Zestaw zdjęć do połączenia i notowania

Wdrażanie krok po kroku

Krok 1: Początkowe ustawienie

Najpierw musimy inicjalizować licencję mierzoną i pobrać nasze pliki wejściowe.

// 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
}

Krok 2: Konfiguracja rozmiaru wyjścia

Następnie obliczamy rozmiar wyjścia na podstawie liczby obrazów i pożądanej aranżacji.

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)

Krok 3: Tworzenie kompozytowego obrazu

Stworzymy instancję Image z obliczoną wielkością, a następnie wciśnij na nią każdy obraz źródłowy.

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

Krok 4: Dodaj granice do każdego obrazu

Korzystając z Graphics Klasy, rysujemy granicę wokół każdego obrazu.

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

Krok 5: Przegląd etykiet tekstowych

Wreszcie dodajemy indywidualne etykiety tekstowe, aby zapewnić dodatkowy kontekst lub informacje dla każdego obrazu.

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

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

Krok 6: Utrzymanie ostatecznego obrazu kompozytowego

Gdy wszystkie obrazy są łączone i notowane, zapisujemy kompozytowy obraz do pliku.

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

Czuj się wolny do eksperymentu z różnymi układami, stylami granicznymi i opcjami czcionek, aby osiągnąć pożądany efekt wizualny w kompozytowych obrazach.

More in this category