Repository navigation
v0.3.0
AirPDF 0.3.0
Rotated pages
- Rotated pages now work end to end. Links, search highlights and text selection used to
do nothing on a page with a non-zero /Rotate; all three are supported now, at 90, 180
and 270 degrees. - The fix is a shared page-space to display-space transform plus a text layer that reports
characters in reading order, verified by rendering rotated fixtures and checking that
each computed rectangle covers the ink that was drawn.
Reading
- The text layer is read through PDFium instead of PdfPig, using the same document handle
the pages are rendered from. PdfPig applied /Rotate to its letters before grouping them,
so a quarter turn came back as single letters and a half turn as reversed text. - Chinese and Japanese text keeps per-character selection, and searching for a multi
character CJK term no longer fails because spaces were inserted between characters. - PdfPig still supplies document metadata and the bookmark outline.
Packaging
- The Windows download is roughly halved: 53 MB to 28 MB, by publishing trimmed. The
release step fails on any trimming warning instead of shipping a build whose reflection
paths were removed, and the same check runs on every pull request. - macOS and Linux are unchanged for this release.
Under the hood
- Settings are serialized through a source-generated context, the search whitespace
matcher is a generated regex, and every XAML binding is compiled. Trimming and NativeAOT
analysis now reports no warnings for the whole solution. - 90 tests, up from 52.