У��авление надстрочным и подстрочным текстом в презентациях на .NET
Обзор
Aspose.Slides for .NET предоставляет функции для интеграции текста в верхнем и нижнем индексе в ваши презентации PowerPoint (PPT, PPTX) и OpenDocument (ODP). Независимо от того, нужно ли вам выделять химические формулы, математические уравнения или добавлять сноски, эти специализированные параметры форматирования помогают сохранять ясность и точность. В этой статье вы узнаете, как без усилий применять стили верхнего и нижнего индекса и обеспечивать профессиональный результат на каждом слайде.
Добавление верхнего и нижнего индекса
Вы можете добавить текст в верхнем и нижнем индексе внутри любого абзаца в презентации. Чтобы достичь этого с помощью Aspose.Slides, необходимо использовать свойство Escapement класса PortionFormat.
Это свойство позволяет задавать текст в верхнем или нижнем индексе, значения варьируются от -100% (нижний индекс) до 100% (верхний индекс).
Implementation steps:
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд, используя его индекс.
- Добавьте к слайду объект IAutoShape типа
Rectangle. - Получите доступ к ITextFrame, связанному с IAutoShape.
- Очистите существующие абзацы.
- Создайте новый Paragraph для текста в верхнем индексе и добавьте его в коллекцию абзацев ITextFrame.
- Создайте новый объект текстовой части.
- Установите свойство
Escapementдля текстовой части в диапазоне от 0 до 100, чтобы применить верхний индекс (0 означает отсутствие верхнего индекса). - Задайте текст для Portion и добавьте его в коллекцию частей абзаца.
- Создайте еще один Paragraph для текста в нижнем индексе и добавьте его в коллекцию абзацев.
- Создайте новый объект текстовой части.
- Установите свойство
Escapementдля текстовой части в диапазоне от 0 до -100, чтобы применить нижний индекс (0 означает отсутствие нижнего индекса). - Задайте текст для Portion и добавьте его в коллекцию частей абзаца.
- Сохраните презентацию в файл PPTX.
The following C# code implements these steps:
using (Presentation presentation = new Presentation())
{
// Получить первый слайд.
ISlide slide = presentation.Slides[0];
// Создать текстовое поле.
IAutoShape shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 100, 100, 200, 100);
ITextFrame textFrame = shape.TextFrame;
textFrame.Paragraphs.Clear();
// Создать абзац для надстрочного текста.
IParagraph superPar = new Paragraph();
// Создать часть текста с обычным текстом.
IPortion portion1 = new Portion();
portion1.Text = "MyProduct";
superPar.Portions.Add(portion1);
// Создать часть текста с надстрочным текстом.
IPortion superPortion = new Portion();
superPortion.PortionFormat.Escapement = 30;
superPortion.Text = "TM";
superPar.Portions.Add(superPortion);
// Создать абзац для нижнего индекса.
IParagraph paragraph2 = new Paragraph();
// Создать часть текста с обычным текстом.
IPortion portion2 = new Portion();
portion2.Text = "a";
paragraph2.Portions.Add(portion2);
// Создать часть текста с нижним индексом.
IPortion subPortion = new Portion();
subPortion.PortionFormat.Escapement = -25;
subPortion.Text = "i";
paragraph2.Portions.Add(subPortion);
// Добавить абзацы в текстовое поле.
textFrame.Paragraphs.Add(superPar);
textFrame.Paragraphs.Add(paragraph2);
presentation.Save("output.pptx", SaveFormat.Pptx);
}
Результат:

Часто задаваемые вопросы
Будут ли верхний и нижний индекс сохранены при экспорте в PDF или другие форматы?
Да, Aspose.Slides for .NET корректно сохраняет форматирование верхнего и нижнего индекса при экспорте презентаций в PDF, PPT/PPTX, изображения и другие поддерживаемые форматы. Специализированное форматирование остается неизменным во всех выходных файлах.
Можно ли комбинировать верхний и нижний индекс с другими стилями форматирования, например жирным или курсивом?
Да, Aspose.Slides позволяет смешивать различные стили текста внутри одной части текста. Вы можете включить жирный, курсив, подчёркивание и одновременно применить верхний или нижний индекс, настроив соответствующие свойства в PortionFormat.
Работает ли форматирование верхнего и нижнего индекса для текста внутри таблиц, диаграмм или SmartArt?
Да, Aspose.Slides for .NET поддерживает форматирование в большинстве объектов, включая таблицы и элементы диаграмм. При работе с SmartArt необходимо получить доступ к соответствующим элементам (например, к SmartArtNode) и их текстовым контейнерам, а затем настроить свойства PortionFormat аналогичным образом.