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.