PDF · C# walkthrough
A decision-focused weekly PDF brief
Give reviewers a short report they can act on. A highlighted decision appears first, followed by the progress and risks that explain it and an action table with owners.
- Start with
- Weekly progress, risks, and next actions
- Generate

How it works
Lead with the decision
Use a colored paragraph panel to make the requested decision stand out from the narrative.
Keep the supporting detail short
Separate progress bullets from the issue that needs attention.
Close with ownership
Put the next actions, owners, and due dates into a styled table. Add PDF metadata for the exported file.
The C# source
This is the complete example file used to generate the download. The walkthrough runner creates the output directory and produces the additional previews.
using System.IO;
using OfficeIMO.Pdf;
namespace OfficeIMO.Examples.Showcase.Workflows;
/// <summary>Combines a decision panel, concise narrative, and action table in a weekly PDF brief.</summary>
internal static class WeeklyBrief {
internal static void Create(string folder) {
PdfColor navy = PdfColor.FromRgb(23, 54, 93);
PdfDocument.Create(pdf => pdf.Content(content => content
.H1("The week in delivery", PdfAlign.Left, navy)
.Paragraph(p => p.Text("NORTHWIND / WEEK 38 / 2026"))
.PanelParagraph(p => p.Bold("Decision for this week\n").Text(
"Approve the second pilot group after the recovery exercise is complete."),
new PdfPanelStyle {
Background = PdfColor.FromRgb(232, 246, 237),
BorderColor = PdfColor.FromRgb(117, 170, 135), PaddingX = 12, PaddingY = 12
})
.H2("Progress", PdfAlign.Left, navy)
.Bullets(new[] {
"The first pilot group completed 48 requests.",
"The team reduced the oldest queue from 16 items to 5.",
"The receiving team completed its first supported handover."
})
.H2("Watch closely", PdfAlign.Left, navy)
.Paragraph(p => p.Text("Two access issues remain open. Keep a named escalation contact available during the next pilot session."))
.H2("Next actions", PdfAlign.Left, navy)
.Table(new[] {
new[] { "Action", "Owner", "Due" },
new[] { "Complete recovery exercise", "Operations", "Tuesday" },
new[] { "Close access issues", "Engineering", "Wednesday" },
new[] { "Review pilot expansion", "Product", "Friday" }
}, style: new PdfTableStyle {
HeaderFill = navy, HeaderTextColor = PdfColor.White, HeaderRowCount = 1,
RowStripeFill = PdfColor.FromRgb(241, 245, 249), CellPaddingX = 8, CellPaddingY = 8
})
.Paragraph(p => p.Text("Prepared from sample data. Keep the brief focused on decisions and actions."))),
new PdfOptions { DefaultFontSize = 11 })
.Meta(title: "The week in delivery", author: "OfficeIMO")
.Save(Path.Combine(folder, "example.pdf"));
}
}
Open the C# source fileRun it from the source checkout
Clone the OfficeIMO repository and run this command from its root with the .NET 10 SDK. The first run restores the example project's dependencies.
dotnet run --project OfficeIMO.Examples -f net10.0 -- --showcase-workflows --showcase-example pdf-weekly-briefThe files are written to OfficeIMO.Examples/bin/Debug/net10.0/Documents/Workflows/pdf-weekly-brief/. To use the example in your application, start with the PDF guide and its package setup.
Downloads and scope
What the preview shows
The linked C# example generates this file. The page images are rendered from the downloadable PDF with Poppler.
What to keep in mind
The numbers and actions are demonstration data. This example formats a report; it does not collect live service telemetry.