// For complete examples and data files, please go to https://github.com/groupdocs-signature/GroupDocs.Signature-for-Java
// setup Signature configuration
SignatureConfig signConfig = CommonUtilities.getConfiguration();
// instantiating the conversion handler
SignatureHandler<String> handler = new SignatureHandler<String>(signConfig);
PdfQRCodeSignOptions signOptions = new PdfQRCodeSignOptions("12345678");
// barcode type
signOptions.setEncodeType(QRCodeTypes.AZTEC);
// if you need to sign all sheets set it to true
signOptions.setSignAllPages(true);
// set border (optionally)
signOptions.setBorderVisiblity(true);
signOptions.setBorderColor(Color.BLUE);
signOptions.setBorderWeight(3);
signOptions.setBorderDashStyle(DashStyle.RoundDot);
// set opacity (optionally)
signOptions.setOpacity(0.5);
final SaveOptions saveOptions = new SaveOptions();
saveOptions.setOutputType(OutputType.String);
saveOptions.setOutputFileName("signed_output");
// sign document
String signedPath = handler.<String>sign(fileName, signOptions, saveOptions);
//System.out.println("Signed pdf document with qrcode" + signedPath);