Der PPT-Master verfügt über leistungsstarke Vorlagenfunktionen, mit denen Benutzer nach Bedarf Folientiteltext, Hintergrundbilder, Themenfarben und mehr entwerfen können. Sobald das PPT-Masterdesign erfolgreich ist, können Sie diese Vorlage direkt aufrufen und auf andere Folien anwenden, um wiederholte Änderungen zu vermeiden. In diesem Artikel erfahren Sie, wie Sie mit Code in einer Java-Anwendung einen Folienmasterstil erstellen und auf andere Folien anwenden.
** JAR-Paket importieren ** ** Methode 1: ** Laden Sie Free Spire.Presentation für Java herunter, entpacken Sie es und legen Sie es im lib-Ordner ab Importieren Sie das Spire.Presentation.jar-Paket als Abhängigkeit in Ihre Java-Anwendung. ** Methode 2: ** Installieren Sie das JAR-Paket direkt aus dem Maven-Repository und konfigurieren Sie die Datei pom.xml wie folgt:
<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>
** Erstelle einen einzigartigen Master **
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 {
//Erstellen Sie ein PPT-Dokument und geben Sie die Foliengröße an
Presentation presentation = new Presentation();
presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);
//Holen Sie sich den ersten Folienmaster
IMasterSlide masterSlide = presentation.getMasters().get(0);
//Bildadresse abrufen
String backgroundPic = "pic.jpg ";
String logo = "logo.jpg ";
//Stellen Sie den Hintergrund des Folienmasters ein
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);
//Fügen Sie dem Folienmaster ein Bild hinzu
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);
//Fügen Sie dem Folienmaster Text hinzu
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("Arbeitszusammenfassungsbericht");
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);
//Folie hinzufügen
presentation.getSlides().append();
//Speichern Sie das Dokument
presentation.saveToFile("output/SlideMaster.pptx", FileFormat.PPTX_2013);
presentation.dispose();
}
}
** Erstellen Sie mehrere Master und wenden Sie sie einzeln auf Folien an **
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 {
//Erstellen Sie ein neues PPT-Dokument
Presentation presentation = new Presentation();
presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);
//4 Folien einfügen (das Dokument hat 5 Seiten, einschließlich der Standardfolien)
for (int i = 0; i < 4; i++)
{
presentation.getSlides().append();
}
//Holen Sie sich den Standard-Folienmaster
IMasterSlide first_master = presentation.getMasters().get(0);
//Erstellen und erhalten Sie einen zweiten Folienmaster
presentation.getMasters().appendSlide(first_master);
IMasterSlide second_master = presentation.getMasters().get(1);
//Stellen Sie unterschiedliche Hintergrundbilder für die beiden Master ein
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);
//Wenden Sie den ersten Folienmaster und das Layout auf die erste Seite an (Tafel 6 ist leer).
presentation.getSlides().get(0).setLayout(first_master.getLayouts().get(6));
//Wenden Sie den zweiten Folienmaster und das Layout auf die restlichen Folien an
for (int i = 1; i < presentation.getSlides().getCount(); i++)
{
presentation.getSlides().get(i).setLayout(second_master.getLayouts().get(6));
}
//Speichern Sie das Dokument
presentation.saveToFile("MultiSlideMaters.pptx", FileFormat.PPTX_2013);
presentation.dispose();
}
}
Recommended Posts