GroupDocs.Signature provides overloaded Delete method that accepts one SignatureType or list of them.
Please be aware that this method modifies the same document that was passed to constructor of the Signature class.
How to delete signature by specific type from the document
Here are the steps to delete signature by specific type from the document with GroupDocs.Signature:
Create new instance of Signature class and pass source document path or its stream as a constructor parameter;
This example shows how to delete QR-Code signatures from the document.
constfilePath=Constants.SAMPLE_SIGNED_MULTI;constfileName=path.basename(filePath);constoutputDirectory=path.join(Constants.OutputPath,'DeleteBySignatureType');if(!fs.existsSync(outputDirectory)){fs.mkdirSync(outputDirectory,{recursive:true});}// Copy source file since the delete method works with the same Document
constoutputFilePath=path.join(outputDirectory,fileName);// fs.copyFileSync(filePath, outputFilePath);
// Processing QR-Code signatures
constsignature=newsignatureLib.Signature(filePath);// Deleting QR-Code signatures from the document
constresult=awaitsignature.delete(outputFilePath,signatureLib.SignatureType.QrCode);if(result.getSucceeded().size()>0){console.log('Following QR-Code signatures were deleted:');letnumber=1;result.getSucceeded().toArray().forEach((o)=>{consttemp=o;console.log(`Signature #${number++}: Type: ${temp.getSignatureType()}, Id: ${temp.getSignatureId()}, Text: ${temp.getText()}`);});}else{console.log('No QR-Code signatures were deleted.');}
More resources
GitHub Examples
You may easily run the code above and see the feature in action in our GitHub examples: