Convertir XLSX en PDF en C#

XlsxToPdfConverter rend un classeur Excel en PDF, sans Excel et sans LibreOffice. La mise en page d'impression propre à chaque feuille décide de ses pages.

using DocToolkit;

byte[] xlsx = File.ReadAllBytes("input.xlsx");
byte[] pdf = XlsxToPdfConverter.Convert(xlsx);
File.WriteAllBytes("output.pdf", pdf);

Ce qu'il faut

  • Aucun navigateur, headless ou non.
  • Aucune installation d'Office, et pas de LibreOffice.
  • Aucun fichier natif : uniquement du code managé.
  • Aucun réseau à l'exécution, sauf si vous le demandez.

Bon à savoir

  • Synchrone : Convert prend le .xlsx sous forme de byte[] et renvoie le PDF sous forme de byte[].
  • Pas de paramètre PageSetup : la mise en page d'impression de chaque feuille du classeur est respectée.
  • Les cellules fusionnées sont rendues ; le sens de droite à gauche d'une feuille ne l'est pas.
  • Une cellule contenant des caractères que les polices accessibles ne couvrent pas est refusée, en indiquant le caractère. Passez PdfFontOptions pour fournir la police.

Installation

dotnet add package Ank.DocToolkit

NuGetDocumentationGitHub