XPS OXPS sang PNG JPG Hình ảnh C#

Định dạng tệp XPS thường được sử dụng trong các ứng dụng xử lý tệp. Bạn có thể chuyển đổi hình ảnh XPS hoặc OXPS sang JPG hoặc PNG theo chương trình bằng C# hoặc VB.NET trong các ứng dụng dựa trên .NET framework của mình. Hãy để chúng tôi xem qua các tình huống sau để tìm hiểu thêm về chuyển đổi XPS:

API chuyển đổi hình ảnh XPS, OXPS sang JPG hoặc PNG – Cài đặt

Bạn có thể dễ dàng chuyển đổi các tệp XPS hoặc OXPS thành Hình ảnh JPG hoặc PNG bằng một vài lệnh gọi API đơn giản. Aspose.Page for .NET API bao gồm các tính năng khác nhau để hoạt động với XPS, OXPS và một số định dạng tệp được hỗ trợ khác. Bạn có thể dễ dàng tải xuống tệp ZIP từ phần Tải xuống hoặc bạn có thể cài đặt tệp qua Trình quản lý gói NuGet bằng lệnh sau:

Install-Package Aspose.Page -Version 20.10.0

Sau khi định cấu hình API, bạn có thể làm việc hiệu quả với các tệp XPS hoặc OXPS trong các ứng dụng .NET của mình.

Chuyển đổi hình ảnh XPS, OXPS sang JPG bằng C# hoặc VB.NET

Các tệp JPG nổi tiếng vì chúng hỗ trợ trong tất cả các môi trường hệ thống. Bạn có thể chuyển đổi tệp XPS hoặc OXPS thành hình ảnh JPG theo chương trình bằng C# hoặc VB.NET. Bạn nên làm theo các bước sau để chuyển đổi hình ảnh XPS hoặc OXPS sang JPG:

  1. Tải tệp XPS hoặc OXPS đầu vào
  2. Khởi tạo đối tượng JpegSaveOptions
  3. Chỉ định Chế độ làm mịn, Độ phân giảiSố trang để Kết xuất
  4. Lưu hình ảnh JPG đầu ra

Đoạn mã sau cho biết cách chuyển đổi XPS hoặc OXPS sang Hình ảnh JPG bằng ngôn ngữ C#:

// tập tin đầu vào
string inputFileName = dataDir + "input.xps";
//tập tin đầu ra 
string outputFileName = dataDir + "XPStoImage_out.jpeg";
// Khởi tạo luồng đầu vào XPS
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
    // Tải tài liệu XPS dưới dạng luồng
    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
    // hoặc tải tài liệu XPS trực tiếp từ tệp. Khi đó không cần xpsStream.
    // Tài liệu XpsDocument = new XpsDocument(inputFileName, new XpsLoadOptions());

    // Khởi tạo đối tượng tùy chọn với các tham số cần thiết.
    JpegSaveOptions options = new JpegSaveOptions()
    {
        SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
        Resolution = 300
    };

    // Tạo thiết bị kết xuất cho định dạng JPG
    ImageDevice device = new ImageDevice();

    document.Save(device, options);

    // Lặp lại qua các phân vùng tài liệu (tài liệu cố định, theo thuật ngữ XPS)
   for (int i = 0; i < device.Result.Length; i++)
        // Lặp lại qua các trang phân vùng
       for (int j = 0; j < device.Result[i].Length; j++)
        {
            // Khởi tạo luồng đầu ra hình ảnh
            using (Stream imageStream = System.IO.File.Open(Path.GetDirectoryName(outputFileName) +
                Path.GetFileNameWithoutExtension(outputFileName) + "_" + (i + 1) + "_" + (j + 1) +
                Path.GetExtension(outputFileName), System.IO.FileMode.Create, System.IO.FileAccess.Write))
                // Viết hình ảnh
                imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
        }
}

Chuyển đổi XPS, OXPS sang hình ảnh PNG bằng C# hoặc VB.NET

Bạn có thể cần chuyển đổi tệp XPS hoặc OXPS sang PNG bằng C# hoặc VB.NET với Aspose.Page for .NET API. Bạn cần làm theo các bước bên dưới để chuyển đổi XPS sang PNG:

  1. Tải tệp XPS hoặc OXPS đầu vào
  2. Khởi tạo đối tượng PngSaveOptions
  3. Đặt hình ảnh Độ phân giải hoặc Số trang để Kết xuất
  4. Lưu hình ảnh PNG đầu ra

Đoạn mã dưới đây cho biết cách chuyển đổi tệp XPS hoặc OXPS thành hình ảnh PNG theo chương trình bằng C#:

// tập tin đầu vào
string inputFileName = dataDir + "input.xps";
//tập tin đầu ra 
string outputFileName = dataDir + "XPStoImage_out.png";
// Khởi tạo luồng đầu vào XPS
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
    // Tải tài liệu XPS dưới dạng luồng
    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
    // hoặc tải tài liệu XPS trực tiếp từ tệp. Khi đó không cần xpsStream.
    // Tài liệu XpsDocument = new XpsDocument(inputFileName, new XpsLoadOptions());

    // Khởi tạo đối tượng tùy chọn với các tham số cần thiết.
    PngSaveOptions options = new PngSaveOptions()
    {
        SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
        Resolution = 300
    };

    // Tạo thiết bị kết xuất cho định dạng PNG
    ImageDevice device = new ImageDevice();

    document.Save(device, options);

    // Lặp lại qua các phân vùng tài liệu (tài liệu cố định, theo thuật ngữ XPS)
   for (int i = 0; i < device.Result.Length; i++)
        // Lặp lại qua các trang phân vùng
       for (int j = 0; j < device.Result[i].Length; j++)
        {
            // Khởi tạo luồng đầu ra hình ảnh
            using (Stream imageStream = System.IO.File.Open(Path.GetDirectoryName(outputFileName) +
                Path.GetFileNameWithoutExtension(outputFileName) + "_" + (i + 1) + "_" + (j + 1) +
                Path.GetExtension(outputFileName), System.IO.FileMode.Create, System.IO.FileAccess.Write))
                // Viết hình ảnh
                imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
        }
}

Sự kết luận

Trong bài viết này, chúng ta đã học cách chuyển đổi tệp XPS hoặc OXPS thành hình ảnh JPG hoặc PNG bằng C# hoặc VB.NET theo lập trình. Tương tự như vậy, một số API định dạng tệp khác được Aspose.Page hỗ trợ cho .NET. Bạn có thể tham khảo Tài liệu sản phẩm hoặc Tham khảo API để tìm hiểu thêm về các tính năng do API cung cấp. Ngoài ra, bạn luôn có thể liên hệ với chúng tôi qua Diễn đàn hỗ trợ miễn phí. Hãy chia sẻ phản hồi hoặc thắc mắc của bạn!

Xem thêm