Is there any method to recognize signatures, making sure that the documents are signed?
There is no way to recognize or automatically locate signatures due to their complicated nature.
However, you can detect a signature by using a checkmark field. We would recommend drawing a checkmark area around the signature field as follows:
In checkmark properties, you may specify custom string values when it is signed or not signed: in the settings of the recognition use a script to determine the percentage of black in the region (using a BlacknessPercentage property of PictureObjectsInfo object).
The script takes into account the number of filled dots in the area (blackness percentage) to set the value of the checkmark
int threshold = 1;
IPictureObjectsInfo PictureObjectsInfo = Context.Field("Signature_M").Regions.Picture.AnalyzePageOjects(null);
Context.Field("Signature_M").Value = PictureObjectsInfo.BlacknessPercentage < threshold ? false : true;
The threshold value determines the percentage of the area that needs to be filled with the dots (1% in the example) and sets the value of the checkmark to a "checked" state if this value is exceeded and leaves it unchecked otherwise. This value depends on the documents and signatures that are processed and additional adjustments may be needed for the best results after the tests.
The downside of this method is that if scanned documents are of bad quality or the quality varies greatly between the documents (e.g. there are scanning marks in the signature area), this approach may not work correctly.