ExcelToPdf 6.0.1

.NET 6.0
Install-Package ExcelToPdf -Version 6.0.1
dotnet add package ExcelToPdf --version 6.0.1
<PackageReference Include="ExcelToPdf" Version="6.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ExcelToPdf --version 6.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ExcelToPdf, 6.0.1"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install ExcelToPdf as a Cake Addin
#addin nuget:?package=ExcelToPdf&version=6.0.1

// Install ExcelToPdf as a Cake Tool
#tool nuget:?package=ExcelToPdf&version=6.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

ExcelToPdf

中文版 | English

This is a simple project to export Excel to PDF.

It consists of two steps:

  1. Use NpoiExcelHelper. ExcelToHtml method will excel export to HTML
  2. Use Pdfhelper.HtmlToPdf to convert HTML to PDF

Npoi and WkHtmlToPdf did almost all the work, and because of that, please go to these two projects to view the relevant documents, thank them very much

This project also provides a simple encapsulation of customizations, see the customization section of the documentation.

Install

Install-Package ExcelToPdf -Version 6.0.0

Sample

For details, please refer to ExcelToPdfSample project.

Dependency Injection

// in StartUp.cs
services.AddExcelToPdf("temp");

Export

private readonly ILogger<IndexModel> _logger;
private readonly ExcelToPdfService _excelToPdfService;

// inject ExcelToPdfService from controller
public IndexModel(ILogger<IndexModel> logger, ExcelToPdfService excelToPdfService)
{
	_logger = logger;
	_excelToPdfService = excelToPdfService;
}

// export to pdf
public void OnPostSimpleExport()
{
	FileInfo excelFileInfo, htmlFileInfo, pdfFileInfo;
	SetupSample(out excelFileInfo, out htmlFileInfo, out pdfFileInfo);

	// export pdf
	_excelToPdfService.ExportToPdf(excelFileInfo.FullName, pdfFileInfo.FullName);

	this.Message = $"Export Success, Pdf file save to: {pdfFileInfo.FullName}";
}

Note that using asp.net requires the injection of IConverter first, as follows:

in StartUp.cs

// injection
services.AddHtmlToPdf();

Custom

Custom excel export to html

With the NpoiExcelHelper.ExcelToHtml method, can use the configOptions parameters to HTML do custom processing for export, specific definition refer to:Npoi ExcelToHtmlConverter

Custom pdf convert

With the PdfHelper.HtmlToPdf method, can use configGlobalSettings parameter to custom pdf:

// ... other code ...
// export pdf
_excelToPdfService.ExportToPdf(excelFileInfo.FullName, pdfFileInfo.FullName, configPdfGlobalSettings: config =>
{
	config.Orientation = Orientation.Landscape;
	config.ColorMode = ColorMode.Grayscale;
	config.Margins.Left = 150;
	config.Margins.Top = 50;
});
// ... other code ...

GlobalSettings Commonly used attributes:

parameter comment default note
Orientation he orientation of the output document portrait Portrait, Landscape
ColorMode Should the output be printed in color or gray scale color
UseCompression Should we use loss less compression when creating the pdf file. true
DPI What dpi should we use when printing 96
DocumentTitle The title of the PDF document empty
ImageDPI The maximal DPI to use for images in the pdf document 600
imageQuality The jpeg compression factor to use when producing the pdf document 94
PaperSize Size of output paper
PaperWidth The height of the output document
PaperHeight The width of the output document
MarginLeft Size of the left margin
MarginRight Size of the right margin
MarginTop Size of the top margin
MarginBottom Size of the bottom margin

Docker and linux

How-to-use-NPOI-on-Linux

Product Versions
.NET net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
6.0.1 428 1/26/2022
6.0.0 161 1/24/2022