Convertir PDF en PowerPoint dans .NET

Aperçu

Cet article explique comment convertir PDF en PowerPoint en utilisant C#. Il couvre ces sujets.

Format: PPTX

Format: PowerPoint

Le code suivant fonctionne également avec la bibliothèque Aspose.PDF.Drawing.

Conversion C# PDF en PowerPoint et PPTX

Aspose.PDF for .NET vous permet de suivre l’avancement de la conversion de PDF en PPTX.

Nous avons une API nommée Aspose.Slides qui offre la fonctionnalité de créer ainsi que de manipuler des présentations PPT/PPTX. Cette API fournit également la fonctionnalité de convertir des fichiers PPT/PPTX en format PDF. Récemment, nous avons reçu des demandes de nombreux clients pour prendre en charge la capacité de transformation de PDF en format PPTX. À partir de la version Aspose.PDF for .NET 10.3.0, nous avons introduit une fonctionnalité pour transformer des documents PDF en format PPTX. Lors de cette conversion, les pages individuelles du fichier PDF sont converties en diapositives séparées dans le fichier PPTX.

Lors de la conversion de PDF en PPTX, le texte est rendu en tant que texte que vous pouvez sélectionner/met à jour. Veuillez noter que pour convertir des fichiers PDF en format PPTX, Aspose.PDF fournit une classe nommée PptxSaveOptions. Un objet de la classe PptxSaveOptions est passé comme deuxième argument à la Document.Save(..) méthode. Le code suivant montre le processus de conversion des fichiers PDF en format PPTX.

Conversion simple PDF en PowerPoint en utilisant C# et Aspose.PDF .NET

Pour convertir PDF en PPTX, Aspose.PDF for .NET conseille d’utiliser les étapes de code suivantes.

Étapes : Convertir PDF en PowerPoint en C# | Étapes : Convertir PDF en 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.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToPPTX()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate PptxSaveOptions object
        var saveOptions = new Aspose.Pdf.PptxSaveOptions();

        // Save the file in PPTX format
        document.Save(dataDir + "PDFToPPT_out.pptx", saveOptions);
    }
}

Convertir PDF en PPTX avec des diapositives en tant qu’images

Dans le cas où vous devez convertir un PDF consultable en PPTX sous forme d’images au lieu de texte sélectionnable, Aspose.PDF fournit une telle fonctionnalité via la classe Aspose.Pdf.PptxSaveOptions. Pour ce faire, définissez la propriété SlidesAsImages de la classe PptxSaveOptios sur ’true’ comme indiqué dans l’exemple de code suivant.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToPPTWithSlidesAsImages()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate PptxSaveOptions object
        var saveOptions = new Aspose.Pdf.PptxSaveOptions
        {
            SlidesAsImages = true
        };

        // Save the file in PPTX format with slides as images
        document.Save(dataDir + "PDFToPPT_out.pptx", saveOptions);
    }
}

Détails de progression de la conversion PPTX

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

 // For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToPPTWithCustomProgressHandler()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {

        // Instantiate PptxSaveOptions object
        var saveOptions = new Aspose.Pdf.PptxSaveOptions();

        // Specify custom progress handler
        saveOptions.CustomProgressHandler = ShowProgressOnConsole;

        // Save the file in PPTX format with progress tracking
        document.Save(dataDir + "PDFToPPTWithProgressTracking_out.pptx", saveOptions);
    }
}

 // Define the method to handle progress events and display them on the console
private static void ShowProgressOnConsole(Aspose.Pdf.UnifiedSaveOptions.ProgressEventHandlerInfo eventInfo)
{
    switch (eventInfo.EventType)
    {
        case Aspose.Pdf.ProgressEventType.TotalProgress:
            // Display overall progress of the conversion
            Console.WriteLine($"{DateTime.Now.TimeOfDay}  - Conversion progress: {eventInfo.Value}%.");
            break;

        case Aspose.Pdf.ProgressEventType.ResultPageCreated:
            // Display progress of the page layout creation
            Console.WriteLine($"{DateTime.Now.TimeOfDay}  - Result page {eventInfo.Value} of {eventInfo.MaxValue} layout created.");
            break;

        case Aspose.Pdf.ProgressEventType.ResultPageSaved:
            // Display progress of the page being exported
            Console.WriteLine($"{DateTime.Now.TimeOfDay}  - Result page {eventInfo.Value} of {eventInfo.MaxValue} exported.");
            break;

        case Aspose.Pdf.ProgressEventType.SourcePageAnalysed:
            // Display progress of the source page analysis
            Console.WriteLine($"{DateTime.Now.TimeOfDay}  - Source page {eventInfo.Value} of {eventInfo.MaxValue} analyzed.");
            break;

        default:
            break;
    }
}

Voir aussi

Cet article couvre également ces sujets. Les codes sont les mêmes que ci-dessus.

Format: PowerPoint

Format: PPTX