Partager via


Utilisation des présentations

Cette rubrique décrit la classe du Kit de développement logiciel (SDK) Open XML pour Office Presentation et sa relation avec le schéma PresentationML au format de fichier Open XML. Pour plus d’informations sur la structure globale des composants et éléments qui composent un document PresentationML, consultez Structure d’un document PresentationML.


Présentations dans PresentationML

La spécification ISO/IEC 29500 décrit l’élément PresentationML <presentation/> Open XML utilisé pour représenter une présentation dans un document PresentationML comme suit :

Cet élément spécifie des propriétés fondamentales concernant la présentation.

Exemple: Considérez la présentation suivante avec une seule diapositive master et deux diapositives. En plus de ces deux éléments couramment utilisés, il peut aussi y avoir la spécification d’autres propriétés telles que la taille des diapositives, la taille des notes et les styles de texte par défaut.

<p:presentation xmlns:a="" xmlns:r="" xmlns:p="">  
    <p:sldMasterIdLst>  
        <p:sldMasterId id="2147483648" r:id="rId1">  
    </p:sldMasterIdLst>  
    <p:sldIdLst>  
        <p:sldId id="256" r:id="rId3"/>  
        <p:sldId id="257" r:id="rId4"/>  
    </p:sldIdLst>  
    <p:sldSz cx="9144000" cy="6858000" type="screen4x3"/>  
    <p:notesSz cx="6858000" cy="9144000"/>  
    <p:defaultTextStyle>  
        …  
    </p:defaultTextStyle>  
</p:presentation>

© ISO/IEC 29500 : 2016

L’élément <presentation/> contient généralement des éléments enfants qui répertorient les masques des diapositives, les diapositives et les diaporamas personnalisés contenus dans la présentation. Il contient aussi en général des éléments qui spécifient d’autres propriétés de la présentation, telles que la taille des diapositives, la taille des notes et les styles de texte par défaut.

L’élément <presentation/> est l’élément racine du composant PresentationML Presentation. Pour plus d’informations sur la structure complète des composants et des éléments qui constituent un document PresentationML, voir Structure d’un document PresentationML.

Le tableau suivant répertorie certains des éléments enfants les plus courants de l’élément utilisé lors de l’utilisation <presentation/> des présentations et des classes du Kit de développement logiciel (SDK) Open XML qui leur correspondent.

Élément PresentationML Classe du Kit de développement logiciel (SDK) Open XML
<sldMasterIdLst/> SlideMasterIdList
<sldMasterId/> SlideMasterId
<sldIdLst/> SlideIdList
<sldId/> SlideId
<notesMasterIdLst/> NotesMasterIdList
<handoutMasterIdLst/> SlideMasterIdList
<custShowLst/> CustomShowList
<sldSz/> SlideSize
<notesSz/> <xrefDocumentFormat.OpenXml.Presentation.NotesSize>
<defaultTextStyle/> DefaultTextStyle

Classe de présentation du Kit de développement logiciel (SDK) Open XML

La classe du Kit de développement logiciel (SDK) Presentation Open XML représente l’élément <presentation/> défini dans le schéma de format de fichier Open XML pour les documents PresentationML. Utilisez la Presentation classe pour manipuler un élément individuel <presentation/> dans un document PresentationML.

Les classes couramment associées à la Presentation classe sont présentées dans les sections suivantes.

Classe SlideMasterIdList

Toutes les diapositives qui partagent le même master héritent de la même disposition de cette master. La SlideMasterIdList classe correspond à l’élément <sldMasterIdList/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <sldMasterIdList/> Open XML utilisé pour représenter une liste d’ID de diapositive master dans un document PresentationML comme suit :

Cet élément spécifie une liste d’informations d’identification pour les masques de diapositive qui sont disponibles dans la présentation correspondante. Un masque de diapositive est une diapositive spécifiquement conçue pour être un modèle pour toutes les diapositives de présentation enfants.

© ISO/IEC 29500 : 2016

Classe SlideMasterId

La SlideMasterId classe correspond à l’élément <sldMasterId/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <sldMasterId/> Open XML utilisé pour représenter un ID de diapositive master dans un document PresentationML comme suit :

Cet élément spécifie un masque de diapositive qui est disponible dans la présentation correspondante. Un masque de diapositive est une diapositive spécifiquement conçue pour être un modèle pour toutes les diapositives de présentation enfants.

Exemple : Considérez la spécification suivante d’une diapositive master dans une présentation

<p:presentation xmlns:a="" xmlns:r="" xmlns:p=""
embedTrueTypeFonts="1">  
    …  
    <p:sldMasterIdLst>  
        <p:sldMasterId id="2147483648" r:id="rId1"/>  
    </p:sldMasterIdLst>  
    …  
</p:presentation>

© ISO/IEC 29500 : 2016

Classe SlideIdList

La SlideIdList classe correspond à l’élément <sldIdLst/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <sldIdLst/> Open XML utilisé pour représenter une liste d’ID de diapositive dans un document PresentationML comme suit :

Cet élément spécifie une liste d’informations d’identification pour les diapositives qui sont disponibles dans la présentation correspondante. Une diapositive contient les informations qui sont spécifiques à une diapositive donnée, telles que les informations spécifiques à la diapositive pour la forme et le texte.

© ISO/IEC 29500 : 2016

Classe SlideId

La SlideId classe correspond à l’élément <sldId/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <sldId/> Open XML utilisé pour représenter un ID de diapositive dans un document PresentationML comme suit :

Cet élément spécifie une diapositive de présentation qui est disponible dans la présentation correspondante. Une diapositive contient les informations qui sont spécifiques à une diapositive donnée, telles que les informations spécifiques à la diapositive pour la forme et le texte.

Exemple : Considérez la spécification suivante d’une diapositive master dans une présentation

<p:presentation xmlns:a="" xmlns:r="" xmlns:p="" embedTrueTypeFonts="1">  
    …  
    <p:sldIdLst>  
        <p:sldId id="256" r:id="rId3"/>  
        <p:sldId id="257" r:id="rId4"/>  
        <p:sldId id="258" r:id="rId5"/>  
        <p:sldId id="259" r:id="rId6"/>  
        <p:sldId id="260" r:id="rId7"/>  
    </p:sldIdLst>  
    ...  
</p:presentation>

© ISO/IEC 29500 : 2016

Classe NotesMasterIdList

La NotesMasterIdList classe correspond à l’élément <notesMasterIdLst/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <notesMasterIdLst/> Open XML utilisé pour représenter une liste de notes master d’ID dans un document PresentationML comme suit :

Cet élément spécifie une liste d’informations d’identification pour les diapositives de masque de pages de notes qui sont disponibles dans la présentation correspondante. Un masque de page de notes est une diapositive spécifiquement conçue pour l’impression de la diapositive et des notes qui y sont associées.

© ISO/IEC 29500 : 2016

Classe HandoutMasterIdList

La HandoutMasterIdList classe correspond à l’élément <handoutMasterIdLst/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <handoutMasterIdLst/> Open XML utilisé pour représenter un document master liste d’ID dans un document PresentationML comme suit :

Cet élément spécifie une liste d’informations d’identification pour les masques de document qui sont disponibles dans la présentation correspondante. Un masque de document est une diapositive spécifiquement conçue pour l’impression en tant que document.

© ISO/IEC 29500 : 2016

Classe CustomShowList

La CustomShowList classe correspond à l’élément <custShowLst/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <custShowLst/> Open XML utilisé pour représenter une liste d’affichages personnalisée dans un document PresentationML comme suit :

Cet élément spécifie une liste de tous les diaporamas personnalisés qui sont disponibles dans la présentation correspondante. Un diaporama personnalisé est une séquence définie de diapositives qui permet l’affichage des diapositives avec la présentation selon un ordre arbitraire.

© ISO/IEC 29500 : 2016

Classe SlideSize

La SlideSize classe correspond à l’élément <sldSz/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <sldSz/> Open XML utilisé pour représenter la taille des diapositives de présentation dans un document PresentationML comme suit :

Cet élément spécifie la taille de la surface de la diapositive de présentation. Les objets d’une diapositive de présentation peuvent être spécifiés en dehors de ces dimensions, mais il s’agit ici de la taille de la surface d’arrière-plan qui est affichée lorsque la diapositive est présentée ou imprimée.

Exemple : Considérez la spécification suivante de la taille d’une diapositive de présentation.

<p:presentation xmlns:a="" xmlns:r="" xmlns:p=""
embedTrueTypeFonts="1">  
    …  
    <p:sldSz cx="9144000" cy="6858000" type="screen4x3"/>  
    …  
</p:presentation>  

© ISO/IEC 29500 : 2016

Classe NotesSize

La NotesSize classe correspond à l’élément <notesSz/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <notesSz/> Open XML utilisé pour représenter la taille des diapositives de notes dans un document PresentationML comme suit :

Cet élément spécifie la taille de la surface de la diapositive utilisée pour les diapositives de notes et les diapositives de document. Les objets d’une diapositive de notes peuvent être spécifiés en dehors de ces dimensions, mais la diapositive de notes a une surface d’arrière-plan de la taille spécifiée lorsqu’elle est présentée ou imprimée. Cet élément est destiné à spécifier la région où le contenu est adapté au format spécial d’impression que l’application est susceptible de générer, par exemple un document sous forme de plan.

Exemple : Considérez la spécification suivante de la taille d’une diapositive de notes.

<p:presentation xmlns:a="" xmlns:r="" xmlns:p=""
embedTrueTypeFonts="1">  
    …  
    <p:notesSz cx="9144000" cy="6858000"/>  
    …  
</p:presentation>

© ISO/IEC 29500 : 2016

Classe DefaultTextStyle

La DefaultTextStyle classe correspond à l’élément <defaultTextStyle/> . La spécification ISO/IEC 29500 décrit l’élément PresentationML <defaultTextStyle/> Open XML utilisé pour représenter le style de texte par défaut dans un document PresentationML comme suit :

Cet élément spécifie les styles de texte par défaut à utiliser dans la présentation. Le style de texte défini ici peut être référencé lors de l’insertion d’une nouvelle diapositive si cette diapositive n’est pas associée à un masque de diapositive ou si aucune information de style n’a été spécifiée pour le texte dans la diapositive de présentation.

© ISO/IEC 29500 : 2016


Utilisation de la classe Presentation

Comme indiqué dans l’exemple de code du Kit de développement logiciel (SDK) Open XML qui suit, chaque instance de la Presentation classe est associée à un instance de la PresentationPart classe, qui représente une partie de présentation, l’une des parties requises d’un package de fichier de présentation PresentationML.

La Presentation classe, qui représente l’élément <presentation/> , est donc également associée à une série d’autres classes qui représentent les éléments enfants de l’élément <presentation/> . Parmi ces classes, comme illustré dans l’exemple de code suivant, se trouvent les SlideMasterIdListclasses , SlideIdList, SlideSizeNotesSize, et DefaultTextStyle .


Exemple de code du Kit de développement logiciel (SDK) Open XML

L’exemple de code suivant de l’article Guide pratique pour créer un document de présentation en fournissant un nom de fichier utilise la Create méthode de la PresentationDocument classe du Kit de développement logiciel (SDK) Open XML pour créer un instance de cette même classe qui a le nom et le chemin de fichier spécifiés. Elle utilise ensuite la AddPresentationPart méthode pour ajouter un instance de la PresentationPart classe au fichier de document. Ensuite, il crée un instance de la Presentation classe qui représente la présentation. Il transmet une référence à la PresentationPart classe instance à la CreatePresentationParts procédure, qui crée les autres parties requises du fichier de présentation. La CreatePresentation procédure nettoie en fermant la PresentationDocument classe instance qu’elle a ouverte précédemment.

La CreatePresentationParts procédure crée des instances des SlideMasterIdListclasses , SlideIdList, SlideSize, NotesSizeet DefaultTextStyle et et les ajoute à la présentation.

static void CreatePresentation(string filepath)
{
    // Create a presentation at a specified file path. The presentation document type is pptx, by default.
    using (PresentationDocument presentationDoc = PresentationDocument.Create(filepath, PresentationDocumentType.Presentation))
    {
        PresentationPart presentationPart = presentationDoc.AddPresentationPart();
        presentationPart.Presentation = new Presentation();

        CreatePresentationParts(presentationPart);
    }
}

static void CreatePresentationParts(PresentationPart presentationPart)
{
    SlideMasterIdList slideMasterIdList1 = new SlideMasterIdList(new SlideMasterId() { Id = (UInt32Value)2147483648U, RelationshipId = "rId1" });
    SlideIdList slideIdList1 = new SlideIdList(new SlideId() { Id = (UInt32Value)256U, RelationshipId = "rId2" });
    SlideSize slideSize1 = new SlideSize() { Cx = 9144000, Cy = 6858000, Type = SlideSizeValues.Screen4x3 };
    NotesSize notesSize1 = new NotesSize() { Cx = 6858000, Cy = 9144000 };
    DefaultTextStyle defaultTextStyle1 = new DefaultTextStyle();

    presentationPart.Presentation.Append(slideMasterIdList1, slideIdList1, slideSize1, notesSize1, defaultTextStyle1);

    SlidePart slidePart1;
    SlideLayoutPart slideLayoutPart1;
    SlideMasterPart slideMasterPart1;
    ThemePart themePart1;


    slidePart1 = CreateSlidePart(presentationPart);
    slideLayoutPart1 = CreateSlideLayoutPart(slidePart1);
    slideMasterPart1 = CreateSlideMasterPart(slideLayoutPart1);
    themePart1 = CreateTheme(slideMasterPart1);

    slideMasterPart1.AddPart(slideLayoutPart1, "rId1");
    presentationPart.AddPart(slideMasterPart1, "rId1");
    presentationPart.AddPart(themePart1, "rId5");
}

Document PresentationML résultant

Lorsque le code du Kit de développement logiciel (SDK) Open XML est exécuté, le code XML suivant est écrit dans le document PresentationML référencé dans le code.

    <?xml version="1.0" encoding="utf-8" ?>
    <p:presentation xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main">
     <p:sldMasterIdLst>
      <p:sldMasterId id="2147483648" r:id="rId1" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"/>
     </p:sldMasterIdLst>
     <p:sldIdLst>
      <p:sldId id="256" r:id="rId2" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"/>
     </p:sldIdLst>
     <p:sldSz cx="9144000" cy="6858000" type="screen4x3"/>
     <p:notesSz cx="6858000" cy="9144000"/>
     <p:defaultTextStyle/>
    </p:presentation>

Voir aussi

À propos du Kit de développement logiciel (SDK) Open XML pour Office

Guide pratique pour créer un document de présentation en fournissant un nom de fichier

Guide pratique pour insérer une nouvelle diapositive dans une présentation

Guide pratique pour supprimer une diapositive d’une présentation

Guide pratique pour récupérer le nombre de diapositives dans un document de présentation

Guide pratique pour appliquer un thème à une présentation