var letterhead = File.ReadAllBytes("letterhead.pdf");

var document = await generator.CreateDocument(doc =>
{
    // Underlay: the letterhead sits behind each page's own content, on every page.
    doc.UnderlayFile(layer => layer.File(letterhead).SourcePages("1").RepeatSourcePages("1"));

    for (var i = 1; i <= 3; i++)
    {
        doc.Page(page =>
        {
            page.Size(PageSize.A4);
            page.Margin(60);
            page.Content(container => container.Text($"Page {i} of the report, on letterhead."));
        });
    }
});