Функції та можливості
Функції та можливості
Aspose.Slides FOSS for .NET надає широкий набір можливостей для програмної роботи з файлами PowerPoint .pptx. На цій сторінці перелічено всі підтримувані області функціональності з представницькими прикладами коду.
Презентація I/O
Відкрийте існуючий файл .pptx або створіть новий, потім збережіть у форматі PPTX.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
// Open an existing presentation
using (var prs = new Presentation("input.pptx"))
{
Console.WriteLine($"Slide count: {prs.Slides.Count}");
prs.Save("output.pptx", SaveFormat.Pptx);
}
// Create a new presentation (starts with one blank slide)
using (var prs = new Presentation())
{
prs.Save("new.pptx", SaveFormat.Pptx);
}Примітка: PPTX — єдиний підтримуваний формат збереження. Експорт у PDF, HTML, SVG або зображення недоступний.
Невідомі XML‑частини у вихідному файлі зберігаються дослівно під час збереження, тому відкриття та повторне збереження .pptx ніколи не видалить вміст, який бібліотека ще не розуміє.
Управління слайдами
Додати, видалити, клонувати та змінити порядок слайдів.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
// Access the first slide
var slide = prs.Slides[0];
// Add an additional blank slide at the end
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
Console.WriteLine($"Total slides: {prs.Slides.Count}");
prs.Save("multi-slide.pptx", SaveFormat.Pptx);Форми
Додайте AutoShapes, PictureFrames, Tables та Connectors до слайду.
AutoShapes
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Add a rectangle at (x=50, y=50) with width=300, height=100
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 300, 100);
shape.AddTextFrame("Aspose.Slides FOSS");
prs.Save("shapes.pptx", SaveFormat.Pptx);Таблиці
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Column widths and row heights in points
double[] colWidths = { 120.0, 120.0, 120.0 };
double[] rowHeights = { 40.0, 40.0, 40.0 };
var table = slide.Shapes.AddTable(50, 50, colWidths, rowHeights);
table.Rows[0][0].TextFrame.Text = "Product";
table.Rows[0][1].TextFrame.Text = "Quantity";
table.Rows[0][2].TextFrame.Text = "Price";
prs.Save("table.pptx", SaveFormat.Pptx);Коннектори
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var box1 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 100, 150, 60);
var box2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 350, 100, 150, 60);
var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
conn.StartShapeConnectedTo = box1;
conn.StartShapeConnectionSiteIndex = 3; // right side
conn.EndShapeConnectedTo = box2;
conn.EndShapeConnectionSiteIndex = 1; // left side
prs.Save("connector.pptx", SaveFormat.Pptx);Форматування тексту
Форматуйте текст на рівні абзацу та символу за допомогою PortionFormat.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Bold blue heading");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 28;
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
prs.Save("text.pptx", SaveFormat.Pptx);NullableBool.True встановлює властивість явно; NullableBool.NotDefined успадковується від майстра слайдів.
Типи заповнення
Застосуйте суцільне, градієнтне, візерункове або зображенням заповнення до форм.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 300, 150);
// Solid fill
shape.FillFormat.FillType = FillType.Solid;
shape.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 30, 120, 200);
prs.Save("fill.pptx", SaveFormat.Pptx);Візуальні ефекти
Застосуйте зовнішню тінь, світіння, м’яку межу, розмиття, відображення та внутрішню тінь до форм.
Властивості ефекту доступні через shape.EffectFormat. Викличте EnableOuterShadowEffect(), EnableGlowEffect(), EnableSoftEdgeEffect(), SetBlurEffect(), EnableReflectionEffect() або EnableInnerShadowEffect(), щоб налаштувати кожен окремо.
3D-форматування
Застосуйте 3D‑скос, камеру, освітлювальну систему, матеріал і глибину екструзії за допомогою shape.ThreeDFormat. Це контролює візуальну глибину та модель освітлення під час рендерингу форм у переглядачах PPTX, які підтримують 3D‑ефекти.
Примітки доповідача
Прикріпіть нотатки до будь‑якого слайду, використовуючи NotesSlideManager.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var notes = prs.Slides[0].NotesSlideManager.AddNotesSlide();
notes.NotesTextFrame.Text = "Key talking point: emphasize the ROI benefit.";
prs.Save("notes.pptx", SaveFormat.Pptx);Коментарі
Додайте багаторівневі коментарі з інформацією про автора та позицією слайду.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var author = prs.CommentAuthors.AddAuthor("Jane Smith", "JS");
var slide = prs.Slides[0];
author.Comments.AddComment(
"Please verify this data before the presentation.",
slide,
new PointF(2.0f, 2.0f),
DateTime.Now
);
prs.Save("comments.pptx", SaveFormat.Pptx);Вбудовані зображення
Вставте зображення з файлу у презентацію та додайте його на слайд як PictureFrame.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var imageData = File.ReadAllBytes("logo.png");
var image = prs.Images.AddImage(imageData);
var slide = prs.Slides[0];
slide.Shapes.AddPictureFrame(ShapeType.Rectangle, 50, 50, 200, 150, image);
prs.Save("with-image.pptx", SaveFormat.Pptx);Властивості документа
Читати та записувати основні, додаткові та користувацькі властивості документа.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var props = prs.DocumentProperties;
// Core properties
props.Title = "Q1 Results";
props.Author = "Finance Team";
props.Subject = "Quarterly Review";
props.Keywords = "Q1, finance, results";
// Custom property
props.SetCustomPropertyValue("ReviewedBy", "Legal Team");
prs.Save("deck.pptx", SaveFormat.Pptx);Відомі обмеження
Наступні області піднімають NotImplementedException і недоступні у цьому випуску:
| Область | Статус |
|---|---|
| Діаграми | Не реалізовано |
| SmartArt | Не реалізовано |
| Анімації та переходи | Не реалізовано |
| Експорт PDF / HTML / SVG / зображень | Не реалізовано (лише PPTX) |
| VBA макроси | Не реалізовано |
| Цифрові підписи | Не реалізовано |
| Гіперпосилання та налаштування дій | Не реалізовано |
| OLE-об’єкти | Не реалізовано |
| Математичний текст | Не реалізовано |
Див. також
- Початок роботи: Встановлення та перша програма
- Довідник API: Довідник класів і методів
- Посібники: Статті, орієнтовані на завдання