fix(extract): a page with nothing to read gets the no_text reason in per-page extraction

Closed
ER
2d ago
+166-7

Classification gives the no_text reason to a page it sends to OCR with no text, no image and no other reason, but extract_pages_markdown_mem reported such a page with needs_ocr and no reason.
The per-page path now reads the same signal from the page content and reports no_text when the page's Markdown is empty and no other reason applies. needs_ocr is unchanged.
Tested with a blank page, which now matches detect_pdf_mem, an image-only page, which does not get the reason, a page of outlined glyphs, which keeps vector_text alone, a page of spaces in a font with no Unicode mapping, which does not get it, and a page whose only text is a filled form field, which keeps its text and needs no OCR. Related to #319.