La ricerca e la sostituzione del testo viene spesso utilizzata per aggiornare il contenuto nelle presentazioni PowerPoint. Tuttavia, per eseguire questa operazione per un batch di presentazioni, è necessaria l’automazione. Di conseguenza, questo articolo illustra come trovare e sostituire il testo in PowerPoint PPTX/PPT a livello di codice usando C#.
API C# per trovare e sostituire il testo in PowerPoint
Per trovare e sostituire il testo nelle presentazioni PowerPoint, utilizzeremo Aspose.Slides for .NET. È un’API ricca di funzionalità progettata per creare e manipolare presentazioni PowerPoint dall’interno di applicazioni .NET. Puoi scaricare l’API o installarla utilizzando NuGet.
PM> Install-Package Aspose.Slides.NET
Trova e sostituisci testo in PowerPoint PPTX usando C#
Di seguito sono riportati i passaggi per trovare e sostituire il testo in una presentazione PPTX usando C#.
- Carica la presentazione PowerPoint utilizzando la classe Presentazione.
- Scorri ogni Diapositiva nella presentazione.
- In ogni iterazione, ottieni cornici di testo in un array ITextFrame.
- Esegui il ciclo dell’array di ITextFrame e in ogni iterazione, esegui le seguenti operazioni:
- Scorri la ParagraphCollection in ogni cornice di testo.
- Accedi alla PortionCollection in ogni Paragrafo.
- Controlla se Portion.Text contiene la stringa di ricerca.
- Se sì, trova la posizione della stringa di ricerca e sostituiscila impostando la proprietà Portion.Text.
- Salva la presentazione aggiornata usando il metodo Presentation.Save(string, SaveFormat).
Nell’esempio di codice seguente viene illustrato come trovare e sostituire il testo in una presentazione di PowerPoint.
// Carica presentazione
Presentation pres = new Presentation("mytextone.pptx");
string strToFind = "search string";
string strToReplaceWith = "replace string";
// Passa attraverso ogni diapositiva
foreach (Slide slide in pres.Slides)
{
// Ottieni tutte le cornici di testo nella diapositiva
ITextFrame[] tf = SlideUtil.GetAllTextBoxes(slide);
for (int i = 0; i < tf.Length; i++)
foreach (Paragraph para in tf[i].Paragraphs)
foreach (Portion port in para.Portions)
// Trova il testo da sostituire
if (port.Text.Contains(strToFind))
{
// Sostituisci il testo esistente con il nuovo testo
string str = port.Text;
int idx = str.IndexOf(strToFind);
string strStartText = str.Substring(0, idx);
string strEndText = str.Substring(idx + strToFind.Length, str.Length - 1 - (idx + strToFind.Length - 1));
port.Text = strStartText + strToReplaceWith + strEndText;
}
}
// Salva la presentazione
pres.Save("myTextOneAspose.pptx", SaveFormat.Pptx);
Ottieni una licenza API gratuita
È possibile utilizzare Aspose.Slides per .NET senza limitazioni di valutazione richiedendo una licenza temporanea.
Conclusione
La funzione di ricerca e sostituzione del testo nelle presentazioni PowerPoint viene utilizzata in vari scenari. Per automatizzare questa operazione, l’articolo illustra come trovare e sostituire il testo nelle presentazioni di PowerPoint a livello di codice usando C#. Puoi semplicemente installare l’API nella tua applicazione e integrare l’esempio di codice fornito. Inoltre, puoi visitare la documentazione per esplorare altre funzionalità di Aspose.Slides per .NET. Inoltre, puoi sentirti libero di farci sapere delle tue domande tramite il nostro forum.