You can create nested tables
See https://www.c-sharpcorner.com/UploadFile/f2e803/basic-pdf-creation-using-itextsharp-part-i/
You can add a page number in a footer
// In the main program
var doc = new Document(pageSize);
var pdfWriter = PdfWriter.GetInstance(doc, ...

