Wtyczka Image Merger Plugin for .NET od Aspose.Imaging upraszcza zadanie programowego łączenia obrazów, zarówno poziomo, jak i pionowo, bez jakiejkolwiek utraty jakości. Ta wtyczka, zaprojektowana z myślą o programistach, obsługuje szeroki zakres formatów i pozwala użytkownikom na łatwe tworzenie oszałamiających kolaży zdjęciowych. W tym artykule nauczysz się, jak programowo łączyć lub scalać wiele obrazów w C#.
Omówione tematy:
C# API do scalania obrazów
Aby programowo łączyć obrazy w C#, użyjemy Aspose.Imaging for .NET, wydajnej biblioteki przetwarzania obrazów .NET do scalania. To wysokowydajne API do scalania obrazów .NET umożliwia precyzyjne manipulacje obrazami i obsługuje scalanie obrazów w różnych formatach. Możesz łatwo zintegrować API ze swoimi projektami .NET, pobierając wtyczkę lub instalując ją za pomocą NuGet.
PM> Install-Package Aspose.Imaging
Informacja: Inne API od Aspose, zwłaszcza Aspose.Slides for .NET, mogą również pozwalać na scalanie obrazów (JPG lub PNG), PDFów, dokumentów HTML oraz plików w innych formatach.
Scalanie wielu obrazów w C#
Istnieją dwa sposoby na połączenie obrazów w jeden: pionowe konkatenowanie obrazów i poziome konkatenowanie obrazów. W pionowym konkatenowaniu obrazy są dodawane do siebie w pionie, podczas gdy w poziomym łączeniu obrazy są zestawiane jeden po drugim w poziomie. W poniższych sekcjach poznasz obie metody z przykładami kodu.
Scalać obrazy pionowo
Poniżej przedstawione są kroki, aby scalać obrazy pionowo w C#.
- Najpierw określ ścieżki obrazów w tablicy stringów.
- Następnie, utwórz listę Size i przechowuj w niej rozmiar każdego obrazu.
- Oblicz wysokość i szerokość powstałego obrazu.
- Utwórz obiekt klasy StreamSource i zainicjalizuj go nowym MemoryStream.
- Utwórz obiekt klasy JpegOptions i ustaw jego opcje.
- Zainstancjuj klasę JpegImage dla nowego obrazu i zainicjalizuj ją za pomocą JpegOptions oraz obliczonej wysokości i szerokości.
- Iteruj przez listę obrazów i w każdej iteracji załaduj obraz do obiektu RasterImage.
- Utwórz Rectangle dla każdego obrazu i dodaj go do nowego obrazu za pomocą metody JpegImage.SaveArgb32Pixels().
- Zwiększ wysokość sklejonego obrazu w każdej iteracji.
- Na koniec, zapisz nowy obraz za pomocą metody JpegImage.Save(string).
Poniższy przykład kodu pokazuje, jak scalać obrazy pionowo w C#.
Łączyć obrazy poziomo
Poniżej przedstawione są kroki, aby łączyć obrazy poziomo w C#.
- Najpierw określ ścieżki obrazów w tablicy stringów.
- Następnie, utwórz listę Size i przechowuj w niej rozmiar każdego obrazu.
- Oblicz wysokość i szerokość powstałego obrazu.
- Utwórz nowe źródło używając FileCreateSource(String, Boolean) i zainicjalizuj je ścieżką pliku.
- Utwórz obiekt klasy JpegOptions i ustaw jego opcje.
- Zainstancjuj klasę JpegImage dla nowego obrazu i zainicjalizuj ją za pomocą JpegOptions oraz obliczonej wysokości i szerokości.
- Iteruj przez listę obrazów i w każdej iteracji załaduj obraz do obiektu RasterImage.
- Utwórz Rectangle dla każdego obrazu i dodaj go do nowego obrazu za pomocą metody JpegImage.SaveArgb32Pixels().
- Zwiększ szerokość sklejonego obrazu w każdej iteracji.
- Gdy skończone, zapisz nowy obraz za pomocą metody JpegImage.Save(string).
Poniższy przykład kodu pokazuje, jak scalać wiele obrazów poziomo w C#.
C# API do scalania obrazów - Otrzymaj darmową licencję
Możesz uzyskać darmową tymczasową licencję i scalać obrazy bez ograniczeń ewaluacyjnych.
Podsumowanie
W tym artykule nauczyłeś się, jak programowo scalać obrazy w jeden obraz przy użyciu C#. Przykłady kodu pokazały, jak programowo łączyć obrazy zarówno pionowo, jak i poziomo. Dodatkowo, możesz odkryć więcej na temat biblioteki przetwarzania obrazów .NET do scalania korzystając z dokumentacji. Możesz również dzielić się swoimi pytaniami z nami za pośrednictwem naszego forum.
Zobacz także
- Konwertuj obrazy do odcieni szarości w C#
- Dodaj znak wodny do obrazów przy użyciu C#
- Kompresuj obrazy PNG, JPEG i TIFF przy użyciu C#
Informacja: Aspose oferuje DARMOWĄ aplikację webową do kolażu. Korzystając z tej usługi online, możesz scalać JPG do JPG lub PNG do PNG, tworzyć siatki zdjęciowe itd.