Sí, pero los detalles realmente dependen del tipo de anotaciones de las que está hablando.
En general:
PdfDictionary pageDict = myPdfReader.getPageN(firstPageIsOne);
PdfArray annotArray = pageDict.getAsArray(PdfName.ANNOTS);
for (int i = 0; i < annotArray.size(); ++i) {
PdfDictionary curAnnot = annotArray.getAsDict(i);
int someType = myCodeToGetAnAnnotsType(curAnnot);
if (someType == THIS_TYPE) {
writeThisType(curAnnot);
} else if (someType == THAT_TYPE) {
writeThatType(curAnnot);
}
}
Para más detalles, tendrá que examinar la PDF Specification, en particular, las descripciones de anotación: "Capítulo 12.5.6 Tipos de anotación".
Si nos puede decir qué tipos le interesan, puedo ayudarlo.
¿De qué tipo de anotaciones está tratando de obtener el texto? –