/// <summary> /// Sign document with QR-Code containing standard MeCard object /// </summary> public static void Run() { Console.WriteLine("\n--------------------------------------------------------------------------------------------------------------------"); Console.WriteLine("[Example Advanced Usage] # SignWithQRCodeMeCardObject : Sign document with QR-Code containing standard QR-Code MeCard object\n"); // The path to the documents directory. string filePath = Constants.SAMPLE_PDF; string fileName = Path.GetFileName(filePath); string outputFilePath = Path.Combine(Constants.OutputPath, "SignWithQRCodeMeCard", "QRCodeMeCardObject.pdf"); using (Signature signature = new Signature(filePath)) { // create MeCard object MeCard vCard = new MeCard() { Name = "Sherlock", Nickname = "Jay", Reading = "Holmes", Note = "Base Detective", Phone = "0333 003 3577", AltPhone = "0333 003 3512", Email = "*****@*****.**", Url = "http://sherlockholmes.com/", BirthDay = new DateTime(1854, 1, 6), Address = new Address() { Street = "221B Baker Street", City = "London", State = "NW", ZIP = "NW16XE", Country = "England" } }; // create options QrCodeSignOptions options = new QrCodeSignOptions { EncodeType = QrCodeTypes.QR, // setup Data property to MeCard instance Data = vCard, // set right bottom corner HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Center, Width = 100, Height = 100, Margin = new Padding(10) }; // sign document to file signature.Sign(outputFilePath, options); } Console.WriteLine("\nSource document signed successfully.\nFile saved at " + outputFilePath); }
/// <summary> /// Search document for QR-Code signature with MeCard data object. /// Please be aware that this example works only on licensed product due to limitation with QR-code processing /// </summary> public static void Run() { Console.WriteLine("\n--------------------------------------------------------------------------------------------------------------------"); Console.WriteLine("[Example Advanced Usage] # SearchForQRCodeMeCardObject : Search document for QR-Code signature with MeCard data object.\n"); // The path to the documents directory. string filePath = Constants.SAMPLE_PDF_QRCODE_MECARD_OBJECT; // instantiating the signature object using (Signature signature = new Signature(filePath)) { // search document List <QrCodeSignature> signatures = signature.Search <QrCodeSignature>(SignatureType.QrCode); try { foreach (QrCodeSignature qrSignature in signatures) { MeCard meCard = qrSignature.GetData <MeCard>(); if (meCard != null) { Console.WriteLine("Found MeCard signature: {0} {1} from {2}. Email: {3}", meCard.Name, meCard.Reading, meCard.Note, meCard.Email); } else { Helper.WriteError($"MeCard object was not found. QRCode {qrSignature.EncodeType.TypeName} with text {qrSignature.Text}"); } } } catch { Helper.WriteError("\nThis example requires license to properly run. " + "\nVisit the GroupDocs site to obtain either a temporary or permanent license. " + "\nLearn more about licensing at https://purchase.groupdocs.com/faqs/licensing. " + "\nLear how to request temporary license at https://purchase.groupdocs.com/temporary-license."); } } }