Применение 3D-эффектов в PowerPoint с помощью C#

3D-эффекты в презентациях PowerPoint делают контент более привлекательным. Используя 3D-текст или фигуры, вы можете повысить интерактивность и привлечь внимание аудитории. При работе над автоматизацией PowerPoint из приложений .NET вам может понадобиться добавить в презентации 3D-эффекты. Для этого в этой статье рассказывается, как применять 3D-эффекты в PowerPoint PPT на C#.

.NET API для применения 3D-эффектов в PowerPoint

Aspose.Slides for .NET — это замечательный API, предоставляющий ряд функций для реализации автоматизации PowerPoint. Используя API, вы можете легко создавать презентации и управлять ими. Мы будем использовать этот API для применения 3D-эффектов в презентациях PowerPoint. Вы можете либо скачать библиотеку DLL API, либо установить ее с помощью NuGet.

PM> Install-Package Aspose.Slides.NET 

Создание 3D-текста в PowerPoint на C#

Ниже приведены шаги для создания фрагмента 3D-текста в PowerPoint PPT с использованием C#.

  • Сначала создайте новый PPT или загрузите существующий, используя класс Presentation.
  • Затем добавьте новый прямоугольник с помощью метода AddAutoShape().
  • Задайте свойства фигуры, такие как тип заливки, текст и т. д.
  • Получить ссылку на текст внутри формы в объект Partion.
  • Примените форматирование к текстовой части.
  • Получить ссылку на внутреннюю форму TextFrame.
  • Применяйте 3D-эффекты, используя свойства в TextFrame.TextFrameFormat.ThreeDFormat.
  • Наконец, сохраните презентацию, используя метод Presentation.Save(String, SaveFormat).

В следующем примере кода показано, как создать трехмерный текст в PowerPoint на C#.

// Создать презентацию
using (Presentation presentation = new Presentation())
{
    // Создайте форму прямоугольника
    IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 250, 250);
    shape.FillFormat.FillType = FillType.NoFill;
    shape.LineFormat.FillFormat.FillType = FillType.NoFill;
    shape.TextFrame.Text = "3D Text";

    // Получить текстовую часть
    Portion portion = (Portion)shape.TextFrame.Paragraphs[0].Portions[0];
    portion.PortionFormat.FillFormat.FillType = FillType.Pattern;
    portion.PortionFormat.FillFormat.PatternFormat.ForeColor.Color = Color.DarkOrange;
    portion.PortionFormat.FillFormat.PatternFormat.BackColor.Color = Color.White;
    portion.PortionFormat.FillFormat.PatternFormat.PatternStyle = PatternStyle.LargeGrid;
    shape.TextFrame.Paragraphs[0].ParagraphFormat.DefaultPortionFormat.FontHeight = 128;

    // Доступ к текстовому фрейму
    ITextFrame textFrame = shape.TextFrame;

    // Настройте эффект преобразования WordArt «Арка вверх»
    textFrame.TextFrameFormat.Transform = TextShapeType.ArchUp;

    // Применение 3D-эффектов
    textFrame.TextFrameFormat.ThreeDFormat.ExtrusionHeight = 3.5f;
    textFrame.TextFrameFormat.ThreeDFormat.Depth = 3;
    textFrame.TextFrameFormat.ThreeDFormat.Material = MaterialPresetType.Plastic;
    textFrame.TextFrameFormat.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
    textFrame.TextFrameFormat.ThreeDFormat.LightRig.LightType = LightRigPresetType.Balanced;
    textFrame.TextFrameFormat.ThreeDFormat.LightRig.SetRotation(0, 0, 40);
    textFrame.TextFrameFormat.ThreeDFormat.Camera.CameraType = CameraPresetType.PerspectiveContrastingRightFacing;

    // Сохранить презентацию
    presentation.Save("3D-Text.pptx", SaveFormat.Pptx);
}

На следующем снимке экрана показан вывод приведенного выше примера кода.

Создание 3D-текста в PowerPoint на C#

Создание 3D-фигуры в PowerPoint на C#

Подобно тексту, вы можете применять 3D-эффекты к фигурам в презентациях PowerPoint. Ниже приведены шаги по созданию 3D-фигуры в PowerPoint на C#.

  • Сначала создайте новый PPT, используя класс Presentation.
  • Добавьте новую прямоугольную форму, используя метод AddAutoShape().
  • Задайте текст фигуры с помощью свойства Shape.TextFrame.Text.
  • Применяйте 3D-эффекты к фигуре, используя свойства в IAutoShape.ThreeDFormat.
  • Наконец, сохраните презентацию, используя метод Presentation.Save(String, SaveFormat).

В следующем примере кода показано, как применять трехмерные эффекты к фигурам в PowerPoint с помощью C#.

// Создать презентацию
using (Presentation presentation = new Presentation())
{
    // Добавить новую форму
    IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 200, 200);

    // Установить текст
    shape.TextFrame.Text = "3D";
    shape.TextFrame.Paragraphs[0].ParagraphFormat.DefaultPortionFormat.FontHeight = 64;

    // Применение 3D-эффектов
    shape.ThreeDFormat.Camera.CameraType = CameraPresetType.OrthographicFront;
    shape.ThreeDFormat.Camera.SetRotation(20, 30, 40);
    shape.ThreeDFormat.LightRig.LightType = LightRigPresetType.Flat;
    shape.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
    shape.ThreeDFormat.Material = MaterialPresetType.Flat;
    shape.ThreeDFormat.ExtrusionHeight = 100;
    shape.ThreeDFormat.ExtrusionColor.Color = Color.Blue;

    // Сохранить презентацию
    presentation.Save("3D-Shape.pptx", SaveFormat.Pptx);
}

Ниже представлена трехмерная форма, которую мы получаем после выполнения этого кода.

Создание 3D-фигуры в PowerPoint на C#

Создание градиента для 3D-фигур

Вы также можете применить эффекты градиента к фигурам, следуя инструкциям ниже.

В следующем примере кода показано, как применить эффекты градиента к фигурам в PowerPoint.

// Создать презентацию
using (Presentation presentation = new Presentation())
{
    // Добавить новую форму
    IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 200, 200);

    // Установить текст
    shape.TextFrame.Text = "3D";
    shape.TextFrame.Paragraphs[0].ParagraphFormat.DefaultPortionFormat.FontHeight = 64;

    // Применить градиент
    shape.FillFormat.FillType = FillType.Gradient;
    shape.FillFormat.GradientFormat.GradientStops.Add(0, Color.Blue);
    shape.FillFormat.GradientFormat.GradientStops.Add(100, Color.LightBlue);

    // Применение 3D-эффектов
    shape.ThreeDFormat.Camera.CameraType = CameraPresetType.OrthographicFront;
    shape.ThreeDFormat.Camera.SetRotation(20, 30, 40);
    shape.ThreeDFormat.LightRig.LightType = LightRigPresetType.Flat;
    shape.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
    shape.ThreeDFormat.Material = MaterialPresetType.Flat;
    shape.ThreeDFormat.ExtrusionHeight = 100;
    shape.ThreeDFormat.ExtrusionColor.Color = Color.Blue;

    // Сохранить презентацию
    presentation.Save("3D-Shape-Gradient.pptx", SaveFormat.Pptx);
}

Ниже представлена 3D-форма после применения эффекта градиента.

Создание градиента для 3D-фигур в PowerPoint

Применение 3D-эффектов к изображению в PowerPoint на C#

Aspose.Slides для .NET также позволяет применять к изображению 3D-эффекты. Ниже приведены шаги для выполнения этой операции на C#.

Ниже приведены шаги для применения 3D-эффектов к изображению в формате PPT с использованием C#.

// Создать презентацию
using (Presentation presentation = new Presentation())
{
    // Добавить новую форму
    IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 200, 200);

    // Добавить изображение
    shape.FillFormat.FillType = FillType.Picture;
    shape.FillFormat.PictureFillFormat.Picture.Image = presentation.Images.AddImage(File.ReadAllBytes("tiger.bmp"));
    shape.FillFormat.PictureFillFormat.PictureFillMode = PictureFillMode.Stretch;

    // Применение 3D-эффектов
    shape.ThreeDFormat.Camera.CameraType = CameraPresetType.OrthographicFront;
    shape.ThreeDFormat.Camera.SetRotation(20, 30, 40);
    shape.ThreeDFormat.LightRig.LightType = LightRigPresetType.Flat;
    shape.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
    shape.ThreeDFormat.Material = MaterialPresetType.Flat;
    shape.ThreeDFormat.ExtrusionHeight = 100;
    shape.ThreeDFormat.ExtrusionColor.Color = Color.DarkGray;

    // Сохранить презентацию
    presentation.Save("3D-Image.pptx", SaveFormat.Pptx);
}

Ниже приведено результирующее изображение, которое мы получаем после применения 3D-эффектов.

Применение 3D-эффектов к изображению в PowerPoint на C#

Получить бесплатную лицензию

Вы можете получить бесплатную временную лицензию для использования Aspose.Slides for .NET без ограничений на пробную версию.

Вывод

В этой статье вы узнали, как применять 3D-эффекты в презентациях PowerPoint с помощью C#. Мы рассмотрели, как создавать 3D-текст или фигуры и применять 3D-эффекты к изображениям в презентациях PPT или PPTX. Если вы хотите узнать больше об Aspose.Slides для .NET, вы можете посетить документацию. Кроме того, вы можете оставлять свои вопросы на нашем форуме.

Смотрите также