| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- using QuestPDF.Fluent;
- using QuestPDF.Helpers;
- using QuestPDF.Infrastructure;
- namespace QuestPDF.DocumentationExamples;
- public class MergingDocumentsExamples
- {
- [Test]
- public async Task UseOriginalPageNumbersExample()
- {
- Document
- .Merge(
- GenerateReport("Short Document 1", 5),
- GenerateReport("Medium Document 2", 10),
- GenerateReport("Long Document 3", 15))
- .UseOriginalPageNumbers()
- .GeneratePdf("merged.pdf");
- }
-
- [Test]
- public async Task UseContinuousPageNumbersExample()
- {
- Document
- .Merge(
- GenerateReport("Short Document 1", 5),
- GenerateReport("Medium Document 2", 10),
- GenerateReport("Long Document 3", 15))
- .UseContinuousPageNumbers()
- .GeneratePdf("merged.pdf");
- }
-
-
- #region Example document
- private static Document GenerateReport(string title, int itemsCount)
- {
- return Document.Create(document =>
- {
- document.Page(page =>
- {
- page.Size(PageSizes.A5);
- page.Margin(0.5f, Unit.Inch);
-
- page.Header()
- .Text(title)
- .Bold()
- .FontSize(24)
- .FontColor(Colors.Blue.Accent2);
-
- page.Content()
- .PaddingVertical(20)
- .Column(column =>
- {
- column.Spacing(10);
- foreach (var i in Enumerable.Range(0, itemsCount))
- {
- column
- .Item()
- .Width(200)
- .Height(50)
- .Background(Colors.Grey.Lighten3)
- .AlignMiddle()
- .AlignCenter()
- .Text($"Item {i}")
- .FontSize(16);
- }
- });
-
- page.Footer()
- .AlignCenter()
- .PaddingVertical(20)
- .Text(text =>
- {
- text.DefaultTextStyle(TextStyle.Default.FontSize(16));
-
- text.CurrentPageNumber();
- text.Span(" / ");
- text.TotalPages();
- });
- });
- });
- }
- #endregion
- }
|