[Java] Créer et appliquer un masque des diapositives

Le PPT Master possède de puissantes fonctionnalités de modèle qui permettent aux utilisateurs de concevoir le texte du titre des diapositives, les images d'arrière-plan, les couleurs de thème et plus encore selon les besoins. Après une conception de modèle PPT réussie, vous pouvez appeler ce modèle directement et l'appliquer à d'autres diapositives pour éviter des modifications répétées. Cet article vous montrera comment utiliser le code dans une application Java pour créer un style de masque de diapositive et l'appliquer à d'autres diapositives.

** Importer le package JAR ** ** Méthode 1: ** Téléchargez Free Spire.Presentation for Java, décompressez-le et dans le dossier lib Importez le package Spire.Presentation.jar dans votre application Java en tant que dépendance. ** Méthode 2: ** Installez le package JAR directement à partir du référentiel Maven et configurez le fichier pom.xml comme suit:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <name>e-iceblue</name>
            <url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
        </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.presentation.free</artifactId>
        <version>2.6.1</version>
    </dependency>
</dependencies>

** Créez un maître unique **

import com.spire.presentation.*;
import com.spire.presentation.drawing.BackgroundType;
import com.spire.presentation.drawing.FillFormatType;
import com.spire.presentation.drawing.IImageData;
import com.spire.presentation.drawing.PictureFillType;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import java.io.FileInputStream;

public class CreateSlideMaster {

    public static void main(String[] args) throws Exception {


        //Créez un document PPT et spécifiez la taille de la diapositive
        Presentation presentation = new Presentation();
        presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);

        //Obtenez le premier masque des diapositives
        IMasterSlide masterSlide = presentation.getMasters().get(0);

        //Obtenir l'adresse de l'image
        String backgroundPic = "pic.jpg ";
        String logo = "logo.jpg ";

        //Définir l'arrière-plan du masque des diapositives
        BufferedImage image = ImageIO.read(new FileInputStream(backgroundPic));
        IImageData imageData = presentation.getImages().append(image);
        masterSlide.getSlideBackground().setType(BackgroundType.CUSTOM);
        masterSlide.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
        masterSlide.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
        masterSlide.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);

        //Ajouter une image au masque des diapositives
        image = ImageIO.read(new FileInputStream(logo));
        imageData = presentation.getImages().append(image);
        IEmbedImage imageShape = masterSlide.getShapes().appendEmbedImage(ShapeType.RECTANGLE,imageData,new Rectangle2D.Float(60,60,220,80));
        imageShape.getLine().setFillType(FillFormatType.NONE);

        //Ajouter du texte au masque des diapositives
        IAutoShape textShape = masterSlide.getShapes().appendShape(ShapeType.RECTANGLE, new Rectangle2D.Float((float) presentation.getSlideSize().getSize().getWidth()-200,(float) presentation.getSlideSize().getSize().getHeight()-50,200,30));//Shapes.AppendShape(ShapeType.Rectangle, new RectangleF(ppt.SlideSize.Size.Width-200, ppt.SlideSize.Size.Height-60, 200, 30));
        textShape.getTextFrame().setText("Rapport de synthèse des travaux");
        textShape.getTextFrame().getTextRange().setFontHeight(20f);
        textShape.getTextFrame().getTextRange().getFill().setFillType(FillFormatType.SOLID);
        textShape.getTextFrame().getTextRange().getFill().getSolidColor().setColor(Color.BLUE);
        textShape.getTextFrame().getTextRange().getParagraph().setAlignment(TextAlignmentType.CENTER);
        textShape.getFill().setFillType(FillFormatType.NONE);
        textShape.getLine().setFillType(FillFormatType.NONE);

        //Ajouter une diapositive
        presentation.getSlides().append();

        //Sauvegarder le document
        presentation.saveToFile("output/SlideMaster.pptx", FileFormat.PPTX_2013);
        presentation.dispose();
    }
}

s1.jpg

** Créez plusieurs masques et appliquez-les individuellement aux diapositives **

import com.spire.presentation.*;
import com.spire.presentation.drawing.BackgroundType;
import com.spire.presentation.drawing.FillFormatType;
import com.spire.presentation.drawing.IImageData;
import com.spire.presentation.drawing.PictureFillType;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.FileInputStream;

public class CreateMultiSlideMasters {

    public static void main(String[] args) throws Exception {

        //Créer un nouveau document PPT
        Presentation presentation = new Presentation();
        presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);

        //Insérer 4 diapositives (le document comporte 5 pages, y compris les diapositives par défaut)
        for (int i = 0; i < 4; i++)
        {
            presentation.getSlides().append();
        }

        //Obtenir le masque des diapositives par défaut
        IMasterSlide first_master = presentation.getMasters().get(0);

        //Créer et obtenir un deuxième masque des diapositives
        presentation.getMasters().appendSlide(first_master);
        IMasterSlide second_master = presentation.getMasters().get(1);

        //Définissez des images d'arrière-plan différentes pour les deux maîtres
        String pic1 = "image1.jpg ";
        String pic2 = "image2.jpg ";
        BufferedImage image = ImageIO.read(new FileInputStream(pic1));
        IImageData imageData = presentation.getImages().append(image);
        first_master.getSlideBackground().setType(BackgroundType.CUSTOM);
        first_master.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
        first_master.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
        first_master.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);
        image = ImageIO.read(new FileInputStream(pic2));
        imageData = presentation.getImages().append(image);
        second_master.getSlideBackground().setType(BackgroundType.CUSTOM);
        second_master.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
        second_master.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
        second_master.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);

        //Appliquer le premier masque des diapositives et la mise en page à la première page (la planche 6 est vide)
        presentation.getSlides().get(0).setLayout(first_master.getLayouts().get(6));

        //Appliquer le deuxième masque des diapositives et la mise en page au reste des diapositives
        for (int i = 1; i < presentation.getSlides().getCount(); i++)
        {
            presentation.getSlides().get(i).setLayout(second_master.getLayouts().get(6));
        }

        //Sauvegarder le document
        presentation.saveToFile("MultiSlideMaters.pptx", FileFormat.PPTX_2013);
        presentation.dispose();
    }
}

s2.jpg

Recommended Posts

[Java] Créer et appliquer un masque des diapositives
[Java] Créer un filtre
Créer une méthode java [Memo] [java11]
[Java] Créer un fichier temporaire
Créez une application JAVA WEB et essayez OMC APM
Créer un environnement de développement d'équipe Java et JavaScript (construction d'environnement gradle)
Créer un projet Java à l'aide d'Eclipse
Créez une énumération haute performance avec des champs et des méthodes comme Java avec JavaScript
[Java] Créons un Minecraft Mod 1.16.1 [Ajouter et générer des arbres]
[Java] Créons un Minecraft Mod 1.14.4 [9. Ajouter et générer des arbres]
[Java] Créons un Minecraft Mod 1.14.4 [8. Ajouter et générer du minerai]
Un regard sur Jenkins, OpenJDK 8 et Java 11
Implémentation Java pour créer et résoudre des labyrinthes
Créons un environnement de développement Java (mise à jour)
Créer une application TODO dans Java 7 Créer un en-tête
Un ingénieur Java a comparé Swift, Kotlin et Java.
Installez Docker et créez un environnement d'exécution Java
[Java] Créez un fichier jar compressé et non compressé avec la commande jar
Créer une API à l'aide de Retrofit2, Okhttp3 et Gson (Java)
Créer un CSR avec des informations étendues en Java
Créez un tableau d'affichage simple avec Java + MySQL
[Windows] [IntelliJ] [Java] [Tomcat] Créer un environnement pour Tomcat 9 avec IntelliJ
Créons un processus chronométré avec la minuterie de Java! !!
[Java] Créez quelque chose comme une API de recherche de produits
[Java] [POI] Créer un tableau dans Word et commencer une nouvelle ligne dans une cellule
Essayez de créer un babillard en Java
[Java] Créer une collection avec un seul élément
Créons un framework Web ultra-simple avec Java
[Java] Créons un Minecraft Mod 1.14.4 [Introduction]
Créer Scala Seq à partir de Java, faire de Scala Seq une liste Java
[Java] Créons un Minecraft Mod 1.16.1 [Introduction]
Java et JavaScript
XXE et Java
Préparer un environnement de scraping avec Docker et Java
[Java] Créons un Minecraft Mod 1.14.4 [99. Mod output]
J'ai essayé de créer une fonction / écran d'administrateur de site commercial avec Java et Spring
Créer un servlet Java et un fichier WAR JSP à déployer sur Apache Tomcat 9 avec Gradle
[Java] Créons un Minecraft Mod 1.14.4 [0. Fichier de base]
Créez un environnement de développement Java à l'aide de jenv sur votre Mac
[Java] Créons un Minecraft Mod 1.14.4 [4. Ajouter des outils]
Créer une image docker pour exécuter une application Java simple
Comment créer un environnement Java en seulement 3 secondes
[Java] Créons un Minecraft Mod 1.14.4 [5. Ajouter une armure]
[Java] Créons un Minecraft Mod 1.14.4 [édition supplémentaire]
[Java] Créons un Minecraft Mod 1.14.4 [7. Add progress]
[Java] Créons un Minecraft Mod 1.14.4 [6. Ajouter une recette]
[Débutant] Créez un jeu compétitif avec des connaissances de base sur Java
[Java] Créons un Minecraft Mod 1.16.1 [Ajouter un élément]
Ecrire une classe en Kotlin et l'appeler en Java
[Java] Créons un Minecraft Mod 1.16.1 [Fichier de base]
Système de gestion des tâches / clones Java / Twitter ① Créer une base de données
J'ai essayé de créer une compétence Clova en Java
[Java] Créons un Minecraft Mod 1.14.4 [1. Ajouter un élément]
Comment créer un URI de données (base64) en Java
[Note] Créez un environnement Java à partir de zéro avec docker
Comment convertir A en A et A en A en utilisant le produit logique et la somme en Java