Schriftarten in Präsentationen mit Java verwalten

Schriftbezogene Eigenschaften verwalten

Um die Schrifteigenschaften eines Absatzes mit Aspose.Slides for Java zu verwalten:

  1. Erstellen Sie eine Instanz der Presentation‑Klasse.
  2. Holen Sie sich eine Referenz auf eine Folie, indem Sie deren Index verwenden.
  3. Greifen Sie auf die Placeholder‑Formen in der Folie zu und casten Sie sie zu AutoShape.
  4. Rufen Sie das Paragraph aus dem von AutoShape bereitgestellten TextFrame ab.
  5. Richten Sie den Absatz aus.
  6. Greifen Sie auf den Text‑Portion eines Paragraph zu.
  7. Definieren Sie die Schriftart mit FontData und setzen Sie die Font des Text‑Portion entsprechend.
    1. Setzen Sie die Schrift auf Fett.
    2. Setzen Sie die Schrift auf Kursiv.
  8. Setzen Sie die Schriftfarbe mithilfe des von dem Portion‑Objekt bereitgestellten FillFormat.
  9. Speichern Sie die geänderte Präsentation in einer PPTX‑Datei.

Die Implementierung der obigen Schritte ist unten angegeben. Sie nimmt eine unveränderte Präsentation und formatiert die Schriften auf einer der Folien. Die nachfolgenden Screenshots zeigen die Eingabedatei und wie die Code‑Snippets diese ändern. Der Code ändert die Schrift, die Farbe und den Schriftstil.

todo:image_alt_text
Abbildung: Der Text in der Eingabedatei
todo:image_alt_text
Abbildung: Der gleiche Text mit aktualisierter Formatierung
// Instanziieren Sie ein Presentation-Objekt, das eine PPTX-Datei darstellt
Presentation pres = new Presentation("FontProperties.pptx");
try {
	// Zugriff auf eine Folie über ihre Position
	ISlide slide = pres.getSlides().get_Item(0);

	// Zugriff auf den ersten und zweiten Platzhalter in der Folie und Typumwandlung zu AutoShape
	ITextFrame tf1 = ((IAutoShape) slide.getShapes().get_Item(0)).getTextFrame();
	ITextFrame tf2 = ((IAutoShape) slide.getShapes().get_Item(1)).getTextFrame();

	// Zugriff auf den ersten Absatz
	IParagraph para1 = tf1.getParagraphs().get_Item(0);
	IParagraph para2 = tf2.getParagraphs().get_Item(0);

	// Absatz im Blocksatz ausrichten
	para2.getParagraphFormat().setAlignment(TextAlignment.JustifyLow);

	// Zugriff auf den ersten Teil
	IPortion port1 = para1.getPortions().get_Item(0);
	IPortion port2 = para2.getPortions().get_Item(0);

	// Definieren neuer Schriftarten
	FontData fd1 = new FontData("Elephant");
	FontData fd2 = new FontData("Castellar");

	// Zuweisen neuer Schriftarten zum Teil
	port1.getPortionFormat().setLatinFont(fd1);
	port2.getPortionFormat().setLatinFont(fd2);

	// Schrift auf Fett setzen
	port1.getPortionFormat().setFontBold(NullableBool.True);
	port2.getPortionFormat().setFontBold(NullableBool.True);

	// Schrift auf Kursiv setzen
	port1.getPortionFormat().setFontItalic(NullableBool.True);
	port2.getPortionFormat().setFontItalic(NullableBool.True);

	// Schriftfarbe setzen
	port1.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
	port1.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
	port2.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
	port2.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.GREEN);

	// PPTX auf Festplatte speichern
	pres.save("WelcomeFont.pptx", SaveFormat.Pptx);
} finally {
	if (pres != null) pres.dispose();
}

Text-Schrifteigenschaften festlegen

Um ein Textfeld zu erstellen und die Schrifteigenschaften des darin enthaltenen Textes festzulegen:

  1. Erstellen Sie eine Instanz der Presentation‑Klasse.
  2. Holen Sie die Referenz einer Folie, indem Sie deren Index verwenden.
  3. Fügen Sie ein AutoShape vom Typ Rectangle zur Folie hinzu.
  4. Entfernen Sie den Füllstil, der mit dem AutoShape verknüpft ist.
  5. Greifen Sie auf das TextFrame des AutoShape zu.
  6. Fügen Sie dem TextFrame etwas Text hinzu.
  7. Greifen Sie auf das mit dem TextFrame verknüpfte Portion‑Objekt zu.
  8. Definieren Sie die Schriftart, die für das Portion verwendet werden soll.
  9. Setzen Sie weitere Schrifteigenschaften wie fett, kursiv, unterstrichen, Farbe und Höhe über die entsprechenden Eigenschaften des Portion‑Objekts.
  10. Speichern Sie die geänderte Präsentation als PPTX‑Datei.

Die Implementierung der obigen Schritte ist unten dargestellt.

todo:image_alt_text
Abbildung: Text mit einigen von Aspose.Slides for Java festgelegten Schrifteigenschaften
// Instanziieren Sie ein Presentation-Objekt, das eine PPTX-Datei darstellt
Presentation pres = new Presentation();
try {
	// Erste Folie holen
	ISlide sld = pres.getSlides().get_Item(0);
	
	// AutoShape vom Typ Rectangle hinzufügen
	IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
	
	// Alle mit dem AutoShape verbundenen Füllstile entfernen
	ashp.getFillFormat().setFillType(FillType.NoFill);
	
	// Auf den mit dem AutoShape verknüpften TextFrame zugreifen
	ITextFrame tf = ashp.getTextFrame();
	tf.setText("Aspose TextBox");
	
	// Auf den mit dem TextFrame verknüpften Portion zugreifen
	IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
	
	// Schriftart für den Portion festlegen
	port.getPortionFormat().setLatinFont(new FontData("Times New Roman"));
	
	// Fett-Eigenschaft der Schrift festlegen
	port.getPortionFormat().setFontBold(NullableBool.True);
	
	// Kursiv-Eigenschaft der Schrift festlegen
	port.getPortionFormat().setFontItalic(NullableBool.True);
	
	// Unterstreichen-Eigenschaft der Schrift festlegen
	port.getPortionFormat().setFontUnderline(TextUnderlineType.Single);
	
	// Schriftgröße festlegen
	port.getPortionFormat().setFontHeight(25);
	
	// Schriftfarbe festlegen
	port.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
	port.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
	
	// Präsentation auf Datenträger speichern
	pres.save("pptxFont.pptx", SaveFormat.Pptx);
} finally {
	if (pres != null) pres.dispose();
}