Бесплатная библиотека .NET для работы с презентационными документами

Чтение, запись, манипулирование и преобразование файлов презентаций, добавление слайдов и фигур в существующие файлы PPT/PPTX через API с открытым исходным кодом .NET.

NetOffice — это API с открытым исходным кодом, разработанный Microsoft и распространяемый в соответствии с кодексом поведения Microsoft с открытым исходным кодом для управления презентационными документами.

Используя API, вы можете добавлять текст, верхний и нижний колонтитулы, концевые заметки, сноски, стили, темы и многое другое. Он позволяет создавать высокопроизводительные презентационные документы и извлекать из них данные. API поддерживает различные платформы .NET, включая .NET 3.5, .NET 4.0, .NET 4.6 и .NET Standard 1.3.

Previous Next

Начало работы с NetOffice

Прежде всего, вам необходимо иметь .NET Framework 4.5 или выше. После этого загрузите репозиторий вручную с GitHub или установите его из NuGet.

Установка NetOffice из NuGet

 Install-Package NetOfficeFw.Presentation

Добавляйте слайды в PowerPoint с помощью бесплатного C# API

NetOffice позволяет программистам .NET программно добавлять слайды в файлы Microsoft PowerPoint. Чтобы добавить слайды в файл PowerPoint, сначала необходимо инициализировать PowerPoint.Application и отключить окна сообщений. После запуска приложения PowerPoint вы можете добавить в него новую презентацию с помощью метода PowerApplication.Presentations.Add(). Наконец, вы можете добавлять слайды в свои презентации, используя метод Presentation.Slides.Add().

Создавайте презентации и добавляйте в них слайды с помощью C# API

            // start powerpoint
            PowerPoint.Application powerApplication = new PowerPoint.Application();
            // create a utils instance, no need for but helpful to keep the lines of code low
            CommonUtils utils = new CommonUtils(powerApplication);
            // add a new presentation with two new slides
            PowerPoint.Presentation presentation = powerApplication.Presentations.Add(MsoTriState.msoTrue);
            PowerPoint.Slide slide1 = presentation.Slides.Add(1, PpSlideLayout.ppLayoutBlank);
            PowerPoint.Slide slide2 = presentation.Slides.Add(1, PpSlideLayout.ppLayoutBlank);
            // add shapes
            slide1.Shapes.AddShape(MsoAutoShapeType.msoShape4pointStar, 100, 100, 200, 200);
            slide2.Shapes.AddShape(MsoAutoShapeType.msoShapeDoubleWave, 200, 200, 200, 200);
            // change blend animation
            slide1.SlideShowTransition.EntryEffect = PpEntryEffect.ppEffectCoverDown;
            slide1.SlideShowTransition.Speed = PpTransitionSpeed.ppTransitionSpeedFast;
            slide2.SlideShowTransition.EntryEffect = PpEntryEffect.ppEffectCoverLeftDown;
            slide2.SlideShowTransition.Speed = PpTransitionSpeed.ppTransitionSpeedFast;
            // save the document
            string documentFile = utils.File.Combine(HostApplication.RootDirectory, "Example04", DocumentFormat.Normal); 
            presentation.SaveAs(documentFile);
            // close power point and dispose reference
            powerApplication.Quit();
            powerApplication.Dispose();
            // show end dialog
            HostApplication.ShowFinishDialog(null, documentFile);

Добавить метку, строку и усилитель; Звезда в презентациях с использованием бесплатного C# API

NetOffice позволяет программистам .NET добавлять метки, строки и т.д. звездочки в Microsoft Presentation File программно. Чтобы добавить содержимое в файл презентации, сначала необходимо инициализировать приложение PowerPoint.Application, отключить окна сообщений и добавить новую презентацию с помощью метода PowerApplication.Presentations.Add(), а также добавить новый слайд с помощью метода Presentation.Slides.Add(). Вы можете добавить метку, линию и звездочку на слайд с помощью методов Slide.Shapes.AddLabel(), Slide.Shapes.AddLine() и Slide.Shapes.AddShape(() соответственно.

Добавьте метку, линию и звездочку в презентации через C# API

// add a new presentation with one new slide
PowerPoint.Presentation presentation = powerApplication.Presentations.Add(MsoTriState.msoTrue);
PowerPoint.Slide slide = presentation.Slides.Add(1, PpSlideLayout.ppLayoutBlank);
// add a label
PowerPoint.Shape label = slide.Shapes.AddLabel(MsoTextOrientation.msoTextOrientationHorizontal, 10, 10, 600, 20);
label.TextFrame.TextRange.Text = "This slide and created Shapes are created by NetOffice example.";
// add a line
slide.Shapes.AddLine(10, 80, 700, 80);
// add a wordart
slide.Shapes.AddTextEffect(MsoPresetTextEffect.msoTextEffect9, "This a WordArt", "Arial", 20,
                                           MsoTriState.msoTrue, MsoTriState.msoFalse, 10, 150);
// add a star
slide.Shapes.AddShape(MsoAutoShapeType.msoShape24pointStar, 200, 200, 250, 250);
// save the document
string documentFile = utils.File.Combine(HostApplication.RootDirectory, "Example02", DocumentFormat.Normal); 
presentation.SaveAs(documentFile);
 Русский