NETReporter 1.0.0

NETReporter

Moderní knihovna pro generování PDF reportů z JSON šablon

🚀 Instalace

dotnet add package NETReporter

📋 Použití

using NetReporter;

// Registrace služeb
services.AddNetReporter();

// Generování reportu
var renderer = serviceProvider.GetRequiredService<IReportRenderer>();
var pdfBytes = await renderer.RenderAsync(templateJson, dataJson);

// Uložení do souboru
await File.WriteAllBytesAsync("report.pdf", pdfBytes);

Strukturovaný JSON výstup pro automatické kontroly

var renderer = new ReportRenderer();
await using var jsonStream = await renderer.RenderAsync(
	templateStream,
	dataStream,
	new RenderOptions { Format = RenderFormat.Json });

Výstup RenderFormat.Json je určený pro strojové/AI validace parseru a runtime renderingu:

  • obsahuje sekce (pageHeader, reportHeader, content, reportFooter, pageFooter),
  • obsahuje vyrenderované hodnoty uzlů (po vyhodnocení bindingů),
  • pro Image, Barcode a Code2D obsahuje placeholder metadata (source, sourceType, requestedFormat, resolvedFormat, availability, availabilityReason),
  • pro Chart obsahuje vyhodnocená data grafu (categories, series[].values, barvy).

Grafy

Uzel Chart vykreslí sloupcový, pruhový, čárový, plošný, koláčový nebo donut graf nad kolekcí dat:

{
  "type": "Chart",
  "chartType": "Column",
  "source": "$.Months",
  "as": "m",
  "category": "{{m.Month}}",
  "series": [
    { "name": "2025", "value": "m.Revenue" },
    { "name": "2024", "value": "m.RevenuePrev" }
  ],
  "valueAxis": { "format": "N0" }
}

Grafy se kreslí vektorově (SVG) pomocí knihovny OxyPlot.Core (čistě managed, bez nativních závislostí). Popis všech vlastností je v dokumentaci formátu šablon (kapitola Chart).

SVG výstup

var renderer = new ReportRenderer();
await using var svgStream = await renderer.RenderAsync(
	templateStream,
	dataStream,
	new RenderOptions { Format = RenderFormat.Svg });

Výstup RenderFormat.Svg je určený pro lehký vizuální náhled, automatizované porovnávání struktury a integrace, kde je preferovaný vektorový formát.

✨ Funkce

  • ✅ Deklarativní JSON šablony pro definici PDF reportů
  • ✅ Dynamické vyhodnocování dat pomocí C# výrazů
  • ✅ Podpora tabulek, grafů (sloupcové, pruhové, čárové, plošné, koláčové), obrázků a čárových kódů
  • ✅ QR kódy a různé typy čárových kódů (EAN, Code128, atd.)
  • ✅ SVG obrázky s automatickým fallbackem
  • ✅ FlexibilníLayoutEngine pro složité rozvržení
  • ✅ Validace šablon pomocí JSON Schema

📚 Dokumentace

Kompletní dokumentaci k šablonám a API najdete v dokumentaci projektu.

🔧 Požadavky

  • .NET 10.0 nebo vyšší

📝 Licence

Copyright © PeNo


Pro více informací, příkladů a pokročilé použití navštivte repozitář projektu.

No packages depend on NETReporter.

Podrobnosti o změnách najdete na: https://dev.azure.com/advsoft/Knihovny/_git/NetReporter?path=/CHANGELOG.md

Version Downloads Last updated
3.9.2 3 10/28/2026
3.9.1 1 10/27/2026
3.9.0 6 10/20/2026
3.8.1 6 10/19/2026
3.8.0 4 10/19/2026
3.7.0 4 10/19/2026
3.6.0 6 10/17/2026
3.5.1 62 10/15/2026
3.5.0 4 10/15/2026
3.4.2 5 10/15/2026
3.4.0 4 10/12/2026
3.3.0 5 10/11/2026
3.2.2 5 10/10/2026
3.2.1 4 10/10/2026
3.2.0 4 10/10/2026
3.1.1 4 10/09/2026
3.1.0 5 10/09/2026
3.0.1 8 10/08/2026
3.0.0 5 10/08/2026
2.2.1 5 10/05/2026
2.2.0 4 10/05/2026
2.1.0 9 10/04/2026
2.0.1 8 10/04/2026
2.0.0 5 10/03/2026
1.7.0 6 10/03/2026
1.6.0 5 10/02/2026
1.5.0 12 10/02/2026
1.4.0 6 10/01/2026
1.3.0 4 10/01/2026
1.2.0 5 10/01/2026
1.1.1 6 09/30/2026
1.1.0 8 09/30/2026
1.0.10 4 09/29/2026
1.0.9 4 09/29/2026
1.0.8 16 09/29/2026
1.0.7 115 09/24/2026
1.0.6 9 09/24/2026
1.0.5 7 09/24/2026
1.0.4 11 09/24/2026
1.0.3 8 09/24/2026
1.0.2 13 09/23/2026
1.0.0 7 09/23/2026
0.9.1 13 09/23/2026
0.9.0 87 09/14/2026
0.8.1 25 02/20/2026
0.8.1-preview.1 34 02/13/2026
0.7.1-preview.2 32 02/10/2026
0.7.1-preview.1 33 02/10/2026
0.7.0 30 02/10/2026
0.0.6 28 02/01/2026
0.0.5 19 02/01/2026
0.0.0-alpha.0.17 35 02/01/2026