# feat: resize and describe stored pictures through the page model · clo/snowbound

[View on GitCafe](https://git.cafe/clo/snowbound/commit/d0ec66f9b4d3023668fa156d8a0903b3b5b8a316)

Repository: [clo/snowbound](https://git.cafe/clo/snowbound)

Visibility: public

Requested revision: d0ec66f9b4d3023668fa156d8a0903b3b5b8a316

Requested commit: d0ec66f9b4d3023668fa156d8a0903b3b5b8a316

Commit: d0ec66f9b4d3023668fa156d8a0903b3b5b8a316

Tree: 313733ce0e5280fa41d4d86a19594a1e4d031424

Author: clover caruso

Committer: clover caruso

## Message

```
feat: resize and describe stored pictures through the page model

A picture paragraph in the model can change its layout width and height,
the user-set flag and its alternative text; the writer stores exactly what
OneNote 2010 was observed to store when it resized a Rust-written picture
through the COM API (corpus/picture-edit/native-resize, authored by
tools/native/picture-edit.ps1): the layout size and user flag on the picture
object, with the intrinsic picture size untouched. Clearing the size or the
description removes the properties, so a reset page equals the original.
The payload, intrinsic size, background state and position stay fixed.

corpus/picture-edit now holds three captures: inserted (the Rust-inserted
picture cold read), native-resize (OneNote editing that picture, kept as a
reader fixture for a Rust picture rewritten natively with its DPAPI blob and
hash) and resized (a Rust resize of the native picture cold read with its
size and description). tools/test_picture_edit.py checks all three.

Assisted-by: claude-fable-5.1

```

## Parents

- [cb4842d4e6047a60f7c99dcbf033c4fe366e8b8f](https://git.cafe/clo/snowbound/commit/cb4842d4e6047a60f7c99dcbf033c4fe366e8b8f?format=markdown)

[Source at this commit](https://git.cafe/clo/snowbound/tree/d0ec66f9b4d3023668fa156d8a0903b3b5b8a316?format=markdown)
