@@ -165,10 +165,11 @@ def handle(
165165
166166 include_links: Preserve hyperlinks in Markdown output
167167
168- ocr: When true for PDF inputs, detect and OCR images embedded in the selected pages,
169- inserting recognized text at each image's position in page reading order while
170- preserving the PDF text layer. pdf.start/pdf.end limit the inclusive page range.
171- When false, no OCR runs.
168+ ocr: When true for PDF inputs, OCR the selected pages that have no usable text layer
169+ (scans), replacing each recovered page's text with the OCR result while pages
170+ with a real text layer keep it. pdf.start/pdf.end limit the inclusive page
171+ range. Billed at 1 credit per page OCR actually recovered, on top of the base
172+ request cost. When false, no OCR runs.
172173
173174 pdf: PDF page-range options as a JSON object, e.g. {"start": 2, "end": 5}.
174175
@@ -349,10 +350,11 @@ async def handle(
349350
350351 include_links: Preserve hyperlinks in Markdown output
351352
352- ocr: When true for PDF inputs, detect and OCR images embedded in the selected pages,
353- inserting recognized text at each image's position in page reading order while
354- preserving the PDF text layer. pdf.start/pdf.end limit the inclusive page range.
355- When false, no OCR runs.
353+ ocr: When true for PDF inputs, OCR the selected pages that have no usable text layer
354+ (scans), replacing each recovered page's text with the OCR result while pages
355+ with a real text layer keep it. pdf.start/pdf.end limit the inclusive page
356+ range. Billed at 1 credit per page OCR actually recovered, on top of the base
357+ request cost. When false, no OCR runs.
356358
357359 pdf: PDF page-range options as a JSON object, e.g. {"start": 2, "end": 5}.
358360
0 commit comments