drawingml 1.0.0

Shared DrawingML content model (shapes, fills, colors, lines) for the WordprocessingML/SpreadsheetML/PresentationML crates.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# drawingml

Published on crates.io as `drawingml` (the plain name `drawing` was already taken by an unrelated crate) — referred to simply as `drawing` inside the workspace and in every `use drawing::...` in the code, via a local package alias.

Shared DrawingML content model — shape geometry, transforms, fills, colors, lines, visual effects, and text bodies (paragraphs/runs/bullets) — factored out once and reused by `word-ooxml`, `excel-ooxml`, `powerpoint-ooxml`, and `chart` instead of being duplicated three times over.

Builds on `xml-core` (low-level XML) only.

Models a shape's *content* only — `CT_ShapeProperties`, the type behind `<a:spPr>` wherever it appears (position/size via `Transform2D`, outline via `Geometry`, interior paint via `Fill`/`Color`, stroke via `Line`, effects via `EffectList`) — never a shape's *anchor/container*, since how a shape is placed within its host document (`xdr:twoCellAnchor` for Excel, `wp:inline`/`wp:anchor` for Word, direct placement in `p:spTree` for PowerPoint) is structurally different per format and stays each host crate's own responsibility.

Part of the [office-toolkit](https://github.com/Fab2bprog/office-toolkit) workspace — see that repository's `docs/Architecture.md` for how this crate fits into the rest of the stack.

## License

Licensed under the [MIT license](https://github.com/Fab2bprog/office-toolkit/blob/main/LICENSE).