Extrahujte SVG z webu v C#

Byli jste někdy v situaci, kdy jste chtěli uložit nebo stáhnout SVG obrázky z webové stránky nebo ze živé adresy URL? Scalable Vector Graphics (SVG) je populární formát obrázků používaný na webových stránkách. Obrázky SVG jsou vektorové, což znamená, že se skládají z matematických objektů, které lze zmenšit na libovolnou velikost bez ztráty kvality. To z nich dělá všestranný a efektivní formát pro ukládání a zobrazování obrázků. V tomto blogovém příspěvku budeme diskutovat o tom, jak extrahovat SVG z webu v C#.

Tento článek se zabývá následujícími tématy:

  1. C# API pro extrahování SVG z webu
  2. Extrahovat SVG z webu
  3. Stáhnout externí obrázky SVG z webu
  4. Bezplatné výukové zdroje

C# API pro extrahování SVG z webu

K extrahování SVG z webových stránek použijeme Aspose.HTML for .NET. Umožňuje vývojářům manipulovat a zpracovávat HTML dokumenty. Lze jej použít k automatizaci manipulace, převodu nebo analýzy dokumentů HTML v rámci aplikace .NET. Vývojáři mohou ušetřit čas a námahu implementací řešení připraveného k použití pro programové zpracování úloh souvisejících s HTML. Umožňuje také převod HTML webových stránek a dokumentů do podporovaných formátů bez jakéhokoli externího softwaru.

Prosím buď stáhněte si DLL rozhraní API, nebo jej nainstalujte pomocí NuGet.

PM> Install-Package Aspose.Html

Extrahujte SVG z webu v C#

Můžeme extrahovat všechny obrázky SVG, které jsou vložené pomocí <svg> podle následujících kroků:

  1. Načtěte webovou stránku pomocí třídy HTMLDocument.
  2. Čtěte všechny vložené obrázky SVG pomocí metody GetElementsByTagName().
  3. Nakonec projděte všechny obrázky a uložte je do místního systému souborů.

Následující ukázka kódu ukazuje, jak extrahovat SVG z webu v C#.

// Následující ukázka kódu ukazuje, jak extrahovat SVG z webu v C#.
using Aspose.Html;

string OutputDir = "C:\\Files\\Internal\\";

// Otevřete dokument, ze kterého chcete extrahovat vložené obrázky SVG
using var document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");

// Sbírejte všechny vložené obrázky SVG
var images = document.GetElementsByTagName("svg");

for (var i = 0; i < images.Length; i++)
{
    // Uložte každý obrázek SVG do místního systému souborů
    File.WriteAllText(Path.Combine(OutputDir, $"{i}.svg"), images[i].OuterHTML);
}
Extrahujte SVG z webu v C#

Extrahujte SVG z webu v C#

Stáhněte si externí obrázky SVG z webu v C#

Můžeme extrahovat všechny obrázky SVG, které jsou uloženy mimo dokument HTML a načteny do dokumentu, podle následujících kroků:

  1. Načtěte webovou stránku pomocí třídy HTMLDocument.
  2. Čtěte všechny vložené obrázky SVG pomocí metody GetElementsByTagName().
  3. Nakonec projděte všechny obrázky a uložte je do místního systému souborů.

Následující ukázka kódu ukazuje, jak extrahovat externě vložené SVG z webu v C#.

using Aspose.Html;
using Aspose.Html.Net;

// Adresář souborů
string OutputDir = "C:\\Files\\";

// Otevřete dokument, ze kterého chcete extrahovat externí soubory SVG
using var document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");

// Sbírejte všechny obrazové prvky
var images = document.GetElementsByTagName("img");

// Vytvořte samostatnou sbírku relativních adres URL obrázků
var urls = images.Select(element => element.GetAttribute("src")).Distinct();

// Odfiltrujte obrázky jiné než SVG
var svgUrls = urls.Where(url => url.EndsWith(".svg"));

// Vytvořte absolutní adresy URL obrázků SVG
var absUrls = svgUrls.Select(src => new Url(src, document.BaseURI));

foreach (var url in absUrls)
{
    // Vytvořte žádost o extrahování
    using var request = new RequestMessage(url);

    // Extrahujte SVG
    using var response = document.Context.Network.Send(request);

    // Zkontrolujte, zda je odpověď úspěšná
    if (response.IsSuccess)
    {
        // Uložte obrázek SVG do místního systému souborů
        File.WriteAllBytes(Path.Combine(OutputDir, url.Pathname.Split('/').Last()), response.Content.ReadAsByteArray());
    }
}

Získejte bezplatnou licenci

Můžete získat bezplatnou dočasnou licenci a vyzkoušet Aspose.HTML for .NET bez omezení hodnocení.

Extrahujte SVG z webu – výukové zdroje

Můžete se dozvědět více o extrahování SVG z webových stránek a prozkoumat různé další funkce knihovny pomocí zdrojů níže:

Závěr

V tomto článku jsme se naučili, jak extrahovat SVG z webových stránek v C#. Schopnost extrahovat SVG z webových stránek nebo webových stránek přináší nový rozměr digitální kreativitě. Ať už se jedná o archivaci inspirativní grafiky, analýzu návrhových trendů nebo vylepšení vašich vlastních projektů, kroky popsané v tomto článku ukazují, jak je tento proces relativně jednoduchý a vyžaduje několik řádků kódu. V případě jakýchkoliv nejasností nás prosím neváhejte kontaktovat na našem bezplatném fóru podpory.

Viz také