Sign documents with standard QR-code entries
Leave feedback
GroupDocs.Signature provides ability to embed into QR-code signature standard entries like email, contact v-card, address etc. This feature supports standard QR-code representation of entries. At this moment following standard QR-code entries are supported
Email entry that allows to specify in QR-code standard email information with recipient, subject and body.
V-Card entry implements standard of visit card 3.0 specification. More details could be found here.
Me-Card entry implements similar to V-Card contact details standard. More details could be found here.
EPC implements standard of the European Payments Council guidelines define the content of a QR code that can be used to initiate SEPA credit transfer. More details could be found here.
This example shows how to esign PDF with Email QR-code object.
Signaturesignature=newSignature("sample.pdf"))// create Email object
Emailemail=newEmail();email.setAddress("sherlock@holmes.com");email.setSubject("Very important e-mail");email.setBody("Hello, Watson. Reach me ASAP!");// create options
// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to Address instance
options.setData(email);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setMargin(newPadding(10));options.setWidth(100);options.setHeight(100);// sign document to file
signature.sign("output.pdf",options);
Sign PDF with Address inside the QR-Code image
This example shows how to esign PDF with address inside the QR-code image.
Signaturesignature=newSignature("sample.pdf")){// create Address object
Addressaddress=newAddress();address.setStreet("221B Baker Street");address.setCity("London");address.setState("NW");address.setZIP("NW16XE");address.setCountry("England");// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to Address instance
options.setData(address);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setMargin(newPadding(10));options.setWidth(100);options.setHeight(100);// sign document to file
signature.sign("output.pdf",options);}
Sign PDF with V-Card (VCF) information in the QR-Code image
This example shows how to esign PDF with V-Card inside the QR-code image.
Signaturesignature=newSignature("sample.pdf")){// create VCard object
VCardvCard=newVCard();vCard.setFirstName("Sherlock");vCard.setMidddleName("Jay");vCard.setLastName("Holmes");vCard.setInitials("Mr.");vCard.setCompany("Watson Inc.");vCard.setJobTitle("Detective");vCard.setHomePhone("0333 003 3577");vCard.setWorkPhone("0333 003 3512");vCard.setEmail("watson@sherlockholmes.com");vCard.setUrl("http://sherlockholmes.com/");vCard.setBirthDay(newDate(1854,1,6));Addressaddress=newAddress();address.setStreet("221B Baker Street");address.setCity("London");address.setState("NW");address.setZIP("NW16XE");address.setCountry("England");vCard.setHomeAddress(address);// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to Address instance
options.setData(vCard);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setMargin(newPadding(10));options.setWidth(100);options.setHeight(100);// sign document to file
signature.sign("output.pdf",options);}
Sign PDF with Me-Card information in the QR-Code image
This example shows how to esign PDF with Me-Card inside the QR-code image.
Signaturesignature=newSignature("sample.pdf"){// create MeCard object
MeCardmeCard=newMeCard();meCard.setName("Sherlock");meCard.setNickname("Jay");meCard.setReading("Holmes");meCard.setNote("Base Detective");meCard.setPhone("0333 003 3577");meCard.setAltPhone("0333 003 3512");meCard.setEmail("watson@sherlockholmes.com");meCard.setUrl("http://sherlockholmes.com/");meCard.setBirthDay(newDate(1854,1,6));Addressaddress=newAddress();address.setStreet("221B Baker Street");address.setCity("London");address.setState("NW");address.setZIP("NW16XE");address.setCountry("England");meCard.setAddress(address);// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to MeCard instance
options.setData(meCard);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setMargin(newPadding(10));options.setWidth(100);options.setHeight(100);// sign document to file
signature.Sign("output.pdf",options);}
Sign PDF with EPC payment in the QR-Code image
This example shows how to esign PDF with EPC / SEPA payment inside the QR-code image.
Signaturesignature=newSignature("sample.pdf"){// create EPC object
EPCepc=newEPC();epc.setName("Sherlock");epc.setBIC("MrSherlockH");epc.setIBAN("BE72000000001616");epc.setAmount(123456.78D);epc.setCode("SHRL");epc.setReference("Private service");epc.setInformation("Thanks for help");// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to EPC instance
options.setData(epc);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setMargin(newPadding(10));options.setWidth(100);options.setHeight(100);// sign document to file
signature.sign("output.pdf",options);}
Sign PDF with Event information in the QR-Code image
This example shows how to esign PDF with event data inside the QR-code image.
Signaturesignature=newSignature("sample.pdf"){// create Event object
Eventevnt=newEvent();evnt.setTitle("GTM(9-00)");evnt.setDescription("General Team Meeting");evnt.setLocation("Conference-Room");Calendarc1=Calendar.getInstance();c1.setTime(newDate());c1.add(Calendar.DATE,1);c1.add(Calendar.HOUR,9);Calendarc2=Calendar.getInstance();c2.setTime(newDate());c2.add(Calendar.DATE,1);c2.add(Calendar.HOUR,9);c2.add(Calendar.MINUTE,30);evnt.setStartDate(c1.getTime());evnt.setEndDate(c2.getTime());// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to Event instance
options.setData(evnt);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setMargin(newPadding(10));options.setWidth(100);options.setHeight(100);// sign document to file
signature.sign("output.pdf",options);}
Sign PDF with CryptoCurrencyTransfer information in the QR-Code image
This example shows how to esign PDF with Cryptocurrency transfer data inside the QR-code image.
Signaturesignature=newSignature("sample.pdf");// create crypto currency object
CryptoCurrencyTransfertransfer=newCryptoCurrencyTransfer();transfer.setType(CryptoCurrencyType.Bitcoin);transfer.setAddress("1JHG2qjdk5Khiq7X5xQrr1wfigepJEK3t");transfer.setAmount(1234.56M);transfer.setMessage("Consulting services");// create alternative crypto currency object
CryptoCurrencyTransfercustomTransfer=newCryptoCurrencyTransfer();customTransfer.setType(CryptoCurrencyType.Custom);customTransfer.setCustomType("SuperCoin");customTransfer.setAddress("15N3yGu3UFHeyUNdzQ5sS3aRFRzu5Ae7EZ");customTransfer.setAmount(6543.21M);customTransfer.setMessage("Accounting services");// create QR-code options
QrCodeSignOptionsoptions1=newQrCodeSignOptions();// setup Data property to Address instance
options1.setData(transfer);options1.setLeft(10);options1.setTop(10);// create alternative QR-code options
QrCodeSignOptionsoptions2=newQrCodeSignOptions();// setup Data property to Address instance
options2.setData(customTransfer);options2.setLeft(10);options2.setTop(200);List<SignOptions>listOptions=newList<SignOptions>();listOptions.add(options1);listOptions.add(options2);// sign document to file
signature.sign("output.pdf",listOptions);
Create an image with the WiFi QR Code information
This example shows how to create an image with the WiFi QR Code object.
Signaturesignature=newSignature("sample.png");// create WiFi object
WiFiwifi=newWiFi();wifi.setSSID("GuestNetwork!");wifi.setEncryption(WiFiEncryptionType.WPAWPA2);wifi.setPassword("guest");wifi.setHidden(false);// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to WiFi object instance
options.setData(wifi);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setWidth(100);options.setHeight(100);options.setMargin(newPadding(10));// sign document to image file
signature.sign("output.png",options);
Sign PDF with SMS data information in the QR-Code
This example shows how to esign PDF with QR Code SMS data on the PDF page. This could be used for automatic document verification or subscription.
Signaturesignature=newSignature("sample.pdf");// create SMS object
SMSsms=newSMS();sms.setNumber("0800 048 0408");sms.setMessage("Document approval automatic SMS message");// create options
QrCodeSignOptionsoptions=newQrCodeSignOptions();options.setEncodeType(QrCodeTypes.QR);// setup Data property to Address instance
options.setData(sms);// set right bottom corner
options.setHorizontalAlignment(HorizontalAlignment.Right);options.setVerticalAlignment(VerticalAlignment.Bottom);options.setWidth(100);options.setHeight(100);options.setMargin(newPadding(10));// sign document to file
signature.sign("output.pdf",options);
More resources
GitHub Examples
You may easily run the code above and see the feature in action in our GitHub examples: