SVG(Scalable Vector Graphics) là một định dạng hình ảnh vectơ cho đồ họa hai chiều. Những hình ảnh này dựa trên định dạng XML cho phép bạn đi qua các nút khác nhau để chỉnh sửa hoặc tìm kiếm nội dung tệp một cách dễ dàng. Bạn có thể tải, lưu hoặc hợp nhất các tệp hình ảnh SVG theo chương trình trong C#. Tương tự như vậy, một số tính năng khác liên quan đến hình ảnh SVG cho phép các ứng dụng dựa trên .NET của bạn xử lý một số định dạng tệp được hỗ trợ. Hãy cùng chúng tôi khám phá các phần sau để biết thêm thông tin:
- Cài đặt C# .NET SVG API
- Tải tệp SVG theo chương trình bằng C#
- Lưu tệp SVG theo chương trình trong C#
- Hợp nhất hình ảnh SVG theo chương trình với C#
Cài đặt C# .NET SVG API
API Aspose.SVG cho .NET hỗ trợ tạo, chỉnh sửa hoặc chuyển đổi tệp SVG. Bạn có thể tải xuống tệp DLL dưới dạng ZIP từ Tải xuống chính thức và thêm tệp đó vào tài nguyên của dự án của bạn. Hơn nữa, bạn cũng có thể cấu hình nó thông qua NuGet Package Manager trong Microsoft Visual Studio. Nó sẽ cài đặt API từ NuGet gallery cùng với các phụ thuộc khác, nếu có. Dưới đây là lệnh cài đặt NuGet:
PM> Install-Package Aspose.SVG
Tải tệp SVG theo chương trình bằng C#
Trong khi bắt đầu công việc với các ảnh SVG hiện có, bước đầu tiên chúng ta cần làm là tải tệp đầu vào. Bạn có thể tải tệp SVG theo chương trình từ tệp cũng như từ web. Các bước dưới đây cho biết cách tải tệp SVG:
- Chỉ định đường dẫn tệp để nhập SVG
- HOẶC chỉ định URL để tải hình ảnh SVG
- Tải tài liệu SVG từ một tệp hoặc URL
Đoạn mã sau đây cho biết cách tải tệp SVG theo chương trình bằng C#:
// Chỉ định đường dẫn tệp để nhập SVG
string document = Path.Combine(dataDir, "QBezier.svg");
// HOẶC chỉ định URL để tải hình ảnh SVG
var documentUrl = new Url("https://docs.aspose.com/svg/net/drawing-basics/svg-path-data/owl.svg");
// Tải tài liệu SVG từ một tệp hoặc URL
var document = new SVGDocument(document)
Tuy nhiên, điều quan trọng cần lưu ý ở đây là API có thể ném DOMException nếu tài nguyên không được tìm thấy tại URL đã chỉ định.
Lưu tệp SVG theo chương trình trong C#
Chúng tôi đã học cách tải tệp SVG. Tương tự như vậy, bạn có thể lưu tệp SVG vào một tệp hoặc URL. Các bước sau giải thích cách lưu tệp SVG trong các ứng dụng dựa trên .NET của bạn:
- Đặt một đường dẫn đầy đủ (hoàn chỉnh) để lưu tài liệu SVG
- Lưu SVG vào một tệp
- Hoặc Lưu SVG vào Url
Phương thức nạp chồng Save (Url) Lưu tài liệu vào một tệp cục bộ do Url chỉ định. Đoạn mã sau cho biết cách lưu tệp SVG bằng C#:
// Đặt một đường dẫn đầy đủ (hoàn chỉnh) để lưu tài liệu SVG
var url = new Url(Path.Combine(OutputDir, "Lineto_out.svg"), Directory.GetCurrentDirectory());
// Lưu SVG vào một tệp
document.Save(documentPath);
// HOẶC Lưu SVG vào Url
document.Save(url);
Hợp nhất hình ảnh SVG theo chương trình với C#
Bạn có thể hợp nhất các tệp SVG khác nhau thành PDF, XPS, JPG, TIFF và các định dạng tệp khác. Bạn cần làm theo các bước sau để hợp nhất các hình ảnh SVG khác nhau:
- Tải nhiều tệp đầu vào SVG
- Khởi tạo một phiên bản của SvgRenderer
- Hợp nhất tất cả các tệp SVG thành định dạng đầu ra được yêu cầu
Đoạn mã dưới đây là một ví dụ về cách hợp nhất các tệp SVG theo cách lập trình bằng C#:
// Khởi tạo tài liệu SVG từ các tệp để hợp nhất sau
using (var document1 = new SVGDocument(Path.Combine(DataDir, "owl.svg")))
using (var document2 = new SVGDocument(Path.Combine(DataDir, "conclusion.svg")))
using (var document3 = new SVGDocument(Path.Combine(DataDir, "Lineto.svg")))
{
// Tạo một phiên bản của SvgRenderer
using (var renderer = new SvgRenderer())
{
// Tạo một phiên bản của PdfDevice
using (var device = new PdfDevice(Path.Combine(OutputDir, "result.pdf")))
{
// Hợp nhất tất cả các tài liệu SVG thành PDF
renderer.Render(device, document1, document2, document3);
}
}
}
Sự kết luận
Trong bài viết này, chúng tôi đã khám phá cách tải và lưu tệp SVG vào một tệp hoặc URL theo yêu cầu của bạn. Hơn nữa, chúng tôi đã khám phá cách hợp nhất các tệp SVG khác nhau thành PDF, XPS, PNG, JPG, v.v. Tuy nhiên, ví dụ và đoạn mã mà chúng tôi đã xem xét ở đây có liên quan đến việc hợp nhất các tệp SVG thành tài liệu PDF. Bạn có thể khám phá thêm về API bằng cách xem Dự án mẫu cũng như Tài liệu sản phẩm. Trong trường hợp có bất kỳ thắc mắc nào, bạn luôn có thể liên hệ với chúng tôi tại Diễn đàn hỗ trợ miễn phí. Chúng tôi mong được liên lạc với bạn!