Convertir un PDF en Microsoft PowerPoint en C++

Aperçu

Cet article explique comment convertir des PDF en formats PowerPoint en utilisant C++. Il couvre les sujets suivants.

Format: PPTX

Format: Format Microsoft PowerPoint PPTX

Autres sujets couverts par cet article.

Conversions de PDF en PowerPoint en C++

Aspose.PDF pour C++ vous permet de suivre la progression de la conversion de PDF en PPTX.

Pendant la conversion de PDF à PPTX, le texte est rendu comme Texte où vous pouvez le sélectionner/mettre à jour. Veuillez noter que pour convertir des fichiers PDF au format PPTX, Aspose.PDF fournit une classe nommée PptxSaveOptions. Un objet de la classe PptxSaveOptions est passé comme second argument à la méthode Document.Save(..) method. L’extrait de code suivant montre le processus pour convertir des fichiers PDF en format PPTX.

Conversion simple de PDF en PPTX avec Aspose.PDF pour C++

Afin de convertir PDF en PPTX, Aspose.PDF pour C++ conseille d’utiliser les étapes de code suivantes.

Étapes : Convertir PDF en PPTX en C++ | Étapes : Convertir PDF en format PowerPoint PPTX en C++

  1. Créez une instance de la classe Document.
  2. Créez une instance de la classe PptxSaveOptions.
  3. Utilisez la méthode Save de l’objet Document pour enregistrer le PDF en tant que PPTX.
void ConvertPDFtoPPTX()
{
    std::clog << __func__ << ": Start" << std::endl;
    // Chaîne pour le nom du chemin
    String _dataDir("C:\\Samples\\Conversion\\");

    // Chaîne pour le nom du fichier
    String infilename("JSON Fundamenals.pdf");
    String outfilename("JSON Fundamenals.pptx");

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

    // Enregistrer la sortie au format PPTX
    document->Save(_dataDir + outfilename, SaveFormat::Pptx);
    std::clog << __func__ << ": Finish" << std::endl;
}

Convertir le PDF en PPTX avec des diapositives comme images

Dans le cas où vous avez besoin de convertir un PDF consultable en PPTX sous forme d’images au lieu de texte sélectionnable, Aspose.PDF offre cette fonctionnalité via la classe Aspose.Pdf.PptxSaveOptions. Pour y parvenir, définissez la propriété SlidesAsImages de la classe PptxSaveOptions sur ’true’ comme indiqué dans l’exemple de code suivant.

void ConvertPDFtoPPTX_SlidesAsImages()
{
    std::clog << __func__ << ": Start" << std::endl;
    // Chaîne pour le nom du chemin
    String _dataDir("C:\\Samples\\Conversion\\");

    // Chaîne pour le nom du fichier
    String infilename("JSON Fundamenals.pdf");
    String outfilename("JSON Fundamenals.pptx");

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

    auto pptxOptions = MakeObject<PptxSaveOptions>();
    pptxOptions->set_SlidesAsImages(true);

    // Enregistrer la sortie au format PPTX
    document->Save(_dataDir + outfilename, pptxOptions);
    std::clog << __func__ << ": Finish" << std::endl;
}

Détail de la progression de la conversion PPTX

Aspose.PDF pour C++ vous permet de suivre la progression de la conversion de PDF en PPTX. Le Aspose.Pdf.PptxSaveOptions classe fournit la propriété CustomProgressHandler qui peut être spécifiée à une méthode personnalisée pour suivre la progression de la conversion comme indiqué dans l’exemple de code suivant.

void ConvertPDFtoPPTX_ProgressDetailConversion()
{
    std::clog << __func__ << ": Start" << std::endl;
    // Chaîne pour le nom du chemin
    String _dataDir("C:\\Samples\\Conversion\\");

    // Chaîne pour le nom du fichier
    String infilename("JSON Fundamenals.pdf");
    String outfilename("JSON Fundamenals.pptx");

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

    auto pptxOptions = MakeObject<PptxSaveOptions>();
    //pptxOptions->set_SlidesAsImages(true);
    //Spécifier le gestionnaire de progression personnalisé
    pptxOptions->set_CustomProgressHandler(ShowProgressOnConsole);

    // Enregistrer la sortie au format PPTX
    document->Save(_dataDir + outfilename, pptxOptions);
    std::clog << __func__ << ": Finish" << std::endl;
}

Suivi est la méthode personnalisée pour afficher la conversion de progression.

void ShowProgressOnConsole(SharedPtr<UnifiedSaveOptions::ProgressEventHandlerInfo> eventInfo)
{
    switch (eventInfo->EventType)
    {
    case ProgressEventType::TotalProgress:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Progression de la conversion : " << eventInfo->Value << std::endl;
    break;
    case ProgressEventType::ResultPageCreated:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Page de résultat " << eventInfo->Value << " de " << eventInfo->MaxValue << " mise en page créée." << std::endl;
    break;
    case ProgressEventType::ResultPageSaved:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Page de résultat " << eventInfo->Value << " de " << eventInfo->MaxValue << " exportée." << std::endl;
    break;
    case ProgressEventType::SourcePageAnalysed:
    std::clog << DateTime::get_Now().get_TimeOfDay() << " - Page source " << eventInfo->Value << " de " << eventInfo->MaxValue << " analysée." << std::endl;
    break;
    default:
    break;
    }
}

Voir Aussi

Cet article couvre également ces sujets. Les codes sont identiques à ceux ci-dessus.

Format: PowerPoint

Format: Microsoft PowerPoint PPTX format

Format: PPTX