Gestire i caratteri nelle presentazioni su Android
Panoramica
Aspose.Slides consente di gestire le proprietà dei caratteri nel testo di una presentazione direttamente dal codice. È possibile accedere al testo nelle diapositive tramite forme, riquadri di testo, paragrafi e porzioni, quindi applicare formattazioni al testo selezionato.
Questo articolo spiega come configurare le proprietà dei caratteri per il testo esistente in una presentazione, includendo famiglia di caratteri, stili grassetto e corsivo, allineamento del paragrafo e colore del carattere. Mostra inoltre come creare una casella di testo, aggiungere del testo al suo interno e impostare proprietà del carattere come famiglia, grassetto, corsivo, sottolineato, dimensione e colore prima di salvare il risultato come file PPTX.
Gestire le proprietà dei caratteri
Per gestire le proprietà dei caratteri di un paragrafo usando Aspose.Slides per Android tramite Java:
- Creare un’istanza della classe Presentation.
- Ottenere un riferimento a una diapositiva utilizzando il suo indice.
- Accedere alle forme Placeholder nella diapositiva e convertirle in AutoShape.
- Recuperare il Paragraph dal TextFrame fornito da AutoShape.
- Giustificare il paragrafo.
- Accedere al testo del Paragraph tramite la sua Portion.
- Definire il carattere usando FontData e impostare il Font della Portion di conseguenza.
- Impostare il carattere in grassetto.
- Impostare il carattere in corsivo.
- Impostare il colore del carattere usando il FillFormat esposto dall’oggetto Portion.
- Salvare la presentazione modificata in un file PPTX.
L’implementazione dei passaggi precedenti è mostrata di seguito. Prende una presentazione grezza e formatta i caratteri su una delle diapositive. Gli screenshot seguenti mostrano il file di input e come i frammenti di codice lo modificano. Il codice cambia il carattere, il colore e lo stile del carattere.
![]() |
|---|
| Figura: Il testo nel file di input |
![]() |
|---|
| Figura: Lo stesso testo con formattazione aggiornata |
// Istanziare un oggetto Presentation che rappresenta un file PPTX
Presentation pres = new Presentation("FontProperties.pptx");
try {
// Accesso a una diapositiva usando la sua posizione
ISlide slide = pres.getSlides().get_Item(0);
// Accesso al primo e al secondo placeholder nella diapositiva e casting a AutoShape
ITextFrame tf1 = ((IAutoShape) slide.getShapes().get_Item(0)).getTextFrame();
ITextFrame tf2 = ((IAutoShape) slide.getShapes().get_Item(1)).getTextFrame();
// Accesso al primo Paragrafo
IParagraph para1 = tf1.getParagraphs().get_Item(0);
IParagraph para2 = tf2.getParagraphs().get_Item(0);
// Giustificare il paragrafo
para2.getParagraphFormat().setAlignment(TextAlignment.JustifyLow);
// Accesso alla prima porzione
IPortion port1 = para1.getPortions().get_Item(0);
IPortion port2 = para2.getPortions().get_Item(0);
// Definire nuovi caratteri
FontData fd1 = new FontData("Elephant");
FontData fd2 = new FontData("Castellar");
// Assegnare nuovi caratteri alla porzione
port1.getPortionFormat().setLatinFont(fd1);
port2.getPortionFormat().setLatinFont(fd2);
// Impostare il carattere in Grassetto
port1.getPortionFormat().setFontBold(NullableBool.True);
port2.getPortionFormat().setFontBold(NullableBool.True);
// Impostare il carattere in Corsivo
port1.getPortionFormat().setFontItalic(NullableBool.True);
port2.getPortionFormat().setFontItalic(NullableBool.True);
// Impostare il colore del carattere
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);
// Salvare il PPTX su disco
pres.save("WelcomeFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Impostare le proprietà del carattere del testo
Per creare una casella di testo e impostare le proprietà del carattere del testo al suo interno:
- Creare un’istanza della classe Presentation.
- Ottenere il riferimento a una diapositiva usando il suo indice.
- Aggiungere alla diapositiva un AutoShape di tipo Rectangle.
- Rimuovere lo stile di riempimento associato al AutoShape.
- Accedere al TextFrame del AutoShape.
- Aggiungere del testo al TextFrame.
- Accedere all’oggetto Portion associato al TextFrame.
- Definire il carattere da utilizzare per la Portion.
- Impostare altre proprietà del carattere come grassetto, corsivo, sottolineato, colore e altezza usando le relative proprietà esposte dall’oggetto Portion.
- Scrivere la presentazione modificata in un file PPTX.
L’implementazione dei passaggi precedenti è mostrata di seguito.
![]() |
|---|
| Figura: Testo con alcune proprietà del carattere impostate da Aspose.Slides per Android tramite Java |
// Istanziare un oggetto Presentation che rappresenta un file PPTX
Presentation pres = new Presentation();
try {
// Ottieni la prima diapositiva
ISlide sld = pres.getSlides().get_Item(0);
// Aggiungi un AutoShape di tipo Rettangolo
IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
// Rimuovere eventuale stile di riempimento associato all'AutoShape
ashp.getFillFormat().setFillType(FillType.NoFill);
// Accedere al TextFrame associato all'AutoShape
ITextFrame tf = ashp.getTextFrame();
tf.setText("Aspose TextBox");
// Accedere alla Portion associata al TextFrame
IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
// Impostare il Font per la Portion
port.getPortionFormat().setLatinFont(new FontData("Times New Roman"));
// Impostare la proprietà Grassetto del Font
port.getPortionFormat().setFontBold(NullableBool.True);
// Impostare la proprietà Corsivo del Font
port.getPortionFormat().setFontItalic(NullableBool.True);
// Impostare la proprietà Sottolineato del Font
port.getPortionFormat().setFontUnderline(TextUnderlineType.Single);
// Impostare l'Altezza del Font
port.getPortionFormat().setFontHeight(25);
// Impostare il colore del Font
port.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Salvare la presentazione su disco
pres.save("pptxFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}


