Skip to content

Export a board to PDF, one page per area or the whole board on one page - #97

Merged
marcosqlbi merged 1 commit into
mainfrom
feature/export-e2-pdf
Sep 3, 2026
Merged

Export a board to PDF, one page per area or the whole board on one page#97
marcosqlbi merged 1 commit into
mainfrom
feature/export-e2-pdf

Conversation

@marcosqlbi

Copy link
Copy Markdown
Collaborator

Why

Phase E2 of docs/export.md, on top of the PowerPoint export merged in #92. A deck suits a presenter; a PDF suits an attendee who wants to read, print, or zoom, and PDF has the one freedom a slide lacks: a page of any size. Replaces #93, which GitHub closed when its base branch was deleted after the merge.

What it does

  • PDF is a choice in the same Export dialog. The dialog relabels itself (pages rather than slides), hides the slide size and the notes switch, and shows the page size (A4 or Letter, landscape) and a footer switch. The areas and the preview are exactly those of the deck, so a deck and a PDF of the same board agree.
  • One page per area: the area's picture under a header line with its title, a bookmark per page, and a footer with the board name, the date, and "n of m". The overview page comes first when there are at least two areas.
  • Whole board on one page: a single page the shape of the board, rendered at up to 6000 pixels on the longer edge and sized at 144 dpi (a 41-inch page for a 6000-pixel board, under the 200-inch limit viewers enforce). No header or footer: the page is the board.

Where the code is

  • SQLBI.Whiteboard.Export/PdfDocumentWriter.cs over PdfSharp 6.2.4 (MIT, managed-only, per decision 21). Fonts are read from the Windows fonts folder through a small resolver, since PDFsharp's Core build brings none.
  • ExportSettings gains the format, page size, and footer; BoardExporter branches on the format and renders the poster larger; the dialog gains the PDF controls.
  • Smoke tests read the produced PDF back: page count, A4 landscape size, one bookmark per page, and the fit-to-picture page size.

The smaller calls are listed under E2 in docs/export-decisions.md; decision 26 is updated, and the 1.3.0 release notes gain their PDF entry.

🤖 Generated with Claude Code

Phase of docs/export.md squashed onto its base after the previous phase merged; the tree is unchanged.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
@marcosqlbi
marcosqlbi merged commit 3125352 into main Sep 3, 2026
5 checks passed
@marcosqlbi
marcosqlbi deleted the feature/export-e2-pdf branch September 3, 2026 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant