1. Продукты
  2.   Aspose.Slides
  3.   Aspose.Slides FOSS for .NET

Aspose.Slides FOSS for .NET

Создавайте, читайте и редактируйте презентации PowerPoint из .NET — бесплатно и с открытым исходным кодом, без зависимости от Office.

Открытая библиотека .NET для презентаций PowerPoint

Aspose.Slides FOSS для .NET — это библиотека на чистом C# с лицензией MIT для работы с файлами PowerPoint .pptx. Добавьте один пакет NuGet и сразу начните создавать, читать и редактировать презентации без установки Microsoft Office или какого‑либо проприетарного runtime.

Библиотека предоставляет API презентаций, построенный вокруг Presentation, Slide, Shape, TextFrame, Paragraph и Portion — концептуальной модели, используемой самим PowerPoint. Добавляйте и удаляйте слайды, вставляйте AutoShapes, Tables и Connectors, форматируйте текст на уровне символов с помощью полужирного, курсивного, задавайте размер шрифта и цвет, применяйте сплошные или градиентные заливки и добавляйте визуальные эффекты (тень, сияние, размытие, отражение).

Паттерн IDisposable обеспечивает надёжную очистку ресурсов: всегда оборачивайте Presentation в оператор using. Неизвестные XML‑части, встреченные при загрузке, сохраняются дословно при сохранении, поэтому при обратном преобразовании содержимое, которое библиотека ещё не понимает, никогда не уничтожается. Библиотека требует .NET 9.0 или новее и не имеет нативных расширений для компиляции.

API презентаций и слайдов

  • Создание и открытие PPTX: Создавайте новые презентации или открывайте существующие файлы .pptx с помощью new Presentation() или new Presentation(file).
  • Добавление и удаление слайдов: Программно управляйте SlideCollection с помощью AddClone(), AddEmptySlide(), Remove() и RemoveAt().
  • AutoShapes: Вставляйте прямоугольники, эллипсы, линии и другие геометрии ShapeType с помощью AddAutoShape().
  • Tables and Connectors: Добавляйте структурированные формы таблиц и соединительные линии между объектами с помощью AddConnector().
  • Speaker notes: Читайте и записывайте заметки докладчика для каждого слайда через NotesSlideManager.
  • Ветвящиеся комментарии: Получайте ветки комментариев уровня слайда с помощью GetSlideComments().

Где можно использовать Aspose.Slides FOSS

  • Генерация отчетов: Создавайте фирменные наборы слайдов из источников данных без Office.
  • Автоматизация шаблонов: Заполняйте PPTX‑шаблоны динамическим контентом в CI/CD конвейерах.
  • Миграция контента: Читайте существующие презентации и перестраивайте или изменяйте стиль слайдов.
  • Безсерверные бекенды: Обрабатывайте файлы PPTX внутри контейнеров Docker или Azure Functions.
  • Пакетная обработка: Применяйте единообразные изменения форматирования к большим библиотекам наборов слайдов.

Форматирование текста и визуальные эффекты

  • Форматирование на уровне символов: Применяйте полужирный, курсив, размер шрифта и цвет к отдельным объектам Portion через PortionFormat.
  • Сплошные и градиентные заливки: Устанавливайте заливку фигуры в сплошной цвет или линейный градиент с несколькими остановками с помощью FillFormat и FillType.
  • Эффекты тени и свечения: Применяйте внешнюю тень, свечение, размытие и отражение к любой фигуре через EffectFormat.
  • Выравнивание абзаца: Устанавливайте выравнивание по левому краю, по центру, по правому краю или по ширине для каждого абзаца с помощью ParagraphFormat.Alignment.
  • Безопасно при обратном проходе: Неизвестные части XML сохраняются дословно при повторном сохранении.

Опыт разработчика

Aspose.Slides FOSS устанавливается одной командой dotnet add package Aspose.Slides.Foss. Библиотека написана полностью на C# без нативных расширений для компиляции и без необходимости установки системных пакетов.

API отражает собственную объектную модель PowerPoint (Presentation, Slide, Shape, TextFrame, Paragraph, Portion), поэтому любой, знакомый с объектной моделью PowerPoint, может сразу использовать библиотеку. Она лицензирована по MIT, открытый исходный код на GitHub и требует .NET 9.0 или новее.

Создать презентацию и добавить форму

Используйте оператор using, чтобы гарантировать, что Presentation всегда освобождается и ресурсы освобождаются. AddAutoShape() принимает перечисление ShapeType, затем координаты x/y и ширину/высоту в пунктах — свойство TextFrame.Text формы задаёт метку в одну строку.

dotnet add package Aspose.Slides.Foss
using Aspose.Slides.Foss;

using var prs = new Presentation();
var slide = prs.Slides[0];

// Добавить прямоугольную AutoShape
var shape = slide.Shapes.AddAutoShape(
    ShapeType.Rectangle, 50, 50, 400, 150
);
shape.TextFrame.Text = "Привет, Aspose.Slides!";

prs.Save("output.pptx", SaveFormat.Pptx);

Форматировать текст и применить эффект заливки

Форматирование текста работает на уровне Portion — наименьшей единицы последовательности символов. Откройте сохранённый файл, перейдите к первой части первого абзаца и задайте свойства шрифта напрямую. Заполнение фигуры независимо: установите FillType в Solid и назначьте цвет SolidFillColor.Color.

using Aspose.Slides.Foss;

using var prs = new Presentation("output.pptx");
var shape = prs.Slides[0].Shapes[0];
var portion = shape.TextFrame.Paragraphs[0].Portions[0];

// Жирный, 18pt, темно-синий текст
portion.PortionFormat.FontBold = NullableBool.True;
portion.PortionFormat.FontHeight = 18;
portion.PortionFormat.FillFormat.SolidFillColor.Color =
    Color.FromArgb(255, 0, 0, 139);

// Сплошное заполнение фона у фигуры
shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color =
    Color.FromArgb(255, 240, 248, 255);

prs.Save("formatted.pptx", SaveFormat.Pptx);

Часто задаваемые вопросы

Что такое Aspose.Slides FOSS for .NET?

Это бесплатная, лицензированная MIT, чисто‑C# библиотека для создания, чтения и редактирования презентаций PowerPoint .pptx без необходимости в Microsoft Office.

Какие форматы файлов поддерживаются?

PPTX — поддерживаемый формат чтения/записи. Экспорт в PDF, HTML, SVG или изображения недоступен в этой версии.

Требуется ли Microsoft Office или PowerPoint?

Нет. Aspose.Slides FOSS — это чистая C#‑библиотека без зависимости от Microsoft Office, автоматизации COM или какого‑либо проприетарного runtime.

Как установить его?

Выполните dotnet add package Aspose.Slides.Foss. Библиотека требует .NET версии 9.0 или новее. Нативных расширений для компиляции нет.

Могу ли я применить визуальные эффекты, такие как тень и свечение?

Да. Библиотека поддерживает внешнюю тень, свечение, размытие и эффекты отражения для любого объектa формы через API EffectFormat.

Рекомендуется ли шаблон IDisposable?

Да. Всегда оборачивайте Presentation в оператор using (using var prs = new Presentation();), чтобы обеспечить надёжную очистку ресурсов.

Повредит ли повторный импорт‑экспорт PPTX неизвестный контент?

Нет. Неизвестные XML‑части, обнаруженные при загрузке, сохраняются дословно при сохранении, поэтому содержимое, которое библиотека ещё не понимает, никогда не теряется.

Где я могу найти исходный код?

Библиотека лицензирована по MIT и размещена на GitHub. Сообщения об ошибках и запросы на включение изменений приветствуются.

  

Ресурсы поддержки и обучения

 Русский