A developer is building an application that processes scanned architectural blueprints uploaded as multi-page PDFs. Pages must be analyzed for specific structural elements. The team converts each page to a separate PNG image. On complex blueprint pages, Claude accurately identifies major structural components but misses small annotation labels (font size ~6pt). What is the best solution that stays within the API's image handling constraints?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Here's the deal — c is correct because many architectural blueprint PDFs retain a text layer from the CAD authoring tool (AutoCAD, Revit) even when scanned. Extracting this text programmatically with a PDF library (pdfplumber, PyMuPDF) and passing it alongside the image gives Claude accurate annotation text without depending on vision-based OCR of tiny fonts.
Full explanation below image
Full Explanation
C is correct because many architectural blueprint PDFs retain a text layer from the CAD authoring tool (AutoCAD, Revit) even when scanned. Extracting this text programmatically with a PDF library (pdfplumber, PyMuPDF) and passing it alongside the image gives Claude accurate annotation text without depending on vision-based OCR of tiny fonts. This combines the spatial understanding from the image with reliable text from the native text layer. A is also a valid technique and worth considering, but C is more robust because it does not depend on the crop correctly targeting the annotation region or on Claude's ability to read 6pt text even at 4x zoom. B is wrong because the Anthropic API does resize images for processing; very high source DPI does not proportionally increase the effective resolution Claude uses, and there is a practical limit on image token consumption. D is wrong because the Anthropic API does not natively parse SVG XML as structured data; it would be rasterized for vision processing, losing the resolution advantage, or interpreted as text, which would be unmanageable for complex blueprint SVGs.