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

Aspose.Slides FOSS для .NET

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

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

Aspose.Slides FOSS для .NET — это библиотека pure-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 с полной поддержкой в продакшене, могут использовать Aspose.Slides for .NET вместе с этими открытыми ресурсами.

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

  • Create and open PPTX: Create new presentations or open existing .pptx files via new Presentation() or new Presentation(file).
  • Добавить и удалить слайды: Программно управлять SlideCollection с помощью AddClone(), AddEmptySlide(), Remove() и RemoveAt().
  • AutoShapes: Вставляйте прямоугольники, эллипсы, линии и другие ShapeType геометрии через AddAutoShape().
  • Таблицы и соединители: Добавьте структурированные формы таблиц и соединительные линии между формами через AddConnector().
  • Заметки докладчика: Читайте и записывайте примечания к каждому слайду через NotesSlideManager.
  • Ветвящиеся комментарии: Получайте доступ к цепочкам комментариев уровня слайда с помощью GetSlideComments().

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

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

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

  • Форматирование на уровне символов: Применяйте полужирный, курсив, размер шрифта и цвет к отдельным объектам Portion через PortionFormat.
  • Сплошные и градиентные заливки: Установите заливку фигуры сплошным цветом или линейным градиентом с несколькими остановками, используя FillFormat и FillType.
  • Эффекты тени и свечения: Применяйте внешнюю тень, свечение, размытие и отражение к любой фигуре через EffectFormat.
  • Выравнивание абзаца: Установите выравнивание слева, по центру, справа или по ширине для каждого абзаца, используя ParagraphFormat.Alignment.
  • Round-trip safe: Неизвестные части 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 и ширину/высоту в пунктах. Вызовите AddTextFrame(), чтобы создать текстовый кадр и установить начальный текст одним вызовом — не обращайтесь к TextFrame до вызова AddTextFrame(), так как кадр равен null до создания.

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

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

// Add a rectangle AutoShape
var shape = slide.Shapes.AddAutoShape(
    ShapeType.Rectangle, 50, 50, 400, 150
);
shape.AddTextFrame("Hello, Aspose.Slides!");

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

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

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

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;

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

// Bold, 18pt, dark-blue text
portion.PortionFormat.FontBold = NullableBool.True;
portion.PortionFormat.FontHeight = 18;
portion.PortionFormat.FillFormat.SolidFillColor.Color =
    Color.FromArgb(255, 0, 0, 139);

// Solid background fill on the shape
shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color =
    Color.FromArgb(255, 240, 248, 255);

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

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

Что такое Aspose.Slides FOSS для .NET?

Это бесплатная библиотека pure-C# с лицензией MIT для создания, чтения и редактирования презентаций 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. Сообщения об ошибках и pull requests приветствуются.

  

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

 Русский