Le code pour compresser DOCX en C++

Bibliothèque C++ hautes performances pour optimiser le contenu et la taille de DOCX en conservant la qualité d'origine et les données de base

Il s'agit d'une solution professionnelle pour optimiser et compresser DOCX en C++. Utilisez C++ pour optimiser DOCX la vitesse d'optimisation/compression. Essayez-le en ligne gratuitement!

Afficher l'extrait de code

Compressez le DOCX fichier dans C++

Réduisez la taille des gros DOCX fichiers sans perte de qualité. Supprimez les données inutiles et inutilisées. Réduisez la taille d'un DOCX fichier dans le code. La C++ bibliothèque fournit aux développeurs une API intégrée pour optimiser le contenu DOCX.

Réduisez la taille des DOCX fichiers à l'aide de C++

C++ bibliothèque est une solution autonome et ne nécessite l'installation d'aucun logiciel tiers.

Compression sans perte et optimisation approfondie du contenu simplifiées avec 'Aspose.Words for C++'. L'exemple suivant montre comment optimiser le contenu d'un DOCX fichier dans C++:

Exemple de code dans C++ pour compresser DOCX fichiers
Téléchargez un fichier que vous souhaitez optimiser/compresser
Exécuter le code
Sélectionnez le format cible dans la liste
dotnet add package Aspose.Words.Cpp
Copie
using namespace Aspose::Words;

auto doc = MakeObject<Document>(u"Input.docx");
doc->Cleanup();

auto nodes = doc->GetChildNodes(NodeType::Shape, true);
for (const auto& shape : System::IterateOver<Shape>(nodes))
{
    if (shape->get_HasImage())
    {
        //  C'est au développeur de choisir la bibliothèque pour la compression d'image.
        auto image = 
           System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream());

        // ...
        //  Compresser l'image et la remettre dans la forme.
        shape->get_ImageData()->SetImage("yourCompressedImage");
    }
}

auto saveOptions = MakeObject<OoxmlSaveOptions>();
saveOptions->set_CompressionLevel(CompressionLevel::Maximum);

doc->Save(u"Output.docx", saveOptions);
using namespace Aspose::Words; auto doc = MakeObject<Document>(u"Input.docx"); doc->Cleanup(); auto nodes = doc->GetChildNodes(NodeType::Shape, true); for (const auto& shape : System::IterateOver<Shape>(nodes)) { if (shape->get_HasImage()) { // C'est au développeur de choisir la bibliothèque pour la compression d'image. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Compresser l'image et la remettre dans la forme. shape->get_ImageData()->SetImage("yourCompressedImage"); } } auto saveOptions = MakeObject<PdfSaveOptions>(); saveOptions->set_CacheBackgroundGraphics(true); doc->Save(u"Output.docx", saveOptions); using namespace Aspose::Words; auto doc = MakeObject<Document>(u"Input.docx"); doc->Cleanup(); auto nodes = doc->GetChildNodes(NodeType::Shape, true); for (const auto& shape : System::IterateOver<Shape>(nodes)) { if (shape->get_HasImage()) { // C'est au développeur de choisir la bibliothèque pour la compression d'image. auto image = System::Drawing::Image::Fromstream(shape->get_ImageData()->ToStream()); // ... // Compressez l'image et remettez-la à la forme. shape->get_ImageData()->SetImage("yourCompressedImage"); } } doc->Save(u"Output.docx"); using namespace Aspose::Words; auto doc = MakeObject<Document>(u"Input.docx"); doc->Cleanup(); auto nodes = doc->GetChildNodes(NodeType::Shape, true); for (const auto& shape : System::IterateOver<Shape>(nodes)) { if (shape->get_HasImage()) { // C'est au développeur de choisir la bibliothèque pour la compression d'image. auto image = System::Drawing::Image::FromStream(shape->get_ImageData()->ToStream()); // ... // Compresser l'image et la remettre dans la forme. shape->get_ImageData()->SetImage("yourCompressedImage"); } } auto saveOptions = MakeObject<OoxmlSaveOptions>(); saveOptions->set_CompressionLevel(CompressionLevel::Maximum); doc->Save(u"Output.docx", saveOptions); using namespace Aspose::Words; auto doc = MakeObject<Document>(); auto builder = MakeObject<DocumentBuilder>(doc); auto shape = builder->InsertImage(u"Input.docx"); // Mettez à jour les paramètres de la page pour recadrer le document en fonction de la taille de l'image. auto pageSetup = builder->get_PageSetup(); pageSetup->set_PageWidth(shape->get_Width()); pageSetup->set_PageHeight(shape->get_Height()); pageSetup->set_TopMargin(0); pageSetup->set_LeftMargin(0); pageSetup->set_BottomMargin(0); pageSetup->set_RightMargin(0); auto saveOptions = MakeObject<ImageSaveOptions>(SaveFormat::Docx); doc->Save(u"Output.docx", saveOptions);
Exécuter le code

Comment compresser DOCX C++

  1. Installez Aspose.Words for C++.
  2. Ajoutez une référence de bibliothèque (importez la bibliothèque) à votre projet C++.
  3. Ouvrez le fichier source DOCX dans C++.
  4. Compressez DOCX sans perte de qualité.
  5. Appelez la méthode Document.Cleanup(). Le code résultant peut varier en fonction du format du fichier de sortie.
  6. Obtenez le résultat compressé sous forme de DOCX fichier.

C++ bibliothèque pour optimiser et compresser DOCX fichiers

Il existe trois options pour installer Aspose.Words for C++ dans votre environnement de développeur. Veuillez en choisir un qui correspond à vos besoins et suivez les instructions étape par étape :

Configuration requise

Vous pouvez utiliser cette bibliothèque C++ pour développer des logiciels sur Microsoft Windows, Linux et macOS :

  • GCC >= 6.3.0 et Clang >= 3.9.1 sont requis pour Linux
  • Xcode >= 12.5.1, Clang et libc++ sont requis pour macOS

Si vous développez des logiciels pour Linux ou macOS, veuillez vérifier les informations sur les dépendances de bibliothèques supplémentaires ( packages open source fontconfig et mesa-glu) dans la documentation produit.

Autres optimisations de format de fichier prises en charge

Vous pouvez optimiser des fichiers dans de nombreux autres formats de fichiers :

5%

Abonnez-vous aux mises à jour des produits Aspose

Recevez des newsletters mensuelles et des offres directement dans votre boîte mail.

© Aspose Pty Ltd 2001-2024. Tous les droits sont réservés.