Hantera teckensnitt i presentationer med Python via Java
Översikt
Aspose.Slides låter dig hantera teckensnittsegenskaper i presentationstext direkt från din kod. Du kan komma åt text i bilder via former, textramar, stycken och portioner och sedan applicera formatering på den markerade texten.
Denna artikel förklarar hur du konfigurerar teckensnittsegenskaper för befintlig text i en presentation, inklusive teckensnittsfamilj, fetstil och kursiv stil, styckejustering och teckensnittsfärg. Den visar också hur du skapar en textruta, lägger till text i den och anger teckensnittsegenskaper såsom teckensnittsfamilj, fetstil, kursiv, understruken, teckensnittsstorlek och färg innan du sparar resultatet som en PPTX‑fil.
Hantera teckensnittsrelaterade egenskaper
Note
Presentationer innehåller vanligtvis både text och bilder. Texten kan formateras på olika sätt, antingen för att markera specifika avsnitt och ord eller för att följa företagsstilar. Textformatering hjälper användare att variera utseendet och känslan i presentationsinnehållet. Denna artikel visar hur man använder Aspose.Slides for Python via Java för att konfigurera teckensnittsegenskaper för textstycken på bilder.För att hantera teckensnittsegenskaper för ett stycke med Aspose.Slides for Python via Java:
- Skapa en instans av klassen Presentation.
- Hämta en bilds referens genom att använda dess index.
- Få åtkomst till Placeholder-formerna i bilden som AutoShape.
- Hämta Paragraph från TextFrame som exponeras av AutoShape.
- Justera stycket.
- Få åtkomst till ett Paragraph-text Portion.
- Definiera teckensnittet med hjälp av FontData och sätt Font för texten Portion därefter.
- Ställ in teckensnittet som fet.
- Ställ in teckensnittet som kursiv.
- Ange teckensnittsfärgen med hjälp av FillFormat som exponeras av Portion-objektet.
- Spara den ändrade presentationen som en PPTX‑fil.
Implementeringen av stegen ovan visas nedan. Den tar en enkel presentation och formaterar teckensnitten på en av bilderna. Skärmbilderna som följer visar indatafilen och hur kodsnuttarna ändrar den. Koden ändrar teckensnittet, färgen och teckensnittsstilen.
![]() |
|---|
| Figur: Texten i indatafilen |
![]() |
|---|
| Figur: Samma text med uppdaterad formatering |
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import FillType, FontData, NullableBool, Presentation, SaveFormat, TextAlignment
from java.awt import Color
# Ladda presentationen.
presentation = Presentation("FontProperties.pptx")
try:
# Hämta den första bilden och textramarna för dess två första platshållare.
slide = presentation.getSlides().get_Item(0)
title_text_frame = slide.getShapes().get_Item(0).getTextFrame()
body_text_frame = slide.getShapes().get_Item(1).getTextFrame()
# Hämta det första stycket i varje textram.
title_paragraph = title_text_frame.getParagraphs().get_Item(0)
body_paragraph = body_text_frame.getParagraphs().get_Item(0)
body_paragraph.getParagraphFormat().setAlignment(TextAlignment.JustifyLow)
# Hämta den första delen i varje stycke.
title_portion = title_paragraph.getPortions().get_Item(0)
body_portion = body_paragraph.getPortions().get_Item(0)
# Definiera och tilldela nya teckensnitt.
title_font = FontData("Elephant")
body_font = FontData("Castellar")
title_portion.getPortionFormat().setLatinFont(title_font)
body_portion.getPortionFormat().setLatinFont(body_font)
# Ställ in teckensnitten som fet och kursiv.
title_portion.getPortionFormat().setFontBold(NullableBool.True_)
body_portion.getPortionFormat().setFontBold(NullableBool.True_)
title_portion.getPortionFormat().setFontItalic(NullableBool.True_)
body_portion.getPortionFormat().setFontItalic(NullableBool.True_)
# Ställ in teckensnittsfärgerna.
title_portion.getPortionFormat().getFillFormat().setFillType(FillType.Solid)
title_portion.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE)
body_portion.getPortionFormat().getFillFormat().setFillType(FillType.Solid)
body_portion.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.GREEN)
# Spara presentationen.
presentation.save("WelcomeFont.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Ange teckensnittsegenskaper för text
Note
Som nämnt i Hantera teckensnittsrelaterade egenskaper används en Portion för att hålla text med liknande formateringsstil i ett stycke. Denna artikel visar hur man använder Aspose.Slides for Python via Java för att skapa en textruta med lite text och sedan definiera ett specifikt teckensnitt samt olika andra 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.
- Få åtkomst till AutoShape’s TextFrame.
- Lägg till lite text i TextFrame.
- Få åtkomst till Portion‑objektet som är associerat med TextFrame.
- Definiera teckensnittet som ska användas för Portion.
- Ange andra teckensnittsegenskaper såsom fet, kursiv, understruken, färg och storlek med hjälp av de relevanta egenskaperna som exponeras av Portion-objektet.
- Skriv den ändrade presentationen som en PPTX‑fil.
Implementeringen av stegen ovan visas nedan.
![]() |
|---|
| Figur: Text med några teckensnittsegenskaper inställda av Aspose.Slides for Python via Java |
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import FillType, FontData, NullableBool, Presentation, SaveFormat, ShapeType, TextUnderlineType
from java.awt import Color
presentation = Presentation()
try:
# Hämta den första bilden och lägg till en rektangel.
slide = presentation.getSlides().get_Item(0)
shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50)
# Ta bort figurens fyllning.
shape.getFillFormat().setFillType(FillType.NoFill)
# Lägg till text i figurens textram.
text_frame = shape.getTextFrame()
text_frame.setText("Aspose TextBox")
portion = text_frame.getParagraphs().get_Item(0).getPortions().get_Item(0)
# Ställ in teckensnittsfamiljen.
font = FontData("Times New Roman")
portion.getPortionFormat().setLatinFont(font)
# Ställ in fet, kursiv, understruken och teckensnittsstorlek.
portion.getPortionFormat().setFontBold(NullableBool.True_)
portion.getPortionFormat().setFontItalic(NullableBool.True_)
portion.getPortionFormat().setFontUnderline(TextUnderlineType.Single)
portion.getPortionFormat().setFontHeight(25)
# Ställ in teckensnittsfärgen.
portion.getPortionFormat().getFillFormat().setFillType(FillType.Solid)
portion.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE)
# Spara presentationen.
presentation.save("pptxFont.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()


