Hantera teckensnitt i presentationer med Java
Översikt
Aspose.Slides låter dig hantera teckensnittsegenskaper i presentationstext direkt från din kod. Du kan komma åt text i bilder genom former, textramar, stycken och delar och sedan tillämpa formatering på den valda texten.
Denna artikel förklarar hur du konfigurerar teckensnittrelaterade egenskaper för befintlig text i en presentation, inklusive teckensnittsfamilj, fet- och kursivstil, styckejustering och teckensnittsfärg. Den visar också hur du skapar en textruta, lägger till text i den och anger teckensnittsegenskaper som teckensnittsfamilj, fet, kursiv, understruken, teckensnittsstorlek och färg innan du sparar resultatet som en PPTX‑fil.
Hantera teckensnittrelaterade egenskaper
För att hantera teckensnittsegenskaper för ett stycke med Aspose.Slides for Java:
- Skapa en instans av klassen Presentation.
- Hämta en bilds referens genom att använda dess index.
- Kom åt Placeholder‑formerna i bilden och typomvandla dem till AutoShape.
- Hämta Paragraph från TextFrame som exponeras av AutoShape.
- Justera stycket.
- Kom åt en Paragraph’s text Portion.
- Definiera teckensnittet med FontData och sätt Font för textens Portion därefter.
- Sätt teckensnittet till fet.
- Sätt teckensnittet till kursiv.
- Ställ in teckensnittsfärgen med hjälp av FillFormat som exponeras av Portion-objektet.
- Spara den modifierade presentationen som en PPTX‑fil.
Implementeringen av ovanstående steg ges nedan. Den tar en enkel presentation och formaterar teckensnitten på en av bilderna. Skärmbilderna som följer visar inmatningsfilen och hur kodsnuttarna ändrar den. Koden ändrar teckensnittet, färgen och teckensnittsstilen.
![]() |
|---|
| Figur: Texten i inmatningsfilen |
![]() |
|---|
| Figur: Samma text med uppdaterad formatering |
// Skapa ett Presentation‑objekt som representerar en PPTX‑fil
Presentation pres = new Presentation("FontProperties.pptx");
try {
// Kom åt en bild med dess bildposition
ISlide slide = pres.getSlides().get_Item(0);
// Kom åt den första och andra platshållaren i bilden och typomvandla den till AutoShape
ITextFrame tf1 = ((IAutoShape) slide.getShapes().get_Item(0)).getTextFrame();
ITextFrame tf2 = ((IAutoShape) slide.getShapes().get_Item(1)).getTextFrame();
// Kom åt det första stycket
IParagraph para1 = tf1.getParagraphs().get_Item(0);
IParagraph para2 = tf2.getParagraphs().get_Item(0);
// Justera stycket
para2.getParagraphFormat().setAlignment(TextAlignment.JustifyLow);
// Kom åt den första delen
IPortion port1 = para1.getPortions().get_Item(0);
IPortion port2 = para2.getPortions().get_Item(0);
// Definiera nya teckensnitt
FontData fd1 = new FontData("Elephant");
FontData fd2 = new FontData("Castellar");
// Tilldela nya teckensnitt till delen
port1.getPortionFormat().setLatinFont(fd1);
port2.getPortionFormat().setLatinFont(fd2);
// Sätt teckensnittet till fet
port1.getPortionFormat().setFontBold(NullableBool.True);
port2.getPortionFormat().setFontBold(NullableBool.True);
// Sätt teckensnittet till kursiv
port1.getPortionFormat().setFontItalic(NullableBool.True);
port2.getPortionFormat().setFontItalic(NullableBool.True);
// Sätt teckensnittsfärg
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);
// Spara PPTX‑filen till disk
pres.save("WelcomeFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Ställ in textens teckensnittsegenskaper
För att skapa en textruta och ange teckensnittsegenskaper för texten i den:
- Skapa en instans av klassen Presentation.
- Hämta referensen till en bild genom att använda dess index.
- Lägg till en AutoShape av typen Rectangle på bilden.
- Ta bort fyllningsstilen som är associerad med AutoShape.
- Kom åt [TextFrame] för AutoShape.
- Lägg till lite text i TextFrame.
- Kom åt Portion-objektet som är associerat med TextFrame.
- Definiera teckensnittet som ska användas för Portion.
- Ställ in andra teckensnittsegenskaper som fet, kursiv, understruken, färg och storlek med hjälp av de relevanta egenskaperna som exponeras av Portion-objektet.
- Skriv den modifierade presentationen som en PPTX‑fil.
Implementeringen av ovanstående steg ges nedan.
![]() |
|---|
| Figur: Text med några teckensnittsegenskaper inställda av Aspose.Slides for Java |
// Instansiera ett Presentation‑objekt som representerar en PPTX‑fil
Presentation pres = new Presentation();
try {
// Hämta den första bilden
ISlide sld = pres.getSlides().get_Item(0);
// Lägg till en AutoShape av typen Rectangle
IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
// Ta bort eventuell fyllningsstil som är associerad med AutoShape
ashp.getFillFormat().setFillType(FillType.NoFill);
// Kom åt TextFrame som är kopplad till AutoShape
ITextFrame tf = ashp.getTextFrame();
tf.setText("Aspose TextBox");
// Kom åt Portion som är kopplad till TextFrame
IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
// Ange teckensnittet för Portionen
port.getPortionFormat().setLatinFont(new FontData("Times New Roman"));
// Ställ in fet egenskap för teckensnittet
port.getPortionFormat().setFontBold(NullableBool.True);
// Ställ in kursiv egenskap för teckensnittet
port.getPortionFormat().setFontItalic(NullableBool.True);
// Ställ in understrykning för teckensnittet
port.getPortionFormat().setFontUnderline(TextUnderlineType.Single);
// Ställ in teckensnittets höjd
port.getPortionFormat().setFontHeight(25);
// Ställ in teckensnittets färg
port.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Spara presentationen till disk
pres.save("pptxFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}


