دیجیتالی امضا کردن PDF با کد QR در C#

با QR Code در C# PDF را به صورت دیجیتال امضا کنید

در عصر مدرن، پی‌دی‌اف‌های دیجیتالی امضا شده با کد QR به طور فزاینده‌ای ایمن و به سرعت قابل تأیید برای سیستم‌های پردازش دیجیتال خودکار شده‌اند. دلیل خوب دیگری برای استفاده از کدهای QR این است که آن‌ها قادر به ذخیره‌سازی اطلاعات مفید زیادی هستند. اگر به یادگیری نحوه امضای الکترونیکی PDF با کد QR در C# علاقه‌مند هستید، به مکان مناسبی آمده‌اید.

نکات زیر در این مقاله مورد بررسی قرار خواهند گرفت:

کتابخانه C# برای امضای دیجیتال PDF با کد QR

شما می‌توانید دانلود DLL را انجام دهید یا با اجرای دستور (همانطور که در زیر داده شده) در کنسول مدیر بسته NuGet آن را نصب کنید.

Install-Package GroupDocs.Signature

مراحل امضا دیجیتال PDF با کد QR در C#

بعد از نصب، بیایید چند خط کد بنویسیم.

لطفاً مراحل و کد نمونه ذکر شده در زیر را دنبال کنید:

  1. کلاس Signature راInstantiate کنید و مسیر سند منبع را به عنوان پارامتر سازنده منتقل کنید.
  2. یک نمونه از کلاس QrCodeSignOptions را مقداردهی اولیه کنید و ویژگی‌های EncodeType و Text را تنظیم کنید.
  3. Invoke Sign method of Signature class and pass output file’s path and QrCodeSignOptions to it.

شما می‌توانید کد نمونه زیر را به سادگی کپی و در فایل C# خود پیست کنید:

using (Signature signature = new Signature("sample.pdf"))
{
    // create QRCode option with predefined QRCode text
    QrCodeSignOptions options = new QrCodeSignOptions("JohnSmith")
    {
        // تنظیم نوع رمزگذاری QRCode
        EncodeType = QrCodeTypes.QR,
        // set signature position
        Left = 100,
        Top = 100
    };
    signature.Sign("SampleSigned.pdf", options);
}

خروجی را می‌توان در تصویر زیر دید:

علامت QR Code

eSign PDF با کد QR در C# - گزینه‌های پیشرفته

کتابخانه PDF eSign گزینه‌های اضافی مفیدی را در کلاس QrCodeSignOptions ارائه می‌دهد. شما می‌توانید از این کلاس برای مشخص کردن هم‌ترازی امضا، حاشیه‌ها، مرزها، قلم، رنگ‌ها و پس‌زمینه استفاده کنید. علاوه بر این، شما می‌توانید نتایج یک امضای تازه ایجاد شده را با استفاده از کلاس SignResult تأیید کنید.

به دنبال مراحل زیر برای ایجاد کد QR با گزینه‌های پیشرفته هستید:

  1. یک نمونه جدید از کلاس Signature را با ارائه مسیر سند منبع به عنوان پارامتر سازنده، inicialize کنید.
  2. یک نمونه از کلاس QrCodeSignOptions را نمونه‌سازی کنید.
  3. متن و نوع کدگذاری امضا را تنظیم کنید.
  4. موقعیت امضا را تنظیم کنید.
  5. تنظیمات تراز امضا، حاشیه‌ها، مرزها، قلم، رنگ‌ها و پس‌زمینه را مشخص کنید.
  6. Invoke Sign method of Signature class and pass output file’s path and QrCodeSignOptions to it.
  7. به طور اختیاری می‌توانید SignResult شیء را برای تحلیل یا تأیید امضاهای تازه ایجاد شده به دست آورید.

کد C# زیر نشان می‌دهد که چگونه یک PDF را با کد QR با استفاده از گزینه‌های پیشرفته امضا کنیم:

using (Signature signature = new Signature("sample.pdf"))
            {
                // create QRCode option with predefined QRCode text
                QrCodeSignOptions options = new QrCodeSignOptions("12345678")
                {
                    // تنظیم نوع کدگذاری QRCode
                    EncodeType = QrCodeTypes.QR,
                    // set signature position
                    Left = 100,
                    Top = 100,
                    // تنظیم تراز امضا
                    // زمانی که VerticalAlignment تنظیم شود، مختصات Top نادیده گرفته خواهد شد.
                    // از خصوصیات حاشیه بالا و پایین برای ایجاد فاصله عمودی استفاده کنید
                    VerticalAlignment = VerticalAlignment.Top,
                    // زمانی که HorizontalAlignment تنظیم شود، مختصات Left نادیده گرفته خواهد شد.
                    // از ویژگی‌های Margin چپ و راست برای ارائه تغییر موقعیت افقی استفاده کنید.
                    HorizontalAlignment = HorizontalAlignment.Right,
                    Margin = new Padding() { Top = 20, Right = 20 },
                    // ظاهر امضای خود را تنظیم کنید
                    // setup signature border
                    Border = new Border()
                    {
                        Color = Color.DarkGreen,
                        DashStyle = GroupDocs.Signature.Domain.DashStyle.DashLongDashDot,
                        Transparency = 0.5,
                        Visible = true,
                        Weight = 2
                    },
                    // تنظیم رنگ متن و قلم
                    ForeColor = Color.Red,
                    Font = new SignatureFont { Size = 12, FamilyName = "Comic Sans MS" },
                    // setup background
                    Background = new Background()
                    {
                        Color = Color.LimeGreen,
                        Transparency = 0.5,
                        Brush = new LinearGradientBrush(Color.LimeGreen, Color.DarkGreen)
                    }
                };
                // sign document to file and pouplate the 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}");
                }
            }

شما خروجی را به صورت زیر در تصویر مشاهده خواهید کرد:

eSign PDF

یک لایسنس رایگان بگیرید

شما می‌توانید از یک مجوز موقت رایگان برای تست API بدون محدودیت‌های ارزیابی استفاده کنید.

نتیجه گیری

در این مقاله، ما یاد گرفتیم که چگونه با استفاده از یک کتابخانه امضای الکترونیکی، پی‌دی‌اف را با کد QR به صورت دیجیتالی امضا کنیم. علاوه بر این، شما همچنین درباره برخی گزینه‌های پیشرفته برای افزودن امضای کد QR به اسناد پی‌دی‌اف خود اطلاعاتی به دست آورده‌اید. شما می‌توانید به documentation مراجعه کنید تا درباره سایر ویژگی‌های کتابخانه امضای دیجیتال بیشتر بدانید.

علاوه بر این، به شما پیشنهاد می‌کنیم که راهنمای Getting Started guide ما را دنبال کنید.

Ask a question

شما می‌توانید سوالات یا درخواست‌های خود را در forum به ما اطلاع دهید.

همچنین ببینید