Modern çağda, QR kodlu dijital olarak imzalanmış PDF’ler, otomatik dijital işleme sistemleri için daha güvenli ve hızlı bir şekilde doğrulanabilir hale geldi. QR kodlarını kullanmanın bir başka iyi nedeni de pek çok yararlı bilgi içerebilmeleridir. C# dilinde PDF dosyalarını QR koduyla nasıl e-imzalayacağınızı öğrenmek istiyorsanız, doğru yere geldiniz.
Bu makalede aşağıdaki noktalar ele alınacaktır:
- PDF’yi QR Koduyla Dijital Olarak İmzalamak için C# Kitaplığı
- C#’ta PDF’yi QR Koduyla Dijital Olarak İmzalama Adımları
- C#’ta PDF’yi QR Koduyla Dijital Olarak İmzalayın - Gelişmiş Seçenekler
PDF’yi QR Koduyla Dijital Olarak İmzalamak için C# Kitaplığı
DLL’yi indirebilir veya NuGet paket yöneticisi konsolundaki komutu (aşağıda verildiği gibi) çalıştırarak yükleyebilirsiniz.
Install-Package GroupDocs.Signature
C#’ta PDF’yi QR Koduyla Dijital Olarak İmzalama Adımları
Kurulumdan sonra birkaç satır kod yazmaya başlayalım.
Lütfen aşağıda belirtilen adımları ve kod pasajını izleyin:
- Signature sınıfını oluşturun ve kaynak belgenin yolunu yapıcı parametresi olarak iletin.
- QrCodeSignOptions sınıfının bir örneğini başlatın ve EncodeType ve Text özelliklerini ayarlayın.
- Signature sınıfının Sign yöntemini çağırın ve çıktı dosyasının yolunu ve QrCodeSignOptions‘yi ona iletin.
Aşağıdaki kod örneğini kopyalayıp C# dosyanıza yapıştırabilirsiniz:
using (Signature signature = new Signature("sample.pdf"))
{
// önceden tanımlanmış QRCode metniyle QRCode seçeneği oluşturun
QrCodeSignOptions options = new QrCodeSignOptions("JohnSmith")
{
// QRCode kodlama türünü ayarla
EncodeType = QrCodeTypes.QR,
// imza konumunu ayarla
Left = 100,
Top = 100
};
signature.Sign("SampleSigned.pdf", options);
}
Çıktı aşağıdaki resimde görülebilir:
C#’ta QR koduyla PDF’yi e-İmzalayın - Gelişmiş Seçenekler
PDF eSign kitaplığı, QrCodeSignOptions sınıfında bazı ek kullanışlı seçenekler sunar. İmza hizalamasını, kenar boşluklarını, kenarlıkları, yazı tipini, renkleri ve arka planı belirtmek için bu sınıfı kullanabilirsiniz. Ayrıca yeni oluşturulan bir imzanın sonuçlarını SignResult sınıfını kullanarak doğrulayabilirsiniz.
Gelişmiş seçeneklerle QR Kodu oluşturma adımları aşağıda verilmiştir:
- Kaynak belgenin yolunu yapıcı parametresi olarak sağlayarak Signature sınıfının yeni bir örneğini başlatın.
- QrCodeSignOptions sınıfının bir örneğini oluşturun.
- İmzanın metnini ve kodlama türünü ayarlayın.
- İmzanın konumunu ayarlayın.
- İmzanın hizalamasını, kenar boşluklarını, kenarlıklarını, yazı tipini, renklerini ve arka planını belirtin.
- Signature sınıfının Sign yöntemini çağırın ve çıktı dosyasının yolunu ve QrCodeSignOptions‘yi ona iletin.
- İsteğe bağlı olarak, yeni oluşturulan imzaları analiz etmek veya doğrulamak için SignResult nesnesini alabilirsiniz.
Aşağıdaki C# kodu, gelişmiş seçenekleri kullanarak PDF’nin QR koduyla nasıl imzalanacağını gösterir:
using (Signature signature = new Signature("sample.pdf"))
{
// önceden tanımlanmış QRCode metniyle QRCode seçeneği oluşturun
QrCodeSignOptions options = new QrCodeSignOptions("12345678")
{
// QRCode kodlama türünü ayarla
EncodeType = QrCodeTypes.QR,
// imza konumunu ayarla
Left = 100,
Top = 100,
// imza hizalamasını ayarla
// VerticalAlignment ayarlandığında Üst koordinat göz ardı edilecektir.
// Dikey uzaklık sağlamak için Üst, Alt Kenar Boşluğu özelliklerini kullanın
VerticalAlignment = VerticalAlignment.Top,
// HorizontalAlignment ayarlandığında Sol koordinat göz ardı edilecektir.
// Yatay uzaklık sağlamak için Sol, Sağ Kenar Boşluğu özelliklerini kullanın
HorizontalAlignment = HorizontalAlignment.Right,
Margin = new Padding() { Top = 20, Right = 20 },
// imza görünümünü ayarlama
// imza kenarlığını ayarla
Border = new Border()
{
Color = Color.DarkGreen,
DashStyle = GroupDocs.Signature.Domain.DashStyle.DashLongDashDot,
Transparency = 0.5,
Visible = true,
Weight = 2
},
// metin rengini ve Yazı Tipini ayarlama
ForeColor = Color.Red,
Font = new SignatureFont { Size = 12, FamilyName = "Comic Sans MS" },
// arka planı ayarla
Background = new Background()
{
Color = Color.LimeGreen,
Transparency = 0.5,
Brush = new LinearGradientBrush(Color.LimeGreen, Color.DarkGreen)
}
};
// Belgeyi dosyaya imzalayın ve SignResut'u doldurun
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}");
}
}
Aşağıdaki resimde görüldüğü gibi çıktıyı alacaksınız:
Ücretsiz Lisans Alın
API’yi değerlendirme sınırlamaları olmadan test etmek için ücretsiz geçici lisans’tan yararlanabilirsiniz.
Çözüm
Bu yazıda, elektronik imza kütüphanesini kullanarak C#’ta PDF’yi QR Koduyla Dijital Olarak İmzalamayı öğrendik. Ayrıca, PDF belgelerinize QR Kod İmzasını eklemek için bazı gelişmiş seçenekler hakkında da bilgi edindiniz. Dijital imza kütüphanesinin diğer özellikleri hakkında bilgi edinmek için belgeleri ziyaret edebilirsiniz.
Ayrıca Başlangıç kılavuzumuzu takip etmenizi öneririz.
Bir soru sor
Sorularınızı veya sorularınızı forumumuz üzerinden bize bildirebilirsiniz.