Program.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // See https://aka.ms/new-console-template for more information
  2. using QuestPDF.Fluent;
  3. using QuestPDF.Helpers;
  4. using QuestPDF.Infrastructure;
  5. using QuestPDF.Previewer;
  6. QuestPDF.Settings.EnableCaching = true;
  7. QuestPDF.Settings.EnableDebugging = true;
  8. Document
  9. .Create(container =>
  10. {
  11. container.Page(page =>
  12. {
  13. page.Size(PageSizes.A4);
  14. page.Margin(2, Unit.Centimetre);
  15. page.PageColor(Colors.White);
  16. page.DefaultTextStyle(x => x.FontSize(20));
  17. page.Header()
  18. .Text("Hello PDF!")
  19. .SemiBold().FontSize(36).FontColor(Colors.Blue.Medium);
  20. page.Content()
  21. .PaddingVertical(1, Unit.Centimetre)
  22. .Column(x =>
  23. {
  24. x.Spacing(20);
  25. x.Item().Text(Placeholders.LoremIpsum());
  26. x.Item().Image(Placeholders.Image(200, 100));
  27. foreach (var i in Enumerable.Range(0, 50))
  28. {
  29. x.Item()
  30. .Height(80).Width(100 + i * 5)
  31. .Background(Colors.Grey.Lighten3)
  32. .AlignCenter().AlignMiddle()
  33. .Text(i);
  34. }
  35. //x.Item().Width(1000);
  36. });
  37. page.Footer()
  38. .AlignCenter()
  39. .Text(x =>
  40. {
  41. x.Span("Page ");
  42. x.CurrentPageNumber();
  43. });
  44. });
  45. })
  46. .ShowInPreviewer();