Ekstrak SVG dari Situs Web di C#

Pernahkah Anda berada dalam situasi di mana Anda ingin menyimpan atau mendownload gambar SVG dari halaman web atau dari URL aktif? Scalable Vector Graphics (SVG) adalah format gambar populer yang digunakan pada halaman web. Gambar SVG berbasis vektor, artinya gambar tersebut terdiri dari objek matematika yang dapat diskalakan ke ukuran apa pun tanpa kehilangan kualitas. Hal ini menjadikannya format yang serbaguna dan efisien untuk menyimpan dan menampilkan gambar. Dalam postingan blog kali ini, kita akan membahas cara mengekstrak SVG dari situs web dalam C#.

Artikel ini mencakup topik-topik berikut:

  1. C# API untuk Mengekstrak SVG dari Situs Web
  2. Ekstrak SVG dari Situs Web
  3. Unduh Gambar SVG Eksternal dari situs web
  4. Sumber Belajar Gratis

C# API untuk Mengekstrak SVG dari Situs Web

Kami akan menggunakan Aspose.HTML for .NET untuk mengekstraksi SVG dari situs web. Hal ini memungkinkan pengembang untuk memanipulasi dan memproses dokumen HTML. Ini dapat digunakan untuk mengotomatiskan manipulasi, konversi, atau analisis dokumen HTML dalam aplikasi .NET. Pengembang dapat menghemat waktu dan tenaga dengan menerapkan solusi siap pakai untuk menangani tugas terkait HTML secara terprogram. Ini juga memungkinkan konversi halaman web dan dokumen HTML ke format yang didukung tanpa perangkat lunak eksternal apa pun.

Silakan unduh DLL API atau instal menggunakan NuGet.

PM> Install-Package Aspose.Html

Ekstrak SVG dari Situs Web di C#

Kita dapat mengekstrak semua gambar SVG yang disematkan menggunakan file <svg> elemen dengan mengikuti langkah-langkah di bawah ini:

  1. Muat halaman web menggunakan kelas HTMLDocument.
  2. Baca semua gambar SVG sebaris menggunakan metode GetElementsByTagName().
  3. Terakhir, ulangi semua gambar dan simpan ke sistem file lokal.

Contoh kode berikut menunjukkan cara mengekstrak SVG dari situs web di C#.

// Contoh kode berikut menunjukkan cara mengekstrak SVG dari situs web di C#.
using Aspose.Html;

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

// Buka dokumen yang ingin Anda ekstrak gambar SVG sebarisnya
using var document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");

// Kumpulkan semua gambar SVG sebaris
var images = document.GetElementsByTagName("svg");

for (var i = 0; i < images.Length; i++)
{
    // Simpan setiap gambar SVG ke sistem file lokal
    File.WriteAllText(Path.Combine(OutputDir, $"{i}.svg"), images[i].OuterHTML);
}
Ekstrak SVG dari Situs Web di C#

Ekstrak SVG dari Situs Web di C#

Unduh Gambar SVG Eksternal dari situs web dalam C#

Kita dapat mengekstrak semua gambar SVG yang disimpan di luar dokumen HTML dan dimuat ke dalam dokumen dengan mengikuti langkah-langkah di bawah ini:

  1. Muat halaman web menggunakan kelas HTMLDocument.
  2. Baca semua gambar SVG sebaris menggunakan metode GetElementsByTagName().
  3. Terakhir, ulangi semua gambar dan simpan ke sistem file lokal.

Contoh kode berikut menunjukkan cara mengekstrak SVG yang disematkan secara eksternal dari situs web di C#.

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

// Direktori file
string OutputDir = "C:\\Files\\";

// Buka dokumen tempat Anda ingin mengekstrak SVG eksternal
using var document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");

// Kumpulkan semua elemen gambar
var images = document.GetElementsByTagName("img");

// Buat kumpulan URL gambar relatif yang berbeda
var urls = images.Select(element => element.GetAttribute("src")).Distinct();

// Filter gambar non SVG
var svgUrls = urls.Where(url => url.EndsWith(".svg"));

// Buat URL gambar SVG absolut
var absUrls = svgUrls.Select(src => new Url(src, document.BaseURI));

foreach (var url in absUrls)
{
    // Buat permintaan ekstraksi
    using var request = new RequestMessage(url);

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

    // Periksa apakah respons berhasil
    if (response.IsSuccess)
    {
        // Simpan gambar SVG ke sistem file lokal
        File.WriteAllBytes(Path.Combine(OutputDir, url.Pathname.Split('/').Last()), response.Content.ReadAsByteArray());
    }
}

Dapatkan Lisensi Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk mencoba Aspose.HTML for .NET tanpa batasan evaluasi.

Ekstrak SVG dari Situs Web – Sumber Belajar

Anda dapat mempelajari lebih lanjut tentang mengekstrak SVG dari situs web dan menjelajahi berbagai fitur perpustakaan lainnya menggunakan sumber daya di bawah ini:

Kesimpulan

Pada artikel ini, kita mempelajari cara mengekstrak SVG dari situs web di C#. Kemampuan untuk mengekstrak SVG dari situs web atau halaman web membawa dimensi baru pada kreativitas digital. Baik untuk mengarsipkan grafik yang menginspirasi, menganalisis tren desain, atau menyempurnakan proyek Anda sendiri, langkah-langkah yang diuraikan dalam artikel ini menunjukkan bagaimana prosesnya relatif sederhana dan memerlukan beberapa baris kode. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di forum dukungan gratis kami.

Lihat juga