Comment compresser les PDF
La compression PDF est le processus de réduction de la taille d'un fichier PDF (Format de document portable) document. Cette compression est appliquée pour rendre le fichier PDF plus facile à gérer pour le stockage, le partage et la transmission, en particulier lorsqu'il s'agit de documents volumineux ou riches en images.
Les images occupent généralement une part importante de la taille des fichiers PDF, car elles sont généralement plus volumineuses que le texte et les autres contenus. IronPDF offre des fonctions de compression des PDF qui permettent de compresser les images intégrées et de réduire la structure arborescente qui accompagne souvent les données des tableaux dans les PDF.
Comment compresser les PDF
- Télécharger la bibliothèque C# pour la compression des PDF
- Importer un PDF existant ou créer un nouveau PDF
- Utiliser le
CompressImages
pour réduire la taille des images dans le PDF - Utiliser le
CompressStructTree
pour minimiser l'arborescence du PDF - Exporter le document PDF compressé
Installer avec NuGet
Install-Package IronPdf
Télécharger DLL
Installation manuelle dans votre projet
Installer avec NuGet
Install-Package IronPdf
Télécharger DLL
Installation manuelle dans votre projet
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit.
Découvrez IronPDF sur NuGet pour une installation rapide et un déploiement facile. Avec plus de 8 millions de téléchargements, il transforme PDF avec C#.
Install-Package IronPdf
Envisagez d'installer le IronPDF DLL directement. Téléchargez et installez-le manuellement pour votre projet ou sous forme de GAC : {{lienDllAfficher}}
Installation manuelle dans votre projet
Télécharger la DLLExemple de compression d'images
Selon le mode de redimensionnement des JPEG, une qualité de 100 % n'entraîne pratiquement aucune perte, et 1 % est une image de sortie de très faible qualité.
- 90% et plus : considéré comme de haute qualité
- 80%-90% : qualité moyenne
70%-80% : considéré comme de faible qualité
N'hésitez pas à explorer différentes valeurs pour comprendre le compromis entre la qualité et la taille du fichier. Il est important de noter que la réduction de la qualité varie en fonction du type d'image d'entrée, et que certaines images peuvent présenter une réduction de la clarté plus importante que d'autres.
: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");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
' Compress images in the PDF
pdf.CompressImages(40)
pdf.SaveAs("compressed.pdf")
Compression d'images - Comparaison de la taille
Réduit de 39,24%!!
Comprendre les options de compression d'image
Entrons dans les détails de nos options de compression d'image :
ShrinkImage : Cette fonction réduit la résolution de l'image en fonction de sa taille visible dans le document PDF. Ce faisant, il réduit considérablement la taille et la qualité des images, les optimisant pour un stockage et une transmission efficaces.
HighQualitySubsampling : Ce paramètre détermine la méthode de sous-échantillonnage chromatique utilisée pour la compression de l'image. La sélection de "True" utilise le sous-échantillonnage chromatique 4:4:4, ce qui garantit une image de meilleure qualité avec des couleurs détaillées. À l'inverse, le choix de "Faux" utilise le sous-échantillonnage chromatique 4:1:1, qui sacrifie certains détails des couleurs pour réduire davantage la taille de l'image.
Le sous-échantillonnage chromatique est une technique cruciale dans la compression d'images numériques, qui vise à réduire les données nécessaires pour représenter une image tout en préservant sa qualité visuelle. Il y parvient en réduisant de manière sélective la résolution des informations sur les couleurs (chrominance) tout en maintenant la résolution complète des informations relatives à la luminosité (luminance).
Dans le sous-échantillonnage chromatique "4:4:4", chaque pixel conserve ses propres informations de couleur, ce qui n'entraîne aucune perte de détails de couleur. Inversement, dans le sous-échantillonnage chromatique "4:1:1", les informations sur les couleurs sont sous-échantillonnées à une résolution inférieure, ce qui réduit les détails des couleurs mais aussi la taille du fichier.
Exemple de structure arborescente compressée
Cette fonctionnalité est utilisée pour réduire la taille du PDF en minimisant l'arborescence créée par le moteur Chrome. Elle fonctionne bien avec les PDF générés par le moteur Chrome à partir de HTML contenant de nombreuses données sous forme de tableaux. Certains moteurs de rendu PDF peuvent produire des PDF sans cette structure arborescente, ce qui rend la fonction inefficace.
L'inconvénient de la suppression de toute cette arborescence est que, pour certains PDF, la mise en évidence du texte ou l'extraction peuvent ne pas fonctionner aussi efficacement.
Utilisons le tableau.pdf pour tester la méthode CompressStructTree
.
: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");
Imports IronPdf
Private pdf As PdfDocument = PdfDocument.FromFile("table.pdf")
' Compress tree structure in PDF
pdf.CompressStructTree()
pdf.SaveAs("compressedTable.pdf")
Compression de l'arborescence - Comparaison de la taille
Réduit de 67,90%!! Ce pourcentage augmente avec la taille du tableau PDF.
Méthodes de compression avancées
IronPDF dispose également d'une méthode Compress
qui peut être utilisée pour configurer à la fois la compression d'image et la compression de structure d'arbre, ce qui rend la compression de documents plus facile que jamais.
: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");
Imports IronPdf
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
Private compressionOptions As 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")
Explorer les options disponibles
- CompressImages : Contrôle si les images existantes dans le document sont compressées à l'aide de l'encodage JPG. La valeur par défaut est false.
- RemoveStructureTree : La suppression de l'arbre de structure peut réduire de manière significative l'espace disque utilisé par le document. Cependant, elle peut avoir un impact négatif sur la sélection du texte, en particulier dans les documents complexes.
- JpegQuality : Spécifie la qualité JPEG (de 1 à 100) à utiliser lors de la compression de l'image. La valeur par défaut est 42.
- HighQualityImageSubsampling : Cette propriété détermine s'il faut utiliser le sous-échantillonnage 444 chroma pour une meilleure qualité d'image (vrai) ou 411 chroma subsampling pour réduire davantage la taille de l'image (faux).
- ShrinkImages : La réduction de la résolution de l'image peut réduire considérablement la taille et la qualité des images dans le document.