The best way to annotate text in a contract (text or pdf) is to extract important entities from the text with Named Entity Recognition (NER), and link entities that are connected to each other with Named Entity Linking (NEL). To label signatures, stamps, or logos, you can use bounding boxes. bbox for signature & stamps. To do this, use a labeling platform.