feat(pdftract-4hle): implement 7.6.4 links + annotations JSON output
Add JSON conversion functions, schema integration, and extraction
pipeline wiring for Phase 7.6 hyperlink and annotation extraction.
Changes:
- Create annotation/json.rs with conversion functions (link_to_json,
annotation_to_json, fit_type_to_json, sort_links, sort_annotations)
- Add 13 comprehensive tests covering all link/annotation types
- Wire Phase 7.6 annotation extraction into main extract.rs pipeline
- Update docs/schema/v1.0/pdftract.schema.json with LinkJson,
AnnotationJson, DestArrayJson, DestTypeJson, AnnotationSpecificJson
- Add links to root schema properties and required fields
- Add annotations array to PageResult
Schema definitions include all 8 PDF fit types (XYZ, Fit, FitH, FitV,
FitR, FitB, FitBH, FitBV) and all major annotation subtypes (TextMarkup,
Stamp, FreeText, Text, Ink, Line, Polygon, FileAttachment).
Closes pdftract-4hle (7.6.4)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>