loading

Screenshot annotation

Paste a screenshot, point at the problem, and black out anything that must not leave the building. Annotations stay editable objects until you export, so nothing is baked in until you say so.

Annotate a screenshot

Press Ctrl+V (⌘V on a Mac) anywhere on this page to bring in a screenshot, or drop an image on the editor below.

Redaction that actually redacts

The redaction tool replaces the pixels underneath it, so the hidden content is genuinely gone from the exported file rather than covered by a layer someone can move. Solid blocks are the safe choice: a strong blur is usually irreversible in practice, but a solid rectangle removes all doubt. Redactions are always drawn before other annotations, so an arrow you place on top is never blurred away.

Redaction is about pixels; metadata is a separate leak. This page exports with MetadataPolicy.Remove - see Metadata and privacy.

C#
// Annotations are records, so building one is a value, not a mutation.await editor.AddAnnotationAsync(new RedactionAnnotation{    Rectangle = new RectangleF(40, 120, 320, 28),    Mode      = RedactionMode.Solid,   // Pixelate and Blur are also available});​await editor.AddAnnotationAsync(new ArrowAnnotation{    Start = new Vector2(500, 380),    End   = new Vector2(360, 220),    Style = ShapeStyle.Default with { Stroke = new StrokeStyle { Width = 6 } },});​await editor.AddAnnotationAsync(new StepAnnotation{    Center = new Vector2(340, 400),    Number = 1,});

Pasting from anywhere on the page

ListenForPasteAsync listens for the browser's own paste event, which carries the image with it - so Ctrl+V works without the clipboard permission prompt. LoadFromClipboardAsync, behind the button, reads the clipboard directly; that needs the permission, which is why the button is only enabled where the capability probe found the API.

Razor
An unhandled error has occurred. Reload 🗙