ลายเซ็นอิเล็กทรอนิกส์คือข้อมูลดิจิทัลที่แนบมากับเอกสารที่ส่งทางอิเล็กทรอนิกส์ ตรวจสอบความตั้งใจของผู้ส่งในการลงนามในเอกสาร
ในฐานะนักพัฒนา คุณสามารถลงนามในเอกสารทางโปรแกรมและตรวจสอบว่าเอกสารนั้นได้รับการลงนามอย่างถูกต้องด้วยลายเซ็นที่ถูกต้องหรือไม่ GroupDocs.Signature for .NET API มีคุณสมบัติดังกล่าวมากมายและให้คุณควบคุมกระบวนการลงนามอิเล็กทรอนิกส์ได้อย่างสมบูรณ์ มีการใช้งานลายเซ็นอิเล็กทรอนิกส์ที่แตกต่างกัน เช่น:
- ลายเซ็นข้อความ (ข้อความ คำอธิบายประกอบ ลายน้ำ สติกเกอร์)
- Image Signature - พร้อมตัวเลือกต่างๆ เช่น เอฟเฟ็กต์ภาพและการหมุน
- ลายเซ็นดิจิทัล - ขึ้นอยู่กับใบรับรองดิจิทัล
- ลายเซ็นบาร์โค้ด
- รหัส QR ลายเซ็น
- ลายเซ็นประทับ
- ลายเซ็นข้อมูลเมตา
- ลายเซ็น FormField
บทความนี้แสดงวิธีที่นักพัฒนาสามารถค้นหาลายเซ็นอิเล็กทรอนิกส์ประเภทต่างๆ ภายในเอกสารใดๆ ด้วย C# โดยใช้ GroupDocs.Signature API สำหรับ .NET
ค้นหาลายเซ็นรหัส QR ใน C#
ต่อไปนี้เป็นวิธีการค้นหาที่ง่ายที่สุดที่แสดงวิธีค้นหาลายเซ็น QR Code ภายในเอกสาร PDF คุณสามารถใช้รหัสบรรทัดเดียวกันเพื่อค้นหาในรูปแบบไฟล์ที่รองรับ
// Search QR Code Signatures in PDF document using C#
using (Signature signature = new Signature("signed.pdf"))
{
// search for signatures in document
List<QrCodeSignature> signatures = signature.Search<QrCodeSignature>(SignatureType.QrCode);
Console.WriteLine($"\\nSource document contains following signatures.");
foreach (var qrCodeSignature in signatures)
{
Console.WriteLine($"QRCode signature found at page {qrCodeSignature.PageNumber} with type {qrCodeSignature.EncodeType.TypeName} and text {qrCodeSignature.Text}");
}
}
ค้นหาบาร์โค้ด รหัส QR และลายเซ็นอื่นๆ ใน C#
การค้นหาลายเซ็นบาร์โค้ด ลายเซ็น QR Code ลายเซ็นข้อความ หรือแม้แต่ลายเซ็น Metadata ที่ซ่อนอยู่ในเอกสารนั้นค่อนข้างง่าย รหัสที่กล่าวถึงด้านล่างแสดงวิธีแยกประเภทลายเซ็นต่างๆ จากเอกสารใดๆ ใน C#
using (Signature signature = new Signature("signed.pdf"))
{
// search for signatures in document
SearchResult result = signature.Search(SignatureType.Text, SignatureType.Barcode, SignatureType.QrCode, SignatureType.Metadata);
if (result.Signatures.Count > 0)
{
Console.WriteLine($"\\nSource document contains following signatures.");
foreach (var resSignature in result.Signatures)
{
Console.WriteLine($"Signature found at page {resSignature.PageNumber} with type {resSignature.SignatureType} and Id#: {resSignature.SignatureId}");
}
}
else
{
Console.WriteLine("No signature was found.");
}
}
ค้นหาลายเซ็นรูปภาพใน PDF และคว้าเนื้อหาใน C#
.NET Signature API ไม่เพียงแต่อนุญาตให้รับลายเซ็นทุกประเภทเท่านั้น แต่ยังดึงเนื้อหาข้อมูลรูปภาพสำหรับงานนำเสนอ สเปรดชีต การประมวลผลคำ และเอกสาร PDF ได้อีกด้วย ต่อไปนี้คือซอร์สโค้ดที่แสดงวิธีดึงเนื้อหารูปภาพหลังจากการค้นหาลายเซ็นรูปภาพจากเอกสาร PDF ใน C# สำเร็จ
using (Signature signature = new Signature("signed.pdf"))
{
// setup search options
ImageSearchOptions searchOptions = new ImageSearchOptions()
{
// enable grabbing image content feature
ReturnContent = true,
// set minimum size if needed
MinContentSize = 0,
// set maximum size if needed
MaxContentSize = 0,
// specify exact image type to be returned
ReturnContentType = FileType.JPEG,
};
// search document
List<ImageSignature> signatures = signature.Search<ImageSignature>(searchOptions);
Console.WriteLine($"\\nSource document contains following image signature(s).");
// output signatures
foreach (ImageSignature imageSignature in signatures)
{
Console.Write($"Found Image signature at page {imageSignature.PageNumber} and size {imageSignature.Size}.");
Console.WriteLine($"Location at {imageSignature.Left}-{imageSignature.Top}. Size is {imageSignature.Width}x{imageSignature.Height}.");
}
//Save signature images
string outputPath = "Output";
if (!Directory.Exists(outputPath))
{
Directory.CreateDirectory(outputPath);
}
foreach (ImageSignature imageSignature in signatures)
{
Console.Write($"Found Image signature at page {imageSignature.PageNumber} and size {imageSignature.Size}.");
Console.WriteLine($"Location at {imageSignature.Left}-{imageSignature.Top}. Size is {imageSignature.Width}x{imageSignature.Height}.");
string outputFilePath = System.IO.Path.Combine(outputPath, $"image{i}{imageSignature.Format.Extension}");
using (FileStream fs = new FileStream(outputFilePath, FileMode.Create))
{
fs.Write(imageSignature.Content, 0, imageSignature.Content.Length);
}
}
}
แหล่งข้อมูลสำคัญสำหรับ GroupDocs.Signature for .NET
สำรวจเพิ่มเติมเกี่ยวกับ GroupDocs.Signaure สำหรับ .NET API คุณสามารถติดต่อฝ่ายสนับสนุนได้อย่างอิสระหากต้องการความช่วยเหลือ:
- เอกสาร
- ตัวอย่างซอร์สโค้ด - GitHub
- ฟอรั่ม