nigig-org/crates/apps/pdf/pdf-document/src
andodeki f535296b43 feat(scanner-ocr): on-device recognition behind ocr feature; gate pdf seam
nigig_doc_scanner splits the app shell (Makepad UI, nigig-core/uikit,
device location) from a new ocr feature: pure-Rust TemplateOcr
(Otsu plus 8-connected components plus embedded 5x7 templates for
0-9A-Z, confidence floor 0.80 plus runner-up margin, checked
budgets) with field suggestions and a deterministic fixture renderer
shared with downstream crates. Downstream device crates enable
nigig_doc_scanner/ocr with default-features=false (dep tree proven
free of UI/location crates). Binary requires app.

nigig-pdf-document gates its engine-free ocr seam behind an ocr
cargo feature (default on); recognition must not pull the
document/signing stack.

Verified: scanner ocr-only check plus 11 lib tests green;
pdf-document check green with default and --no-default-features;
pdf ocr tests 5/5. Pre-existing xmp.rs unused_mut warning untouched.
2026-09-25 22:41:38 +03:00
..
annotation_edit.rs feat(pdf): graphics/document port progress + android gates 2026-09-11 05:09:11 +03:00
annotations.rs feat(pdf): internal links that actually go somewhere 2026-08-16 19:34:01 +00:00
appearance.rs feat(pdf): complete Phase 3 document model with real form state 2026-07-27 15:49:46 +00:00
catalog.rs feat(pdf): document creation — outlines, forms, attachments, font subsetting 2026-08-16 21:02:19 +00:00
catalog_edit.rs feat(pdf): outline, page label and struct-tree editing — Phase 5 complete 2026-08-17 12:26:29 +00:00
compact.rs feat(pdf): redaction and object compaction — and three reader defects 2026-08-17 12:20:25 +00:00
destinations.rs feat(pdf): internal links that actually go somewhere 2026-08-16 19:34:01 +00:00
document.rs feat(pdf): graphics/document port progress + android gates 2026-09-11 05:09:11 +03:00
flatten.rs feat(pdf): flatten annotations and form fields into page content 2026-08-17 12:03:59 +00:00
form.rs feat(pdf): AcroForm actions and validation; JavaScript refused, not run 2026-07-31 22:41:50 +00:00
form_actions.rs feat(pdf): AcroForm actions and validation; JavaScript refused, not run 2026-07-31 22:41:50 +00:00
lib.rs feat(scanner-ocr): on-device recognition behind ocr feature; gate pdf seam 2026-09-25 22:41:38 +03:00
ocr.rs feat(scanner-ocr): on-device recognition behind ocr feature; gate pdf seam 2026-09-25 22:41:38 +03:00
page.rs feat(pdf): shadings — the sh operator was parsed and thrown away 2026-08-18 17:30:39 +00:00
page_ops.rs feat(pdf): page operations — insert, reorder, duplicate, delete, import 2026-08-17 10:38:55 +00:00
pdf_a.rs feat(pdf): graphics/document port progress + android gates 2026-09-11 05:09:11 +03:00
reconcile.rs feat(pdf): close the last three Phase 4 items — reconciliation, CFF, cmap 2026-08-17 09:31:41 +00:00
redact.rs feat(pdf): redaction and object compaction — and three reader defects 2026-08-17 12:20:25 +00:00
save.rs feat(pdf): graphics/document port progress + android gates 2026-09-11 05:09:11 +03:00
sign.rs test(pdf): close the two real coverage gaps in the signing module 2026-08-18 17:08:11 +00:00
signature.rs feat(pdf): read signatures, and fix a third ObjRef-destroying resolve 2026-07-31 20:02:29 +00:00
structure.rs feat(pdf): tagged structure tree, and the BMC bug that turned red green 2026-07-31 22:19:45 +00:00
type3.rs test(pdf): assert what a file declares is delivered, and floor the coverage 2026-08-16 19:04:57 +00:00
xmp.rs feat(pdf): graphics/document port progress + android gates 2026-09-11 05:09:11 +03:00