Gestion des arrière-plans de présentation en PHP
Vue d’ensemble
Les couleurs unies, les dégradés et les images sont couramment utilisés pour les arrière-plans de diapositives. Vous pouvez définir l’arrière-plan d’une diapositive normale (une seule diapositive) ou d’une diapositive maîtresse (s’applique à plusieurs diapositives à la fois).

Définir un arrière-plan de couleur unie pour une diapositive normale
Aspose.Slides permet de définir une couleur unie comme arrière-plan d’une diapositive spécifique d’une présentation — même si la présentation utilise une diapositive maîtresse. La modification s’applique uniquement à la diapositive sélectionnée.
- Créez une instance de la classe Presentation.
- Définissez le BackgroundType de la diapositive sur
OwnBackground. - Définissez le FillType de l’arrière-plan de la diapositive sur
Solid. - Utilisez la méthode getSolidFillColor sur FillFormat pour spécifier la couleur d’arrière-plan unie.
- Enregistrez la présentation modifiée.
L’exemple PHP suivant montre comment définir une couleur bleue unie comme arrière-plan d’une diapositive normale :
// Créez une instance de la classe Presentation.
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
// Définissez la couleur d'arrière-plan de la diapositive en bleu.
$slide->getBackground()->setType(BackgroundType::OwnBackground);
$slide->getBackground()->getFillFormat()->setFillType(FillType::Solid);
$slide->getBackground()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->BLUE);
// Enregistrez la présentation sur le disque.
$presentation->save("SolidColorBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
Définir un arrière-plan de couleur unie pour une diapositive maîtresse
Aspose.Slides permet de définir une couleur unie comme arrière-plan de la diapositive maîtresse d’une présentation. La diapositive maîtresse agit comme un modèle qui contrôle le formatage de toutes les diapositives ; ainsi, lorsque vous choisissez une couleur unie pour l’arrière-plan de la diapositive maîtresse, elle s’applique à chaque diapositive.
- Créez une instance de la classe Presentation.
- Définissez le BackgroundType de la diapositive maîtresse (via
getMasters) surOwnBackground. - Définissez le FillType de l’arrière-plan de la diapositive maîtresse sur
Solid. - Utilisez la méthode getSolidFillColor pour spécifier la couleur d’arrière-plan unie.
- Enregistrez la présentation modifiée.
L’exemple PHP suivant montre comment définir une couleur verte unie comme arrière-plan d’une diapositive maîtresse :
// Créez une instance de la classe Presentation.
$presentation = new Presentation();
try {
$masterSlide = $presentation->getMasters()->get_Item(0);
// Définissez la couleur d'arrière-plan de la diapositive maître en vert forêt.
$masterSlide->getBackground()->setType(BackgroundType::OwnBackground);
$masterSlide->getBackground()->getFillFormat()->setFillType(FillType::Solid);
$masterSlide->getBackground()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->GREEN);
// Enregistrez la présentation sur le disque.
$presentation->save("MasterSlideBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
Définir un arrière-plan dégradé pour une diapositive
Un dégradé est un effet graphique créé par une transition progressive de couleur. Lorsqu’il est utilisé comme arrière-plan de diapositive, les dégradés peuvent rendre les présentations plus artistiques et professionnelles. Aspose.Slides permet de définir une couleur de dégradé comme arrière-plan des diapositives.
- Créez une instance de la classe Presentation.
- Définissez le BackgroundType de la diapositive sur
OwnBackground. - Définissez le FillType de l’arrière-plan de la diapositive sur
Gradient. - Utilisez la méthode getGradientFormat sur FillFormat pour configurer les paramètres de dégradé souhaités.
- Enregistrez la présentation modifiée.
L’exemple PHP suivant montre comment définir une couleur de dégradé comme arrière-plan d’une diapositive :
// Créez une instance de la classe Presentation.
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
// Appliquez un effet de dégradé à l'arrière-plan.
$slide->getBackground()->setType(BackgroundType::OwnBackground);
$slide->getBackground()->getFillFormat()->setFillType(FillType::Gradient);
$slide->getBackground()->getFillFormat()->getGradientFormat()->setTileFlip(TileFlip::FlipBoth);
// Enregistrez la présentation sur le disque.
$presentation->save("GradientBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
Définir une image comme arrière-plan de diapositive
En plus des remplissages unis et dégradés, Aspose.Slides permet d’utiliser des images comme arrière-plan de diapositive.
- Créez une instance de la classe Presentation.
- Définissez le BackgroundType de la diapositive sur
OwnBackground. - Définissez le FillType de l’arrière-plan de la diapositive sur
Picture. - Chargez l’image que vous souhaitez utiliser comme arrière-plan de la diapositive.
- Ajoutez l’image à la collection d’images de la présentation.
- Utilisez la méthode getPictureFillFormat sur FillFormat pour attribuer l’image comme arrière-plan.
- Enregistrez la présentation modifiée.
L’exemple PHP suivant montre comment définir une image comme arrière-plan d’une diapositive :
// Créez une instance de la classe Presentation.
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
// Définissez les propriétés de l'image d'arrière-plan.
$slide->getBackground()->setType(BackgroundType::OwnBackground);
$slide->getBackground()->getFillFormat()->setFillType(FillType::Picture);
$slide->getBackground()->getFillFormat()->getPictureFillFormat()->setPictureFillMode(PictureFillMode::Stretch);
// Chargez l'image.
$image = Images::fromFile("Tulips.jpg");
// Ajoutez l'image à la collection d'images de la présentation.
$ppImage = $presentation->getImages()->addImage($image);
$image->dispose();
$slide->getBackground()->getFillFormat()->getPictureFillFormat()->getPicture()->setImage($ppImage);
// Enregistrez la présentation sur le disque.
$presentation->save("ImageAsBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
L’exemple de code suivant montre comment définir le type de remplissage d’arrière-plan sur une image en mosaïque et modifier les propriétés de mosaïquage :
$presentation = new Presentation();
try {
$firstSlide = $presentation->getSlides()->get_Item(0);
$background = $firstSlide->getBackground();
$background->setType(BackgroundType::OwnBackground);
$background->getFillFormat()->setFillType(FillType::Picture);
$newImage = Images::fromFile("image.png");
$ppImage = $presentation->getImages()->addImage($newImage);
$newImage->dispose();
// Définir l'image utilisée pour le remplissage d'arrière-plan.
$backPictureFillFormat = $background->getFillFormat()->getPictureFillFormat();
$backPictureFillFormat->getPicture()->setImage($ppImage);
// Définir le mode de remplissage d'image sur Carreau et ajuster les propriétés du carrelage.
$backPictureFillFormat->setPictureFillMode(PictureFillMode::Tile);
$backPictureFillFormat->setTileOffsetX(15);
$backPictureFillFormat->setTileOffsetY(15);
$backPictureFillFormat->setTileScaleX(46);
$backPictureFillFormat->setTileScaleY(87);
$backPictureFillFormat->setTileAlignment(RectangleAlignment::Center);
$backPictureFillFormat->setTileFlip(TileFlip::FlipY);
$presentation->save("TileBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
Modifier la transparence de l’image d’arrière-plan
Vous pouvez souhaiter ajuster la transparence de l’image d’arrière-plan d’une diapositive afin de faire ressortir le contenu de la diapositive. Le code PHP suivant montre comment modifier la transparence d’une image d’arrière-plan de diapositive :
$transparencyValue = 30; // Par exemple.
// Get the collection of picture transform operations.
$imageTransform = $slide->getBackground()->getFillFormat()->getPictureFillFormat()->getPicture()->getImageTransform();
// Find an existing fixed-percentage transparency effect.
$transparencyOperation = null;
foreach($imageTransform as $operation) {
if (java_instanceof($operation, new JavaClass("com.aspose.slides.AlphaModulateFixed"))) {
$transparencyOperation = $operation;
break;
}
}
// Set the new transparency value.
if (java_is_null($transparencyOperation)) {
$imageTransform->addAlphaModulateFixedEffect(100 - $transparencyValue);
} else {
$transparencyOperation->setAmount(100 - $transparencyValue);
}
Obtenir la valeur d’arrière-plan de la diapositive
Aspose.Slides fournit la classe BackgroundEffectiveData pour récupérer les valeurs d’arrière-plan effectives d’une diapositive. Cette classe expose le FillFormat et le EffectFormat effectifs.
En utilisant la méthode getBackground de la classe BaseSlide, vous pouvez obtenir l’arrière-plan effectif d’une diapositive.
L’exemple PHP suivant montre comment obtenir la valeur d’arrière-plan effectif d’une diapositive :
// Créez une instance de la classe Presentation.
$presentation = new Presentation("Sample.pptx");
try {
$slide = $presentation->getSlides()->get_Item(0);
// Récupérez l'arrière-plan effectif, en tenant compte du maître, de la disposition et du thème.
$effBackground = $slide->getBackground()->getEffective();
if ($effBackground->getFillFormat()->getFillType() == FillType::Solid)
echo "Fill color: " . $effBackground->getFillFormat()->getSolidFillColor() . "\n";
else
echo "Fill type: " . $effBackground->getFillFormat()->getFillType() . "\n";
} finally {
$presentation->dispose();
}
FAQ
Puis-je réinitialiser un arrière-plan personnalisé et restaurer l’arrière-plan du thème/de la mise en page ?
Oui. Supprimez le remplissage personnalisé de la diapositive, et l’arrière-plan sera à nouveau hérité de la diapositive mise en page/maîtresse correspondante (c’est‑à‑dire du arrière-plan du thème).
Que se passe-t-il avec l’arrière-plan si je change le thème de la présentation plus tard ?
Si une diapositive possède son propre remplissage, il restera inchangé. Si l’arrière-plan est hérité de la mise en page/maîtresse, il sera mis à jour pour correspondre au nouveau thème.