What's Changed
- M2: a reference in a colour space or array isn't lost: Indexed tables, Pattern spaces, /Decode, /W and functions by @Piohrun in #5539
- fix(render): a JBIG2 page's segments are bounded in what they hold and refer to (hayro-jbig2 patches 5 to 9, hayro-syntax 29) by @Piohrun in #5491
- Reject signed and empty arcs in try_oid by @Silvertree2010 in #5581
- Ignore a negative trailer /Size in incremental saves by @Silvertree2010 in #5566
- tests(engine): the XFA opening scale test times its small and large forms in the same rounds by @guillehr2 in #5586
- M3: the wheel scrolls right after Alt+Tab back, before the mouse moves (#1518) by @Lcoding15 in #5608
- M10: Create ▸ Blank page uses the system region's paper (#5644) by @Lcoding15 in #5651
- M14: the comments panel lays out only the cards in view (#5488) by @Lcoding15 in #5583
- M8: typing the last page of a range keeps what is typed (#5574) by @Lcoding15 in #5579
- fix(create): a /Decode array needs two finite numbers to invert an export by @Piohrun in #5678
- Make MCP aligns enums compatible with Kimi by @Barzabel in #5592
- M2: a shrunk image on a turned or mirrored page snaps to whole pixels (#5530) by @MichaelMuClaude in #5640
- M8: redaction clears the covered pixels of JBIG2 scans instead of removing them (protect.redact-image-pixels) by @Piohrun in #5461
- M11: Monochrome Images averages indexed black-and-white images, the palette saying which sample is dark (optimize.downsample-images) by @Piohrun in #5471
- M11: Monochrome Images reads JBIG2 scans: averaged like any, and stored again as JBIG2 (optimize.mono-compression) by @Piohrun in #5472
- M8: a redacted black-and-white scan is stored as Group 4, or JBIG2 again, when smaller (protect.redact-image-pixels) by @Piohrun in #5474
- feat(ui,annot): customizable hotbar strip, freehand highlight, and moveable navigation rail by @Arch-amon in #5677
- fix(ui): don't check recent files on the UI thread at startup (#5682) by @Elarionus in #5692
- Fix Matrix::invert rejecting valid matrices with a small scale by @Silvertree2010 in #5703
- M7: make page-mark replacement transactional (#5657) by @AdrianTM in #5704
- Repair scan: an object whose header names another generation is still found (#5580) by @Hamza0101 in #5584
- Reject '+' sign in page selection numbers by @Silvertree2010 in #5715
- ui: modernize preferences dialog with card-based layout by @Combiler01 in #5710
- fix(ui): Format text fields read as fields, line up, and fit the Tools pane (#5634) by @RiceDee in #5637
- fix(ui): centre the quick-tools bar in the margin beside the page (#5635) by @RiceDee in #5638
- fix(ui): the rail's page box fits, and the zoom field looks like a field (#5636) by @RiceDee in #5639
- M2.6: the images of a run, and a page's JBIG2 images, share one allowance of decoding by @Piohrun in #5569
- fix(ui): prevent panel resize handle collision with scrollbar (#5730) by @Combiler01 in #5740
New Contributors
- @Barzabel made their first contribution in #5592
- @Arch-amon made their first contribution in #5677
- @Elarionus made their first contribution in #5692
Full Changelog: v0.17.0...v0.18.0