[Image references 4/6] Highlighted regions #1827

Closed
opened 2026-08-28 09:44:02 +00:00 by brenno · 0 comments
Owner

Parent: #1801
Depends on: #1826
Contract: docs/design/IMAGE_CALLOUTS.md, frozen revision 4 (region rows of §3.1, §5, §6, §8, §9 and §12)

Outcome

Extend the shipped image-reference model with authorable rectangular targets and the highlighted area presentation, without creating a second feature or renderer path.

Scope

  • Allow an author to drag out, select, move and resize a rectangular target in the existing image-reference stage.
  • Provide keyboard-accessible handles and non-drag controls for position and size.
  • Enforce positive dimensions, the documented minimum of 0.02 on both axes and complete in-image bounds.
  • Implement the full target/presentation matrix:
    • point target in highlighted-area mode remains a numbered marker;
    • region target in numbered-marker mode becomes a marker at its centre;
    • region target in highlighted-area mode receives an outline, outside dimming and its reference number.
  • Render the same decision on Flutter, HTML, LaTeX and raster export surfaces through the shared geometry contract.
  • Keep descriptions attached to the reference group and target ordinals stable.
  • Preserve all recovery choices for recrop, zoom, image-width changes and image replacement when a target would become stranded.

Acceptance evidence

  • Every cell of the point/region × numbered-marker/highlighted-area matrix is tested on every renderer.
  • Maximum target count, minimum region, exact edge regions and maximum-plus-one cases are covered.
  • Keyboard-only creation and resizing are functionally tested.
  • Busy, light, dark and greyscale images are visually reviewed at full-slide and slide-rail sizes.
  • Crop, focal-point, zoom and clipping vectors prove the rectangle stays attached to the intended image feature.
  • Redaction, privacy scanning, export alternative text and screen-reader semantics remain correct.
  • Interface strings, user documentation, source map and changelog are updated in this slice.

Boundaries

  • No auto-zoom or invented rectangle around a point.
  • No per-target presentation mode, free colour, line-width or effect controls.
  • Stepwise reveal and arrows remain later slices.
  • Tests, visual review, accessibility, translations and documentation are part of this issue.

Keep model additions minimal: reuse the target and renderer contracts from #1824/#1825/#1826 rather than introducing a separate region subsystem.

Parent: #1801 Depends on: #1826 Contract: `docs/design/IMAGE_CALLOUTS.md`, frozen revision 4 (region rows of §3.1, §5, §6, §8, §9 and §12) ## Outcome Extend the shipped image-reference model with authorable rectangular targets and the **highlighted area** presentation, without creating a second feature or renderer path. ## Scope - Allow an author to drag out, select, move and resize a rectangular target in the existing image-reference stage. - Provide keyboard-accessible handles and non-drag controls for position and size. - Enforce positive dimensions, the documented minimum of `0.02` on both axes and complete in-image bounds. - Implement the full target/presentation matrix: - point target in highlighted-area mode remains a numbered marker; - region target in numbered-marker mode becomes a marker at its centre; - region target in highlighted-area mode receives an outline, outside dimming and its reference number. - Render the same decision on Flutter, HTML, LaTeX and raster export surfaces through the shared geometry contract. - Keep descriptions attached to the reference group and target ordinals stable. - Preserve all recovery choices for recrop, zoom, image-width changes and image replacement when a target would become stranded. ## Acceptance evidence - Every cell of the point/region × numbered-marker/highlighted-area matrix is tested on every renderer. - Maximum target count, minimum region, exact edge regions and maximum-plus-one cases are covered. - Keyboard-only creation and resizing are functionally tested. - Busy, light, dark and greyscale images are visually reviewed at full-slide and slide-rail sizes. - Crop, focal-point, zoom and clipping vectors prove the rectangle stays attached to the intended image feature. - Redaction, privacy scanning, export alternative text and screen-reader semantics remain correct. - Interface strings, user documentation, source map and changelog are updated in this slice. ## Boundaries - No auto-zoom or invented rectangle around a point. - No per-target presentation mode, free colour, line-width or effect controls. - Stepwise reveal and arrows remain later slices. - Tests, visual review, accessibility, translations and documentation are part of this issue. Keep model additions minimal: reuse the target and renderer contracts from #1824/#1825/#1826 rather than introducing a separate region subsystem.
brenno 2026-08-28 20:55:03 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#1827
No description provided.