DigitalDoor.Reporting.Entities 1.16.60

dotnet add package DigitalDoor.Reporting.Entities --version 1.16.60
                    
NuGet\Install-Package DigitalDoor.Reporting.Entities -Version 1.16.60
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DigitalDoor.Reporting.Entities" Version="1.16.60" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DigitalDoor.Reporting.Entities" Version="1.16.60" />
                    
Directory.Packages.props
<PackageReference Include="DigitalDoor.Reporting.Entities" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DigitalDoor.Reporting.Entities --version 1.16.60
                    
#r "nuget: DigitalDoor.Reporting.Entities, 1.16.60"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DigitalDoor.Reporting.Entities@1.16.60
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DigitalDoor.Reporting.Entities&version=1.16.60
                    
Install as a Cake Addin
#tool nuget:?package=DigitalDoor.Reporting.Entities&version=1.16.60
                    
Install as a Cake Tool

DigitalDoor.Reporting.Entities

Objects and abstractions for can create a report using DigitalDoor.Reporting. Also can create HTML directly.

How to use:

Install nuget

dotnet add package DigitalDoor.Reporting --version 1.16.57

Interfaces

IPDFReportOutputPort;
IPDFReportPresenter;
IReportAsBytes<TImplementation>;    //specific implementation => class PDFReport: IReportAsBytes<PDFReport> or class JPGReport: IReportAsBytes<JPGReport>
IReportAsBytes;                     //default implementation to get the bytes, usually as PDF
IReportDataRepository;
IReportsOutputPort;
IReportsPresenter;

Models

Setup;
Section;
Row;
Format;
ColumnSetup;
ColumnData;

ValueObjects

Border;
BorderStyle;
Dimension;
Font;
FontStyle;
Item;
Kernel;
Orientation;
SectionType;
Shade;

Enum

TextAlignment;
TextDecoration;
ValueType;

ViewModels

ReportViewModel : Setup;

Helper Class

namespace DigitalDoor.Reporting.Entities.Helpers;

public class PageSize
{
    public static readonly Dimension _4A0 = new Dimension(1682, 2378);
    public static readonly Dimension _2A0 = new Dimension(1189, 1682);
    public static readonly Dimension A0 = new Dimension(841, 1189);
    public static readonly Dimension A1 = new Dimension(594, 841);
    public static readonly Dimension A2 = new Dimension(420, 594);
    public static readonly Dimension A3 = new Dimension(297, 420);
    public static readonly Dimension A4 = new Dimension(210, 297);
    public static readonly Dimension A5 = new Dimension(148, 210);
    public static readonly Dimension A6 = new Dimension(105, 148);
    public static readonly Dimension A7 = new Dimension(74, 105);
    public static readonly Dimension A8 = new Dimension(52, 74);
    public static readonly Dimension A9 = new Dimension(37, 52);
    public static readonly Dimension A10 = new Dimension(26, 37);

    public static readonly Dimension B0 = new Dimension(1000, 1000);
    public static readonly Dimension B1 = new Dimension(707, 707);
    public static readonly Dimension B2 = new Dimension(500, 500);
    public static readonly Dimension B3 = new Dimension(353, 353);
    public static readonly Dimension B4 = new Dimension(250, 353);
    public static readonly Dimension B5 = new Dimension(176, 250);
    public static readonly Dimension B6 = new Dimension(125, 176);
    public static readonly Dimension B7 = new Dimension(88, 125);
    public static readonly Dimension B8 = new Dimension(62, 88);
    public static readonly Dimension B9 = new Dimension(44, 62);
    public static readonly Dimension B10 = new Dimension(31, 44);

    public static readonly Dimension C0 = new Dimension(917, 1297);
    public static readonly Dimension C1 = new Dimension(648, 917);
    public static readonly Dimension C2 = new Dimension(458, 648);
    public static readonly Dimension C3 = new Dimension(324, 458);
    public static readonly Dimension C4 = new Dimension(229, 324);
    public static readonly Dimension C5 = new Dimension(162, 229);
    public static readonly Dimension C6 = new Dimension(114, 162);
    public static readonly Dimension C7 = new Dimension(81, 114);
    public static readonly Dimension C8 = new Dimension(57, 81);
    public static readonly Dimension C9 = new Dimension(40, 57);
    public static readonly Dimension C10 = new Dimension(28, 40);
}

public static class ImageValidator
{
    public static bool IsLikelyImage(string base64String);
    public static bool IsBase64String(string input);
    public static bool IsLikelyBase64(string input);
}

public class ReportFunctions
{
    public object SetValue(Item column, object data);
    public static void AddPagination(List<ColumnData> data, SectionType section);
    public string GetPaperSizeName(Dimension size);
}

public class ReportHtmlGenerator
{
    public ReportHtmlGenerator(ReportViewModel reportModel);        //constructor
    public string GenerateHtml();
}
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0

    • No dependencies.
  • net8.0

    • No dependencies.
  • net9.0

    • No dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on DigitalDoor.Reporting.Entities:

Package Downloads
DigitalDoor.Reporting.Helpers

Tools to use in DigitalDoor Reporting. Multiplatform Image management.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.16.60 302 10/22/2025
1.16.59 341 5/31/2025
1.16.58 334 11/2/2024
1.16.57 421 6/7/2024
1.16.56 309 5/26/2024
1.16.54 320 5/11/2024
1.15.53 279 3/21/2024
1.14.52 296 3/19/2024
1.14.51 413 12/11/2023
1.14.50 302 11/22/2023
1.13.46 295 11/1/2023
1.13.45 499 10/4/2023
1.13.44 592 8/27/2023
1.12.43 373 8/25/2023
0.8.25 343 5/23/2023
0.8.23 687 11/7/2022
0.7.21 2,117 7/28/2022

2025-09-13: Improved method params names to clarify functionality.
 2025-06-01: Update licence. Add support Net 9.
 2024-11-01: Add new overload method for ImageValidator accepting a object and byte[].
 2024-07-06: Create a helper ReportHtmlGenerator to get a HTML version of the report to use anywhere you need.
 2024-05-26: Change to public class ReportFunctions because the static method AddPagination it's in use outside of the assembly.
 2024-05-11: Add new interface to follow OCP and give posibility to create different presenter implementations.
 2024-03-21: Add radius property for the borders.
 2023-12-12: Improvement PDF creation time.
 2023-12-11: Add opacity in the layers/item data.
 2023-11-22: Update frameworks target to NET 6 and NET 8.
 2023-11-01: Add a method to get column data from ReportingViewModel. Modify README start with documentation.
 2023-10-04: Change Section constructor to add new can set the orientation. Fixed when orientation is set, setup correctly the dimensions for the row and body from Page constructor.
 2023-08-27: Add new interface IReportAsBytes fo can generate directly the PDF bytes in only one injection. Cleanup unnecesary commented files.