Compression de PDF : exemples de code

Utilisation d’une API rapide, puissante et sécurisée pour compresser des documents PDF dans différents langages de programmation

Comment compresser des fichiers PDF avec la bibliothèque Aspose.PDF

Aspose.PDF prend en charge la compression des PDF. La manière dont la taille de la majorité des fichiers PDF peut être réduite consiste à réduire la taille des images incorporées dans le document PDF. De plus, nous pouvons linéariser le document afin d’ouvrir la première page le plus rapidement possible :

L’invocation de cette méthode n’enregistre pas réellement le document. Au contraire, le document est uniquement préparé pour avoir une structure optimisée, appelez ensuite « Enregistrer » pour obtenir le document optimisé.

Étapes pour réduire la taille du fichier PDF


Vous avez besoin de bibliothèque Aspose.PDF pour essayer le code dans votre environnement.

  1. Ouvrez un document PDF à l’aide de l’objet Document.
  2. Appelez la méthode d’optimisation de l’objet du document, qui supprime les objets inutiles et compresse les images du fichier PDF
  3. Enregistrez le document optimisé dans le nouveau chemin à l’aide de la méthode Save ().

Exemple pour C# : compresser un document PDF

Réduction de la taille du document PDF à l'aide de C#

Document pdfDocument = new Document(dataDir + "input.pdf");
pdfDocument.OptimizeResources();
pdfDocument.Save(dataDir + "output.pdf");

Comment optimiser un document PDF pour le Web avec Aspose.PDF pour Java

La linéarisation est un processus qui permet de rendre un fichier PDF adapté à la navigation en ligne à l’aide d’un navigateur Web. Un fichier PDF linéarisé est structuré de manière à permettre à la première page du fichier PDF d’être affichée dans le navigateur Web de l’utilisateur avant que le fichier entier ne soit téléchargé depuis le serveur Web. Cela accélère la visualisation sur le Web et l’utilisateur n’a pas besoin d’attendre le chargement complet du PDF pour commencer à visualiser le document. En utilisant la méthode Optimize, nous pouvons :

  • ouvrez la première page le plus rapidement possible ;
  • afficher la page suivante ou suivre un lien vers la page suivante le plus rapidement possible
  • afficher la page de manière incrémentielle au fur et à mesure qu’elle arrive lorsque les données d’une page sont diffusées via un canal lent (afficher les données les plus utiles en premier) ;
  • permettre à l’utilisateur d’interagir, par exemple en suivant un lien, avant même que la page entière ne soit reçue et affichée.

Étapes pour réduire la taille d’un fichier PDF via Java

  1. Ouvrez un document PDF à l’aide de l’objet Document.
  2. Appelez la méthode Optimize sur l’objet du document, qui supprime les objets inutiles et compresse les images du fichier PDF
  3. Enregistrez le document optimisé dans le nouveau chemin à l’aide de la méthode Save ().

Exemple pour Java : compresser un document PDF pour le Web

Réduction de la taille du document PDF à l'aide de Java

Document pdfDocument = new Document(dataDir + "input.pdf");
// Optimize for web
pdfDocument.optimize();
pdfDocument.save(dataDir + "output.pdf");

Comment supprimer ou aplatir des annotations avec Aspose.PDF pour C++

L’ajout d’annotations à votre document PDF augmente naturellement sa taille. Les annotations peuvent être supprimées si elles ne sont pas nécessaires. Ils peuvent être aplatis si nécessaire, mais ne nécessitent aucune modification supplémentaire. Les deux méthodes réduiront la taille du fichier. En utilisant la méthode Flatten, nous pouvons :

  • ouvrez le document le plus rapidement possible ;
  • afficher la page en tant qu’entité unique

Étapes pour réduire la taille d’un fichier PDF via C++

  1. Créez un objet de document nommé document qui ouvre le fichier PDF d’entrée à l’aide de la fonction MakeObject.
  2. Parcourez chaque objet de page de l’objet du document à l’aide d’une boucle pour chaque objet et d’un itérateur basé sur une plage nommé page.
  3. Parcourez chaque objet d’annotation de l’objet de page à l’aide d’une boucle pour chaque objet et d’un itérateur basé sur une plage nommé annotation.
  4. Appelez la méthode Flatten sur l’objet d’annotation pour le fusionner avec le contenu de la page et supprimer toute interactivité.
  5. Appelez la méthode Save sur l’objet du document pour enregistrer le fichier PDF mis à jour.

Exemple pour C++ : aplatir un document PDF

Supprimez les annotations inutiles pour réduire la taille des documents PDF à l'aide de C++

// String for path name
String _dataDir("C:\\Samples\\");

// String for input file name
String infilename("OptimizeDocument.pdf");
// String for output file name
String outfilename("OptimizeDocument_out.pdf");

// Open document
auto document = MakeObject<Document>(_dataDir + infilename);

// Flatten annotations
for(auto page : document->get_Pages())
{
    for(auto annotation : page->get_Annotations())
    {
    annotation->Flatten();
    }
}
// Save updated document
document->Save(_dataDir + outfilename);

À propos de Aspose.PDF API

Une bibliothèque de traitement PDF permettant de créer des applications multiplateformes avec la possibilité de générer, de modifier, de convertir, de rendre, de sécuriser et d’imprimer des documents sans utiliser Adobe Acrobat. Il permet de convertir divers formats de fichiers en PDF, y compris HTML, et de convertir des documents PDF en différents formats de sortie. Les développeurs peuvent facilement afficher tout le contenu HTML dans un PDF d’une seule page et convertir des fichiers HTML avec des balises graphiques SVG en fichiers PDF balisés. L’API .NET PDF offre la compression, la création de tableaux, des fonctions de graphique et d’image, des liens hypertextes, des tâches de marquage et de filigrane, des contrôles de sécurité étendus et une gestion personnalisée des polices.