Czy kiedykolwiek byłeś w sytuacji, w której chciałeś zapisać lub pobrać obrazy SVG ze strony internetowej lub z aktywnego adresu URL? Skalowalna grafika wektorowa (SVG) to popularny format obrazu używany na stronach internetowych. Obrazy SVG są obrazami wektorowymi, co oznacza, że składają się z obiektów matematycznych, które można skalować do dowolnego rozmiaru bez utraty jakości. Dzięki temu są uniwersalnym i wydajnym formatem do przechowywania i wyświetlania obrazów. W tym poście na blogu omówimy, jak wyodrębnić SVG ze strony internetowej w języku C#.
W tym artykule poruszono następujące tematy:
- C# API do wyodrębnienia SVG ze strony internetowej
- Wyodrębnij plik SVG ze strony internetowej
- Pobierz zewnętrzne obrazy SVG ze strony internetowej
- Darmowe zasoby edukacyjne
API C# do wyodrębniania SVG ze strony internetowej
Będziemy używać Aspose.HTML for .NET do wyodrębniania SVG ze stron internetowych. Umożliwia programistom manipulowanie i przetwarzanie dokumentów HTML. Można go używać do automatyzacji manipulacji, konwersji lub analizy dokumentów HTML w aplikacji .NET. Programiści mogą zaoszczędzić czas i wysiłek, wdrażając gotowe do użycia rozwiązanie do programowej obsługi zadań związanych z HTML. Umożliwia także konwersję stron internetowych i dokumentów HTML do obsługiwanych formatów bez zewnętrznego oprogramowania.
Proszę pobierz bibliotekę DLL interfejsu API lub zainstaluj ją za pomocą NuGet.
PM> Install-Package Aspose.Html
Wyodrębnij SVG ze strony internetowej w C#
Możemy wyodrębnić wszystkie obrazy SVG osadzone za pomocą rozszerzenia <svg>
, wykonując poniższe czynności:
- Załaduj stronę internetową przy użyciu klasy HTMLDocument.
- Odczytaj wszystkie wbudowane obrazy SVG za pomocą metody GetElementsByTagName().
- Na koniec przejrzyj wszystkie obrazy i zapisz w lokalnym systemie plików.
Poniższy przykładowy kod pokazuje, jak wyodrębnić SVG ze strony internetowej w języku C#.
// Poniższy przykładowy kod demonstruje, jak wyodrębnić SVG z witryny internetowej w języku C#.
using Aspose.Html;
string OutputDir = "C:\\Files\\Internal\\";
// Otwórz dokument, z którego chcesz wyodrębnić wbudowane obrazy SVG
using var document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");
// Zbierz wszystkie wbudowane obrazy SVG
var images = document.GetElementsByTagName("svg");
for (var i = 0; i < images.Length; i++)
{
// Zapisz każdy obraz SVG w lokalnym systemie plików
File.WriteAllText(Path.Combine(OutputDir, $"{i}.svg"), images[i].OuterHTML);
}
Pobierz zewnętrzne obrazy SVG ze strony internetowej w języku C#
Możemy wyodrębnić wszystkie obrazy SVG przechowywane poza dokumentem HTML i załadowane do dokumentu, wykonując poniższe kroki:
- Załaduj stronę internetową przy użyciu klasy HTMLDocument.
- Odczytaj wszystkie wbudowane obrazy SVG za pomocą metody GetElementsByTagName().
- Na koniec przejrzyj wszystkie obrazy i zapisz w lokalnym systemie plików.
Poniższy przykładowy kod pokazuje, jak wyodrębnić zewnętrznie osadzony plik SVG z witryny internetowej w języku C#.
using Aspose.Html;
using Aspose.Html.Net;
// Katalog plików
string OutputDir = "C:\\Files\\";
// Otwórz dokument, z którego chcesz wyodrębnić zewnętrzne pliki SVG
using var document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");
// Zbierz wszystkie elementy obrazu
var images = document.GetElementsByTagName("img");
// Utwórz odrębną kolekcję względnych adresów URL obrazów
var urls = images.Select(element => element.GetAttribute("src")).Distinct();
// Odfiltruj obrazy inne niż SVG
var svgUrls = urls.Where(url => url.EndsWith(".svg"));
// Utwórz bezwzględne adresy URL obrazów SVG
var absUrls = svgUrls.Select(src => new Url(src, document.BaseURI));
foreach (var url in absUrls)
{
// Utwórz żądanie wyodrębnienia
using var request = new RequestMessage(url);
// Wyodrębnij plik SVG
using var response = document.Context.Network.Send(request);
// Sprawdź, czy odpowiedź się powiodła
if (response.IsSuccess)
{
// Zapisz obraz SVG w lokalnym systemie plików
File.WriteAllBytes(Path.Combine(OutputDir, url.Pathname.Split('/').Last()), response.Content.ReadAsByteArray());
}
}
Uzyskaj bezpłatną licencję
Możesz uzyskać bezpłatną licencję tymczasową, aby wypróbować Aspose.HTML for .NET bez ograniczeń ewaluacyjnych.
Wyodrębnij plik SVG ze strony internetowej — zasoby edukacyjne
Możesz dowiedzieć się więcej na temat wyodrębniania SVG ze stron internetowych i poznać różne inne funkcje biblioteki, korzystając z poniższych zasobów:
- Przewodnik dewelopera
- Darmowe aplikacje internetowe
- Odniesienie do API
- Poradniki i artykuły z instrukcjami
Wniosek
W tym artykule dowiedzieliśmy się, jak wyodrębnić SVG ze stron internetowych w języku C#. Możliwość wyodrębniania plików SVG ze stron internetowych lub stron internetowych nadaje nowy wymiar cyfrowej kreatywności. Niezależnie od tego, czy chodzi o archiwizację inspirującej grafiki, analizę trendów projektowych, czy udoskonalanie własnych projektów, kroki opisane w tym artykule pokazują, że proces jest stosunkowo prosty i wymaga kilku linijek kodu. W przypadku jakichkolwiek niejasności prosimy o kontakt na naszym bezpłatnym forum pomocy technicznej.