anki decks: add --skip-ones multiplication/division variant; switch shapes/clocks/currency images from SVG to PNG

--skip-ones drops every fact involving 1 (trivial, not worth drilling),
121 cards instead of 144 for both multiplication and division.

SVG images never displayed on AnkiDroid (mobile) despite rendering fine
on desktop Anki — a long-documented, still-open AnkiDroid limitation
(multiple open ankidroid/Anki-Android GitHub issues), not a bug in the
generated markup. Rewrote shape/clock/coin image generation to render
PNG via Pillow instead, preserving the same geometry math (regular
polygons, clock-hand angles including the fractional hour-hand
movement, coin layouts) — card counts and content are unchanged, only
the image format.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014DyceEVVeQ33EeS6C1PDv5
This commit is contained in:
Claude
2026-09-10 12:28:28 +00:00
parent 8f83c96ca7
commit e4e32f20e7
3 changed files with 134 additions and 71 deletions
+7 -5
View File
@@ -309,11 +309,13 @@ exact usage is documented in `tools/anki-deck-math.py`'s own header
docstring; the other two scripts point back to it rather than repeating
the same instructions three times.
Shapes, clocks, and coin images are drawn programmatically (SVG) rather
than AI-generated — image generation is a poor fit for content that has
to be exactly correct (an exact clock time, an exact side count), not
just plausible-looking; see `tools/anki-deck-visual.py`'s own docstring
for more on that tradeoff.
Shapes, clocks, and coin images are drawn programmatically (PNG, via
Pillow) rather than AI-generated — image generation is a poor fit for
content that has to be exactly correct (an exact clock time, an exact
side count), not just plausible-looking. PNG rather than SVG specifically
because AnkiDroid has long-standing, still-open bugs rendering SVG
`<img>` tags on mobile; see `tools/anki-deck-visual.py`'s own docstring
for more on both tradeoffs.
## Layout