Maître de diapositive

Qu’est-ce qu’un Maître de diapositive dans PowerPoint

Un Slide Master est un modèle de diapositive qui définit la mise en page, les styles, le thème, les polices, l’arrière-plan et d’autres propriétés pour les diapositives d’une présentation. Si vous souhaitez créer une présentation (ou une série de présentations) avec le même style et le même modèle pour votre entreprise, vous pouvez utiliser un maître de diapositive.

Un maître de diapositive est utile car il vous permet de définir et de modifier l’apparence de toutes les diapositives d’une présentation en même temps. Aspose.Slides prend en charge le mécanisme du maître de diapositive de PowerPoint.

VBA permet également de manipuler un maître de diapositive et d’exécuter les mêmes opérations prises en charge dans PowerPoint : modifier les arrière-plans, ajouter des formes, personnaliser la mise en page, etc. Aspose.Slides fournit des mécanismes flexibles pour vous permettre d’utiliser les maîtres de diapositive et d’effectuer des tâches de base avec eux.

Voici les opérations de base sur les maîtres de diapositive :

  • Créer un Slide Master.
  • Appliquer le Slide Master aux diapositives de la présentation.
  • Modifier l’arrière‑plan du Slide Master.
  • Ajouter une image, un espace réservé, un Smart Art, etc. au Slide Master.

Voici des opérations plus avancées impliquant le maître de diapositive :

  • Comparer les maîtres de diapositive.
  • Fusionner les maîtres de diapositive.
  • Appliquer plusieurs maîtres de diapositive.
  • Copier une diapositive avec son maître de diapositive vers une autre présentation.
  • Détecter les maîtres de diapositive en double dans les présentations.
  • Définir le maître de diapositive comme vue par défaut de la présentation.

Comment le maître de diapositive est appliqué

Avant de travailler avec un maître de diapositive, vous voudrez peut‑être comprendre comment ils sont utilisés dans les présentations et appliqués aux diapositives.

  • Chaque présentation possède au moins un maître de diapositive par défaut.
  • Une présentation peut contenir plusieurs maîtres de diapositive. Vous pouvez ajouter plusieurs maîtres de diapositive et les utiliser pour styliser différentes parties d’une présentation de façon distincte.

Dans Aspose.Slides, un maître de diapositive est représenté par le type MasterSlide.

L’objet Presentation d’Aspose.Slides contient la liste getMasters de type MasterSlideCollection, qui renvoie la liste de tous les maîtres de diapositive définis dans une présentation.

Outre les opérations CRUD, la classe MasterSlideCollection propose ces méthodes utiles : addClone(ILayoutSlide sourceLayout) et insertClone(int index, IMasterSlide sourceMaster). Ces méthodes sont héritées de la fonction de clonage de base des diapositives. Mais lorsqu’on travaille avec des maîtres de diapositive, elles permettent de mettre en place des configurations complexes.

Lorsqu’une nouvelle diapositive est ajoutée à une présentation, un maître de diapositive lui est appliqué automatiquement. Le maître de diapositive de la diapositive précédente est sélectionné par défaut.

Note : Les diapositives de la présentation sont stockées dans la liste getSlides(), et chaque nouvelle diapositive est ajoutée à la fin de la collection par défaut. Si une présentation ne comporte qu’un seul maître de diapositive, ce maître est sélectionné pour toutes les nouvelles diapositives. C’est la raison pour laquelle vous n’avez pas besoin de définir le maître de diapositive pour chaque nouvelle diapositive que vous créez.

Le principe est le même pour PowerPoint et Aspose.Slides. Par exemple, dans PowerPoint, lorsque vous ajoutez une nouvelle diapositive, il suffit de cliquer sur la ligne située sous la dernière diapositive et une nouvelle diapositive (avec le maître de diapositive de la dernière présentation) sera créée :

todo:image_alt_text

Dans Aspose.Slides, vous pouvez réaliser l’opération équivalente avec la méthode addClone(ISlide sourceSlide) de la classe Presentation.

Maître de diapositive dans la hiérarchie des diapositives

L’utilisation des mises en page de diapositive avec le maître de diapositive offre une flexibilité maximale. Une mise en page de diapositive vous permet de définir les mêmes styles que le maître de diapositive (arrière‑plan, polices, formes, etc.). Cependant, lorsqu’il existe plusieurs mises en page de diapositive combinées à un maître de diapositive, un nouveau style est créé. Lorsque vous appliquez une mise en page de diapositive à une diapositive unique, vous pouvez modifier son style par rapport à celui appliqué par le maître de diapositive.

Le maître de diapositive prime sur tous les éléments de configuration : Maître de diapositive → Mise en page de diapositive → Diapositive :

todo:image_alt_text

Chaque objet MasterSlide possède la propriété getLayoutSlides contenant une liste de mises en page de diapositive. Un type Slide possède la propriété getLayoutSlide pointant vers la mise en page de diapositive appliquée à la diapositive. L’interaction entre une diapositive et le maître de diapositive s’effectue via une mise en page de diapositive.

Ce qui compose un maître de diapositive

Pour comprendre comment un maître de diapositive peut être modifié, il faut connaître ses composants. Voici les propriétés principales de MasterSlide :

  • getBackground : obtenir/definir l’arrière‑plan de la diapositive.
  • getBodyStyle : obtenir/definir les styles de texte du corps de la diapositive.
  • getShapes : obtenir/definir toutes les formes du maître de diapositive (espaces réservés, cadres image, etc.).
  • getControls : obtenir/definir les contrôles ActiveX.
  • getThemeManager : obtenir le gestionnaire de thèmes.
  • getHeaderFooterManager : obtenir le gestionnaire d’en‑têtes et de pieds de page.

Méthodes du maître de diapositive :

  • getDependingSlides : obtenir toutes les diapositives dépendant du maître de diapositive.
  • applyExternalThemeToDependingSlides : crée un nouveau maître de diapositive basé sur le maître actuel et un nouveau thème. Le nouveau maître sera alors appliqué à toutes les diapositives dépendantes.

Obtenir le maître de diapositive

Dans PowerPoint, le maître de diapositive est accessible via le menu Affichage → Maître de diapositive :

todo:image_alt_text

Avec Aspose.Slides, vous pouvez accéder à un maître de diapositive de cette façon :

var pres = new aspose.slides.Presentation();
try {
    // Donne accès à la diapositive maître de la présentation
    var masterSlide = pres.getMasters().get_Item(0);
} finally {
    pres.dispose();
}

La classe MasterSlide représente un maître de diapositive. La propriété Masters (relative au type MasterSlideCollection) contient la liste de tous les maîtres de diapositive définis dans la présentation.

Ajouter une image au maître de diapositive

Lorsque vous ajoutez une image à un maître de diapositive, cette image apparaîtra sur toutes les diapositives dépendant de ce maître.

Par exemple, vous pouvez placer le logo de votre société et quelques images sur le maître de diapositive, puis repasser en mode édition des diapositives. Vous verrez alors l’image sur chaque diapositive.

todo:image_alt_text

Vous pouvez ajouter des images à un maître de diapositive avec Aspose.Slides :

var pres = new aspose.slides.Presentation();
try {
    var picture;
    var image = aspose.slides.Images.fromFile("image.png");
    try {
        picture = pres.getImages().addImage(image);
    } finally {
        if (image != null) {
            image.dispose();
        }
    }
    pres.getMasters().get_Item(0).getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 10, 10, 100, 100, picture);
    pres.save("pres.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {
    console.log(e);
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

Ajouter un espace réservé au maître de diapositive

Ces champs de texte sont des espaces réservés standard sur un maître de diapositive :

  • Cliquez pour modifier le style du titre du maître
  • Modifier les styles de texte du maître
  • Deuxième niveau
  • Troisième niveau

Ils apparaissent également sur les diapositives basées sur le maître de diapositive. Vous pouvez modifier ces espaces réservés sur le maître de diapositive et les changements seront appliqués automatiquement aux diapositives.

Dans PowerPoint, vous pouvez ajouter un espace réservé via le chemin Maître de diapositive → Insérer un espace réservé :

todo:image_alt_text

Examinons un exemple plus compliqué d’espaces réservés avec Aspose.Slides. Considérons une diapositive contenant des espaces réservés provenant du maître de diapositive :

todo:image_alt_text

Nous voulons modifier le format du titre et du sous‑titre sur le maître de diapositive ainsi :

todo:image_alt_text

Tout d’abord, nous récupérons le contenu de l’espace réservé du titre depuis l’objet MasterSlide, puis nous utilisons le champ PlaceHolder.FillFormat :

var pres = new aspose.slides.Presentation();
try {
    var master = pres.getMasters().get_Item(0);
    var placeHolder = findPlaceholder(master, aspose.slides.PlaceholderType.Title);
    placeHolder.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Gradient));
    placeHolder.getFillFormat().getGradientFormat().setGradientShape(java.newByte(aspose.slides.GradientShape.Linear));
    var awtColor = java.import('java.awt.Color');
    placeHolder.getFillFormat().getGradientFormat().getGradientStops().add(0, java.newInstanceSync('java.awt.Color', 255, 0, 0));
    placeHolder.getFillFormat().getGradientFormat().getGradientStops().add(255, java.newInstanceSync('java.awt.Color', 128, 0, 128));

    pres.save("pres.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

function findPlaceholder(master, type)
{    
    for (var i = 0 ; i < master.getShapes().size(); i++)
    {
        var autoShape = master.getShapes().get_Item(i);
        if (autoShape != null)
        {
            if (autoShape.getPlaceholder().getType() == type)
            {
                return autoShape;
            }
        }
    }

    return null;
}

Le style et le format du titre changeront pour toutes les diapositives basées sur le maître de diapositive :

todo:image_alt_text

Modifier l’arrière‑plan du maître de diapositive

Lorsque vous modifiez la couleur d’arrière‑plan d’un maître de diapositive, toutes les diapositives normales de la présentation recevront la nouvelle couleur. Ce code JavaScript démontre l’opération :

var pres = new aspose.slides.Presentation();
try {
    var master = pres.getMasters().get_Item(0);
    master.getBackground().setType(aspose.slides.BackgroundType.OwnBackground);
    master.getBackground().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    master.getBackground().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "GREEN"));
    pres.save("pres.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

Cloner le maître de diapositive vers une autre présentation

Pour cloner un maître de diapositive vers une autre présentation, appelez la méthode addClone depuis la présentation de destination en lui passant le maître de diapositive. Ce code JavaScript montre comment cloner un maître de diapositive vers une autre présentation :

var presSource = new aspose.slides.Presentation();
var presTarget = new aspose.slides.Presentation();
try {
    var master = presTarget.getMasters().addClone(presSource.getMasters().get_Item(0));
} finally {
    if (presSource != null) {
        presSource.dispose();
    }
}

Ajouter plusieurs maîtres de diapositive à une présentation

Aspose.Slides vous permet d’ajouter plusieurs maîtres de diapositive et mises en page de diapositive à n’importe quelle présentation. Cela vous permet de configurer les styles, les mises en page et les options de mise en forme des diapositives de présentation de multiples façons.

Dans PowerPoint, vous pouvez ajouter de nouveaux maîtres de diapositive et mises en page (depuis le « Menu Maître de diapositive ») ainsi :

todo:image_alt_text

Avec Aspose.Slides, vous pouvez ajouter un nouveau maître de diapositive en appelant la méthode addClone :

// Ajoute une nouvelle diapositive maître
var secondMasterSlide = pres.getMasters().addClone(masterSlide);

Comparer les maîtres de diapositive

Un Master Slide implémente la classe BaseSlide contenant la méthode equals, qui peut être utilisée pour comparer les diapositives. Elle renvoie true pour les maîtres de diapositive identiques en structure et en contenu statique.

Deux maîtres de diapositive sont égaux si leurs formes, styles, textes, animations et autres paramètres sont identiques. La comparaison ne prend pas en compte les valeurs d’identifiants uniques (p. ex. SlideId) ni le contenu dynamique (p. ex. la date actuelle dans un espace réservé de date).

Définir le maître de diapositive comme vue par défaut de la présentation

Aspose.Slides vous permet de définir un maître de diapositive comme vue par défaut d’une présentation. La vue par défaut est ce que vous voyez en premier lors de l’ouverture d’une présentation.

Ce code montre comment définir un maître de diapositive comme vue par défaut d’une présentation en JavaScript :

// Instancie une classe Presentation qui représente le fichier de présentation
var presentation = new aspose.slides.Presentation();
try {
    // Définit la vue par défaut sur SlideMasterView
    presentation.getViewProperties().setLastView(aspose.slides.ViewType.SlideMasterView);
    // Enregistre la présentation
    presentation.save("PresView.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Supprimer les maîtres de diapositive inutilisés

Aspose.Slides propose la méthode removeUnusedMasterSlides (de la classe Compress) pour vous permettre de supprimer les maîtres de diapositive indésirables et inutilisés. Ce code JavaScript montre comment supprimer un maître de diapositive d’une présentation PowerPoint :

var pres = new aspose.slides.Presentation("pres.pptx");
try {
    aspose.slides.Compress.removeUnusedMasterSlides(pres);
    pres.save("pres-out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

FAQ

Qu’est‑ce qu’un maître de diapositive dans PowerPoint ?

Un maître de diapositive est un modèle de diapositive qui définit la mise en page, les styles, les thèmes, les polices, l’arrière‑plan et d’autres propriétés pour les diapositives d’une présentation. Il vous permet de définir et de modifier l’apparence de toutes les diapositives d’une présentation en une seule fois.

Comment un maître de diapositive est‑il appliqué dans une présentation ?

Chaque présentation possède au moins un maître de diapositive par défaut. Lorsqu’une nouvelle diapositive est ajoutée, un maître de diapositive lui est appliqué automatiquement, généralement en héritant du maître de la diapositive précédente. Une présentation peut contenir plusieurs maîtres de diapositive pour styliser différentes parties de façon distincte.

Quels éléments peuvent être personnalisés dans un maître de diapositive ?

Un maître de diapositive comprend plusieurs propriétés de base pouvant être personnalisées :

  • Arrière‑plan : définir l’arrière‑plan de la diapositive.
  • BodyStyle : définir les styles de texte du corps de la diapositive.
  • Shapes : gérer toutes les formes du maître de diapositive, y compris les espaces réservés et les cadres image.
  • Controls : gérer les contrôles ActiveX.
  • ThemeManager : accéder au gestionnaire de thèmes.
  • HeaderFooterManager : gérer les en‑têtes et pieds de page.

Comment ajouter une image à un maître de diapositive ?

Ajouter une image à un maître de diapositive garantit qu’elle apparaît sur toutes les diapositives dépendant de ce maître. Par exemple, placer le logo de l’entreprise sur le maître de diapositive l’affichera sur chaque diapositive de la présentation.

Comment les maîtres de diapositive sont‑ils liés aux mises en page de diapositive ?

Les mises en page de diapositive fonctionnent avec le maître de diapositive pour offrir une flexibilité dans la conception des diapositives. Le maître de diapositive définit les styles et thèmes globaux, tandis que les mises en page de diapositive permettent des variations dans la disposition du contenu. La hiérarchie est la suivante :

  • Maître de diapositive → Définit les styles globaux.
  • Mise en page de diapositive → Fournit différentes dispositions de contenu.
  • Diapositive → Hérite du design de sa mise en page de diapositive.

Puis‑je avoir plusieurs maîtres de diapositive dans une même présentation ?

Oui, une présentation peut contenir plusieurs maîtres de diapositive. Cela vous permet de styliser différentes sections d’une présentation de diverses manières, offrant ainsi une grande flexibilité de conception.

Comment accéder et modifier un maître de diapositive avec Aspose.Slides ?

Dans Aspose.Slides, un maître de diapositive est représenté par la classe MasterSlide. Vous pouvez accéder à un maître de diapositive en utilisant la méthode getMasters de l’objet Presentation.