## storytold/printcraft — v0.2.0…v0.2.1

_33 commits._

### Features
- **Preferences ▸ Identity: the name on new comments, remembered** (b315eff)
- **Add persisted English/Japanese interface language (#47)** (c9d6d39)

### Fixes
- **Fix text editing layout and preserve source PDF font styles (#36)** (e59c9a7)

### Backend
- **Merge pull request #67 from storytold/pr/release-0.2.1** (dcb0023)
- **Release: PrintCraft v0.2.1** (30f09f2)
- **Export tables: linear column lookups, a column cap, RTF spans** (604c560)
- **Export detected tables to office formats** (28108ec)
- **Forms: say so when a document is an XFA form (#60)** (ea2ed3d)
- **M7: move and resize existing text boxes in Edit text (#40)** (93221c6)
- **Identity test: wait for the page's text before selecting it** (1967308)
- **Windows: no console window with the app, and the Start Menu shortcut gets its icon (#57)** (fdfdc87)
- **Identity test: wait for the highlight to land before reading its author** (d7749e6)
- **Comments: an opacity control in the quick bar (per tool, 10-100 %)** (b4e1d48)
- **Comments: Squiggly underline tool (Highlight flyout, All tools, command)** (c02e1e9)
- **Tests: dropping a PDF on the window, and hovering a comment (two features now shipped)** (ead7069)
- **ROADMAP: log session 13's later work (FreeBSD, fuzzing fixes, community PRs, Windows crash)** (8703172)
- **Issue #37: on Windows, draw with Direct3D 12 (OpenGL fallback) and never load Vulkan drivers** (0be70c0)
- **UI: share the Japanese fallback font with printcraft-fonts (one 8.7 MB copy, not two)** (73fdb26)
- **Tests: full screen and the About dialog get their own tests (parity evidence)** (7b85af8)
- **XFDF: gracefully ignore invalid Unicode annotation colours (#48)** (890ae8d)
- **FreeBSD: package in the FreeBSD CI job; release job matches its VM setup** (0447a0f)
- **FreeBSD: release tarball and platform docs** (3774826)
- **FreeBSD: CI builds and tests PrintCraft in a FreeBSD VM** (a416714)
- **Never crash: Type 1 font programs can't hang or overflow the stack (skrifa 0.47)** (20842c7)
- **Merge pull request #45 from storytold/pr/freebsd** (3870bea)
- **FreeBSD CI: git safe.directory, 4 vCPUs, pinned vmactions/freebsd-vm** (49d2a20)
- **FreeBSD CI: install git in the VM (xtask's asset test lists tracked files)** (6fafe67)
- **Never crash: JBIG2 images can't decode billions of pixels** (6e90710)
- **FreeBSD: build and test the workspace in a FreeBSD VM** (9147bd9)
- **Never crash: the fuzz job's eleven hangs finish (parser retries, inline images, Type 3 fan-out)** (2f36466)
- **Updates: check only when asked (no check at start)** (de9b9e8)

### Docs
- **docs: point agents to the shared test corpora (#44)** (1e32ac2)
- **Docs: honest parity assessment, gap list and direction (ROADMAP, README, CLAUDE.md)** (f97684f)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/storytold/printcraft?utm_source=github-action)._