Chuyển đổi SVG thành hình ảnh

Trong bài viết này, tôi sẽ chỉ cho bạn cách chuyển đổi các tệp SVG sang PNG, JPEG, TIFF và các định dạng hình ảnh raster phổ biến khác bằng C# với Aspose’s .NET SVG API.

Aspose.SVG cho .NET là một API mạnh mẽ để xử lý các tệp SVG bằng C# hoặc VB.NET. Nó cho phép bạn tải, phân tích cú pháp và chuyển đổi các tệp SVG sang nhiều định dạng tệp khác. Trong bài viết này, chúng ta sẽ tận dụng các khả năng của API trình chuyển đổi của Aspose.SVG cho .NET và tìm hiểu cách thực hiện các chuyển đổi SVG sau:

C# SVG to Image Converter - Cài đặt

Aspose.SVG cho .NET được lưu trữ trên NuGet và có thể dễ dàng cài đặt bằng Trình quản lý gói NuGet. Ngoài ra, bạn có thể tải xuống DLL của API từ phần Tải xuống.

Chuyển đổi SVG sang PNG bằng C#

PNG là một định dạng hình ảnh phổ biến vì khả năng nén không mất dữ liệu của nó. Bạn có thể chọn chuyển đổi SVG sang PNG trong trường hợp bạn muốn hình ảnh có độ phân giải cao mà không làm giảm chất lượng. Sau đây là các bước để thực hiện chuyển đổi SVG sang PNG bằng Aspose.SVG cho .NET.

Mẫu mã sau đây cho biết cách chuyển đổi SVG sang PNG bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    using (var device = new ImageDevice(new ImageRenderingOptions(ImageFormat.Png), dataDir + "smiley_out.png"))
    {
        document.RenderTo(device);
    }
}

Chuyển đổi hình ảnh SVG sang JPEG bằng C#

Chuyển đổi định dạng SVG sang JPEG rất hữu ích khi bạn cần nén hình ảnh để giảm kích thước tệp. JPEG hỗ trợ nén mất dữ liệu dẫn đến bạn làm giảm chất lượng của hình ảnh. Ở đây, độ nén cao hơn có nghĩa là chất lượng hình ảnh thấp hơn. Sau đây là các bước để xuất tệp SVG thành ảnh JPEG.

Mẫu mã sau đây chuyển đổi tệp SVG thành hình ảnh JPEG trong C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    using (var device = new ImageDevice(new ImageRenderingOptions(ImageFormat.Jpeg), dataDir + "smiley_out.jpg"))
    {
        document.RenderTo(device);
    }
}

Chuyển đổi SVG sang BMP bằng C#

Định dạng BMP đã được sử dụng từ lâu để thể hiện kỹ thuật số của hình ảnh. BMP được biết đến là định dạng không phụ thuộc vào thiết bị, mở được trên nhiều nền tảng như Windows, Mac,… Sau đây là các bước thực hiện chuyển đổi SVG sang BMP bằng Aspose.SVG for .NET.

  • Sử dụng SVGDDocument để tải tệp SVG mà bạn muốn chuyển đổi.
  • Sử dụng lớp ImageDevice để chỉ định định dạng đầu ra và đường dẫn của tệp.
  • Kết xuất SVG dưới dạng BMP bằng phương thức SVGDocument.RenderTo(ImageDevice).

Mẫu mã sau đây cho biết cách lưu SVG dưới dạng BMP bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    using (var device = new ImageDevice(new ImageRenderingOptions(ImageFormat.Bmp), dataDir + "smiley_out.bmp"))
    {
        document.RenderTo(device);
    }
}

Chuyển đổi SVG sang TIFF bằng C#

TIFF là một định dạng phổ biến khác dành cho hình ảnh kỹ thuật số hỗ trợ cả nén mất dữ liệu và không mất dữ liệu. Nó phổ biến hơn trong giới nghệ sĩ đồ họa, các ngành công nghiệp cũng như nhiếp ảnh gia để tạo ra hình ảnh có độ phân giải/chất lượng cao. Sau đây là các bước để chuyển đổi SVG sang TIFF.

Mẫu mã sau đây cho biết cách hiển thị tệp SVG dưới dạng hình ảnh TIFF bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    using (var device = new ImageDevice(new ImageRenderingOptions(ImageFormat.Tiff), dataDir + "smiley_out.tiff"))
    {
        document.RenderTo(device);
    }
}

Chuyển đổi SVG sang GIF bằng C#

GIF là một định dạng hình ảnh raster khác cũng hỗ trợ các tính năng nén cao. Một trong những trường hợp sử dụng phổ biến của ảnh GIF là hiển thị hoạt ảnh được tạo bằng cách kết hợp nhiều ảnh vào một tệp GIF. Sau đây là các bước để chuyển đổi tệp SVG thành ảnh GIF.

  • Tạo một phiên bản của lớp SVGDDocument để tải tệp SVG nguồn.
  • Sử dụng lớp ImageDevice để chỉ định định dạng của hình ảnh đầu ra và đường dẫn của nó.
  • Lưu SVG dưới dạng GIF bằng phương pháp SVGDDocument.RenderTo(ImageDevice).

Mẫu mã sau minh họa chuyển đổi SVG sang GIF bằng C#.

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập https://github.com/aspose-svg/Aspose.SVG-for-.NET
string dataDir = RunExamples.GetDataDir_Data();

using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    using (var device = new ImageDevice(new ImageRenderingOptions(ImageFormat.Gif), dataDir + "smiley_out.gif"))
    {
        document.RenderTo(device);
    }
}

Sự kết luận

Trong bài viết này, bạn đã học cách xuất các tệp SVG sang các định dạng hình ảnh phổ biến bằng C#. Hướng dẫn từng bước và các mẫu mã minh họa cách chuyển đổi SVG sang hình ảnh PNG, JPEG, BMP, TIFF và GIF. Bạn có thể tìm hiểu thêm về thư viện C# SVG bằng tài liệu.

Xem thêm

Mẹo: Bạn có thể muốn xem dịch vụ Aspose Chuyển văn bản thành GIF cho phép bạn tạo hoạt ảnh đẹp mắt chỉ bằng cách nhập.