Comment compresser des PDFs en C#

Comment compresser des PDF en C# ; en utilisant IronPDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF offre de puissantes fonctions de compression PDF en C# qui réduisent la taille des fichiers en compressant les images intégrées et en optimisant les structures arborescentes des PDF, ce qui rend les documents plus faciles à gérer pour le stockage et le partage tout en maintenant la qualité.

La compression PDF réduit la taille des documents PDF afin de les rendre plus faciles à gérer pour le stockage, le partage et la transmission. Que vous travailliez avec des PDF générés à partir de HTML ou des fichiers PDF existants, la compression est essentielle pour optimiser le traitement des documents.

Les images représentent généralement la majeure partie de la taille des fichiers PDF. IronPDF offre des fonctions de compression qui réduisent la taille des images intégrées et optimisent la structure arborescente souvent présente dans les PDF comportant beaucoup de tableaux. Ces techniques fonctionnent de manière transparente avec les PDF créés par diverses méthodes, notamment les conversions URL vers PDF et conversions de fichiers HTML.

Démarrage rapide : Compresser des fichiers PDF avec IronPDF

Réduisez la taille des fichiers PDF à l'aide des outils de compression d'IronPDF. Chargez votre PDF avec PdfDocument.FromFile, appliquez la compression avec la méthode Compress en utilisant les options par défaut, et enregistrez votre PDF optimisé. Ce processus permet de réduire considérablement la taille des fichiers tout en maintenant la qualité.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronPDF avec le gestionnaire de packages NuGet

    PM > Install-Package IronPdf

  2. Copiez et exécutez cet extrait de code.

    PdfDocument.FromFile("input.pdf").CompressImages(40).SaveAs("compressed.pdf");
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronPDF dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer


Comment compresser les images dans les PDF?

<TODO : Ajouter une image ici -->

La qualité de compression JPEG varie de 1 % (très faible qualité) à 100 % (perte minimale). La compréhension de ces niveaux est utile lorsque vous travaillez avec des PDF contenant des images intégrées ou lorsque vous devez gérer les polices et les graphiques.

  • 90 % et plus : haute qualité
  • 80%-90% : qualité moyenne
  • 70%-80% : faible qualité

Expérimentez différentes valeurs pour équilibrer la qualité et la taille du fichier. La réduction de la qualité varie en fonction du type d'image d'entrée : certaines images présentent une perte de clarté plus importante que d'autres. Cela est particulièrement important lorsque vous travaillez avec des images provenant d'Azure Blob Storage ou que vous créez des PDF avec des filigranes personnalisés.

:path=/static-assets/pdf/content-code-examples/how-to/pdf-compression-image.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Compress images in the PDF
pdf.CompressImages(40);

pdf.SaveAs("compressed.pdf");
$vbLabelText   $csharpLabel

Quels résultats puis-je attendre de la compression d'images ?

Réduit de 39.24% !

Comparaison de fichiers montrant compressed.pdf (449 KB) vs nonCompress.pdf (739 KB) démontrant les résultats de la compression d'image

Comment fonctionnent les options de compression d'images?

Deux options clés de compression d'images :

ShrinkImage : réduit la résolution de l'image en fonction de la taille visible dans le PDF. Cette traduction réduit considérablement la taille des fichiers en optimisant les images à haute résolution qui ne nécessitent pas une qualité optimale pour l'usage auquel elles sont destinées.

HighQualitySubsampling : Détermine la méthode de sous-échantillonnage chromatique. "True" utilise le sous-échantillonnage 4:4:4 pour des couleurs pleinement détaillées. "False" utilise un sous-échantillonnage 4:1:1, réduisant les détails des couleurs pour des fichiers plus petits.

Le sous-échantillonnage chromatique réduit les besoins en données tout en préservant la qualité visuelle en abaissant la résolution des informations sur les couleurs tout en maintenant la résolution de la luminosité. L'œil humain est plus sensible à la luminosité qu'aux changements de couleur, ce qui rend cette technique efficace pour les images photographiques.

Dans le sous-échantillonnage 4:4:4, chaque pixel conserve toutes les informations relatives aux couleurs. Dans le sous-échantillonnage 4:1:1, les informations sur les couleurs sont réduites, ce qui diminue la taille du fichier mais aussi le détail des couleurs. Choisissez en fonction de vos exigences en matière de qualité et de taille de fichier.


Comment compresser l'arborescence d'un PDF?

Cette fonctionnalité permet de réduire la taille des PDF en minimisant l'arborescence créée par le moteur Chrome. Elle est plus efficace avec les PDF générés par le moteur Chrome et contenant de nombreuses données sous forme de tableaux. Certains moteurs de rendu produisent des PDF sans cette structure, ce qui rend la fonctionnalité inefficace dans ces cas. Cette technique est précieuse lorsqu'il s'agit de travailler avec des mises en page complexes ou de fusionner plusieurs PDF avec des éléments structurels redondants.

La suppression de l'arborescence peut affecter la mise en évidence du texte et l'efficacité de l'extraction. Tenez compte de ce compromis lorsque vous appliquez la compression, en particulier si les utilisateurs doivent extraire du texte et des images à partir de PDF compressés.

Test the CompressStructTree method using this PDF with table data.

:path=/static-assets/pdf/content-code-examples/how-to/pdf-compression-tree-structure.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("table.pdf");

// Compress tree structure in PDF
pdf.CompressStructTree();

pdf.SaveAs("compressedTable.pdf");
$vbLabelText   $csharpLabel

Quelle réduction de la taille des fichiers la compression de la structure arborescente permet-elle d'obtenir?

Réduit de 67.90% ! Ce pourcentage augmente avec les PDFs de table plus volumineux.

Comparaison de fichiers montrant les résultats de la compression entre table.pdf (52 KB) et table.pdf (162 KB)

Comment appliquer les deux méthodes de compression ensemble?

La méthode Compress d'IronPDF configure simultanément la compression des images et des arborescences. Cette approche combinée est particulièrement efficace pour les PDF complexes contenant des images et des données structurées, tels que les rapports avec graphiques ou les documents avec tableaux et graphiques intégrés.

:path=/static-assets/pdf/content-code-examples/how-to/pdf-compression-compress.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

CompressionOptions compressionOptions = new CompressionOptions();

// Configure image compression
compressionOptions.CompressImages = true;
compressionOptions.JpegQuality = 80;
compressionOptions.HighQualityImageSubsampling = true;
compressionOptions.ShrinkImages = true;

// Configure tree structure compression
compressionOptions.RemoveStructureTree = true;

pdf.Compress(compressionOptions);

pdf.SaveAs("compressed.pdf");
$vbLabelText   $csharpLabel

Quelles sont les options de compression disponibles ?

  • CompressImages : Compresse les images existantes en utilisant l'encodage JPG. La valeur par défaut est false. Traite toutes les images intégrées avec les paramètres de compression spécifiés.

  • RemoveStructureTree : réduit considérablement la taille du document en supprimant l'arbre de structure. Peut avoir un impact sur la sélection du texte dans des documents complexes. Très efficace pour les PDF générés en HTML et contenant des tableaux.

  • JpegQuality : Définit la qualité JPEG (1-100) pour la compression d'image. La valeur par défaut est 42. Des valeurs plus élevées préservent les détails mais augmentent la taille du fichier.

  • Sous-échantillonnage d'image de haute qualité : Choisissez le sous-échantillonnage 4:4:4 pour une meilleure qualité (true) ou 4:1:1 pour des fichiers plus petits (false). Dépend des exigences en matière de précision des couleurs.

  • ShrinkImages : réduit la résolution de l'image pour en réduire considérablement la taille. Efficace pour les images à haute résolution qui dépassent les exigences d'affichage.

Tenez compte de votre cas d'utilisation lors de l'application de la compression. À des fins d'archivage, la qualité peut primer sur la taille du fichier. La distribution sur le web peut nécessiter des fichiers plus petits. Affinez les paramètres selon que vous travaillez avec des documents conformes au format IronPdf/A ou des PDF standard.

Prêt à voir ce que vous pouvez faire d'autre? Consultez notre page de didacticiels ici : Fonctionnalités supplémentaires

Questions Fréquemment Posées

Dans quelle mesure la compression permet-elle de réduire la taille des fichiers PDF ?

IronPDF peut réduire la taille des fichiers PDF jusqu'à 75 % grâce à la compression des images et à l'optimisation de la structure. Dans l'exemple présenté, un fichier a été réduit de 39,24 % grâce à des techniques de compression d'images.

Quelles sont les principales techniques de compression des PDF en C# ?

IronPDF propose deux techniques de compression principales : la compression d'images à l'aide de la méthode CompressImages, qui réduit la taille des images intégrées, et la compression d'arbres de structure à l'aide de la méthode CompressStructTree, qui optimise l'arborescence interne du PDF, ce qui est particulièrement bénéfique pour les documents comportant beaucoup de tableaux.

Quels niveaux de qualité dois-je utiliser pour la compression JPEG dans les PDF ?

IronPDF prend en charge une qualité de compression JPEG allant de 1 % à 100 %. Les niveaux recommandés sont les suivants : 90% et plus pour la haute qualité, 80%-90% pour la qualité moyenne, et 70%-80% pour la basse qualité. Le réglage optimal dépend de l'équilibre entre la taille du fichier et les exigences de qualité visuelle.

Puis-je compresser un PDF en une seule ligne de code ?

Oui, IronPdf permet la compression de PDF en une seule ligne de code : PdfDocument.FromFile("input.pdf").CompressImages(40).SaveAs("compressed.pdf") ; Ceci charge un PDF, applique une compression avec une qualité de 40%, et enregistre le résultat.

La compression fonctionne-t-elle avec les PDF créés à partir de HTML ?

Oui, les fonctions de compression d'IronPDF fonctionnent de manière transparente avec les PDF créés par diverses méthodes, notamment les conversions de chaînes HTML en PDF, les conversions d'URL en PDF et les conversions de fichiers HTML, ainsi qu'avec les fichiers PDF existants.

Quels sont les types de contenu qui bénéficient le plus de la compression PDF ?

Les images représentent généralement la majeure partie de la taille des fichiers PDF, ce qui fait des documents contenant beaucoup d'images des candidats idéaux pour la compression. En outre, les PDF comportant des structures de tableaux complexes bénéficient de la fonction de compression des arbres de structure d'IronPDF.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Revu par
Jeff Fritz
Jeffrey T. Fritz
Responsable principal du programme - Équipe de la communauté .NET
Jeff est également responsable principal du programme pour les équipes .NET et Visual Studio. Il est le producteur exécutif de la série de conférences virtuelles .NET Conf et anime 'Fritz and Friends', une diffusion en direct pour développeurs qui est diffusée deux fois par semaine où il parle de technologie et écrit du code avec les téléspectateurs. Jeff écrit des ateliers, des présentations et prévoit du contenu pour les plus grands événements de développement Microsoft, y compris Microsoft Build, Microsoft Ignite, .NET Conf et le sommet Microsoft MVP
Prêt à commencer?
Nuget Téléchargements 17,012,929 | Version : 2025.12 vient de sortir