ContinousPage.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using System.Diagnostics;
  2. using System.Linq;
  3. using NUnit.Framework;
  4. using QuestPDF.Fluent;
  5. using QuestPDF.Helpers;
  6. using QuestPDF.Infrastructure;
  7. namespace QuestPDF.Examples
  8. {
  9. public class ContinuousPageDocument : IDocument
  10. {
  11. public DocumentMetadata GetMetadata() => DocumentMetadata.Default;
  12. public void Compose(IDocumentContainer container)
  13. {
  14. container.Page(page =>
  15. {
  16. page.Margin(20);
  17. page.ContinuousSize(150);
  18. page.Header().Text("Header");
  19. page.Content().PaddingVertical(10).Border(1).Padding(10).Column(column =>
  20. {
  21. foreach (var index in Enumerable.Range(1, 100))
  22. column.Item().Text($"Line {index}").FontColor(Placeholders.Color());
  23. });
  24. page.Footer().Text("Footer");
  25. });
  26. }
  27. }
  28. public class ContinuousPageExamples
  29. {
  30. [Test]
  31. public void ContinuousPage()
  32. {
  33. var path = "example.pdf";
  34. new ContinuousPageDocument().GeneratePdf(path);
  35. Process.Start("explorer", path);
  36. }
  37. }
  38. }