If you're considering PuppeteerSharp for PDF generation, here's the version of the story that doesn't show up in the "getting started" docs.
/// This sample shows how to create bookmarks. Bookmarks are called outlines /// in the PDF reference manual, that's why you deal with the class PdfOutline.