Ký điện tử PDF bằng mã QR trong C#

Ký điện tử PDF bằng mã QR trong C#

Trong kỷ nguyên hiện đại, các tệp PDF được ký điện tử có mã QR đã trở nên an toàn hơn và có thể xác minh nhanh chóng hơn đối với các hệ thống xử lý kỹ thuật số tự động. Một lý do chính đáng khác để sử dụng mã QR là chúng có khả năng chứa nhiều thông tin hữu ích. Nếu bạn muốn tìm hiểu cách ký điện tử các tệp PDF bằng mã QR trong C#, bạn đã đến đúng nơi.

Các điểm sau đây sẽ được đề cập trong bài viết này:

Thư viện C# để ký điện tử PDF bằng mã QR

Bạn có thể tải xuống DLL hoặc cài đặt nó bằng cách chạy lệnh (như được đưa ra bên dưới) trong bảng điều khiển quản lý gói NuGet.

Install-Package GroupDocs.Signature

Các bước để ký điện tử PDF bằng mã QR trong C#

Sau khi cài đặt, hãy bắt đầu viết một vài dòng mã.

Vui lòng làm theo các bước và đoạn mã được đề cập bên dưới:

  1. Khởi tạo lớp Chữ ký và chuyển đường dẫn của tài liệu nguồn làm tham số hàm tạo.
  2. Khởi tạo một phiên bản của lớp QrCodeSignOptions và đặt các thuộc tính EncodeTypeText.
  3. Gọi phương thức Sign của lớp Signature và truyền đường dẫn của tệp đầu ra và QrCodeSignOptions cho nó.

Bạn chỉ cần sao chép và dán mẫu mã sau vào tệp C# của mình:

using (Signature signature = new Signature("sample.pdf"))
{
    // tạo tùy chọn QRCode với văn bản QRCode được xác định trước
    QrCodeSignOptions options = new QrCodeSignOptions("JohnSmith")
    {
        // thiết lập loại mã hóa QRCode
        EncodeType = QrCodeTypes.QR,
        // đặt vị trí chữ ký
        Left = 100,
        Top = 100
    };
    signature.Sign("SampleSigned.pdf", options);
}

Đầu ra có thể được nhìn thấy trong hình ảnh dưới đây:

Dấu hiệu mã QR

eSign PDF với mã QR trong C# - Tùy chọn nâng cao

Thư viện PDF eSign cung cấp thêm một số tùy chọn hữu ích trong lớp QrCodeSignOptions. Bạn có thể sử dụng lớp này để chỉ định căn chỉnh chữ ký, lề, đường viền, phông chữ, màu sắc và nền. Hơn nữa, bạn có thể xác minh kết quả của chữ ký mới được tạo bằng cách sử dụng lớp SignResult.

Sau đây là các bước tạo QR Code với các tùy chọn nâng cao:

  1. Khởi tạo một phiên bản mới của lớp Chữ ký bằng cách cung cấp đường dẫn của tài liệu nguồn làm tham số hàm tạo.
  2. Khởi tạo một thể hiện của lớp QrCodeSignOptions.
  3. Đặt văn bản và loại mã hóa của chữ ký.
  4. Đặt vị trí của chữ ký.
  5. Chỉ định căn chỉnh, lề, đường viền, phông chữ, màu sắc và nền của chữ ký.
  6. Gọi phương thức Sign của lớp Signature và truyền đường dẫn của tệp đầu ra và QrCodeSignOptions cho nó.
  7. Tùy chọn, bạn có thể lấy đối tượng SignResult để phân tích hoặc xác minh chữ ký mới được tạo.

Mã C# sau đây cho biết cách ký một tệp PDF bằng mã QR bằng các tùy chọn nâng cao:

using (Signature signature = new Signature("sample.pdf"))
            {
                // tạo tùy chọn QRCode với văn bản QRCode được xác định trước
                QrCodeSignOptions options = new QrCodeSignOptions("12345678")
                {
                    // thiết lập loại mã hóa QRCode
                    EncodeType = QrCodeTypes.QR,
                    // đặt vị trí chữ ký
                    Left = 100,
                    Top = 100,
                    // đặt căn chỉnh chữ ký
                    // khi VerticalAlignment được đặt tọa độ Top sẽ bị bỏ qua.
                    // Sử dụng thuộc tính Margin Top, Bottom để cung cấp offset dọc
                    VerticalAlignment = VerticalAlignment.Top,
                    // khi HorizontalAlignment được đặt, tọa độ Left sẽ bị bỏ qua.
                    // Sử dụng thuộc tính Margin Left, Right để cung cấp offset theo chiều ngang
                    HorizontalAlignment = HorizontalAlignment.Right,
                    Margin = new Padding() { Top = 20, Right = 20 },
                    // điều chỉnh giao diện chữ ký
                    // thiết lập đường viền chữ ký
                    Border = new Border()
                    {
                        Color = Color.DarkGreen,
                        DashStyle = GroupDocs.Signature.Domain.DashStyle.DashLongDashDot,
                        Transparency = 0.5,
                        Visible = true,
                        Weight = 2
                    },
                    // đặt màu văn bản và phông chữ
                    ForeColor = Color.Red,
                    Font = new SignatureFont { Size = 12, FamilyName = "Comic Sans MS" },
                    // nền thiết lập
                    Background = new Background()
                    {
                        Color = Color.LimeGreen,
                        Transparency = 0.5,
                        Brush = new LinearGradientBrush(Color.LimeGreen, Color.DarkGreen)
                    }
                };
                // ký tài liệu để nộp và điền vào SignResut
                SignResult signResult = signature.Sign("signed.pdf", options);
                Console.WriteLine("\nList of newly created signatures:");
                int number = 1;
                foreach (BaseSignature temp in signResult.Succeeded)
                {
                    Console.WriteLine($"Signature #{number++}: Type: {temp.SignatureType} Id:{temp.SignatureId}, Location: {temp.Left}x{temp.Top}. Size: {temp.Width}x{temp.Height}");
                }
            }

Bạn sẽ nhận được đầu ra như trong hình dưới đây:

ký điện tử PDF

Nhận giấy phép miễn phí

Bạn có thể tận dụng giấy phép tạm thời miễn phí để kiểm tra API mà không bị giới hạn về đánh giá.

Phần kết luận

Trong bài viết này, chúng ta đã tìm hiểu cách Ký điện tử PDF bằng Mã QR trong C# bằng thư viện chữ ký điện tử. Ngoài ra, bạn cũng đã có được kiến thức về một số tùy chọn nâng cao để thêm Mã QR Đăng nhập vào tài liệu PDF của mình. Bạn có thể truy cập tài liệu để biết về các tính năng khác của thư viện chữ ký số.

Ngoài ra, chúng tôi khuyên bạn nên làm theo Hướng dẫn bắt đầu của chúng tôi.

Đặt một câu hỏi

Bạn có thể cho chúng tôi biết về các câu hỏi hoặc thắc mắc của bạn trên diễn đàn của chúng tôi.

Xem thêm