var generator = new PdfGenerator();

var document = await generator.CreateDocument(doc =>
{
    doc.Page(page =>
    {
        page.Size(PageSize.A4);
        page.Margin(36);
        page.Footer(footer => footer.Text(t =>
        {
            t.Alignment(TextAlignment.Center);
            t.Span("Doc ");
            t.CurrentPageNumber();
            t.Span("/");
            t.TotalPages();
            t.Span("  ·  Chapter ");
            t.PageNumberWithinSection("chapter1");
            t.Span("/");
            t.TotalPagesWithinSection("chapter1");
        }));
        page.Content(content => content.Column(column =>
        {
            column.Spacing(12);
            column.Item().Text(t => t.Span("Front matter (outside the section)").Bold().FontSize(16));
            for (var i = 0; i < 10; i++)
            {
                column.Item().Height(28).Text($"Front matter, line {i + 1}. Not counted by the chapter's own page numbers.");
            }

            column.Item().BeginPageNumberOfSection("chapter1").Text(t => t.Span("Chapter 1").Bold().FontSize(16));
            for (var i = 0; i < 24; i++)
            {
                var paragraph = column.Item().Height(28);
                if (i == 23) paragraph = paragraph.EndPageNumberOfSection("chapter1");
                paragraph.Text($"Chapter 1, paragraph {i + 1}.");
            }

            column.Item().Text(t => t.Span("Appendix (outside the section)").Bold().FontSize(16));
            for (var i = 0; i < 10; i++)
            {
                column.Item().Height(28).Text($"Appendix, line {i + 1}. Also not counted by the chapter's own page numbers.");
            }
        }));
    });
});

var stream = new MemoryStream();
document.Save(stream);