Въведение
Aspose.Slides FOSS for .NET provides a comprehensive set of classes for managing PowerPoint presentations entirely in C#. The library lets you create new .pptx датотеки от изваждане, зареждане на съществуващите, манипулиране слайдове и форми, и съхраняване на резултата обратно към диска - всичко без инсталиране на Microsoft Office или всяка външна зависимост.
и на Aspose.Slides.Foss Пакетът NuGet има за цел .NET 9.0 и работи идентично на контейнери Windows, macOS, Linux и Docker. е издаден под лиценза MIT, така че можете да го използвате в търговски и отворени проекти без ограничения.
Тази статия преминава през основните възможности за управление на презентацията: работа с скици, изграждане на йерархии на формата, организиране на текст, управление с таблици и спестяване до PPTX.
Какво е включено
Създаване и зареждане на презентации
и на Presentation клас е входната точка за всяка операция. можете да създадете празна презентация, изтегляне на един от файлов път или четене от поток. IDisposable,И така, като го вградим в using Това гарантира, че ресурсите се освобождават правилно.
// Create a brand-new, empty presentation
using var pres = new Presentation();
// Load an existing file
using var existing = new Presentation("report.pptx");
и на Presentation обекта излага пълната слайд йерархия чрез свойства като: Slides, Masters, LayoutSlides, Sections, CommentAuthors, Images,и NotesSize.
Работа с Slides
и на SlideCollection Върна се от Presentation.Slides Поддържа добавянето, клонирането, вмъкването, преорганизацията и изтриването на слайдове.Можете да клонирате сляда в рамките на една и съща презентация или през презентации, като същевременно запазвате или поправяте оформленията.
using var pres = new Presentation();
// The default presentation contains one blank slide
var firstSlide = pres.Slides[0];
// Clone the first slide and append it
pres.Slides.AddClone(firstSlide);
// Insert a clone at a specific position
pres.Slides.InsertClone(1, firstSlide);
// Remove a slide by index
pres.Slides.RemoveAt(2);
// Total slide count
int count = pres.Slides.Count;
Всеки от тях Slide Изложби SlideNumber, Hidden, LayoutSlide, NotesSlideManager,и Name.Можете да изберете колекцията с foreach или да го превърнете в съвкупност с ToArray().
Форми и автоматериали
Всяка лента съдържа една ShapeCollection Достъпна чрез Slide.Shapes.Колекцията осигурява фабрични методи за най-честите форми.
using var pres = new Presentation();
var slide = pres.Slides[0];
// Add a rectangle AutoShape
var rect = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 50, 300, 150);
// Add a connector
var connector = slide.Shapes.AddConnector(
ShapeType.BentConnector3, 100, 200, 200, 50);
// Reorder a shape to bring it forward
slide.Shapes.Reorder(0, rect);
// Remove all shapes
slide.Shapes.Clear();
и на AddAutoShape и InsertAutoShape Методи за приемане на A ShapeType стойност на единица плюс координати за позиция и размери. AddConnector, InsertConnector, AddPictureFrame,и InsertPictureFrame Следвайте същия модел.
Текст: Параграфи и части
В една презентация се намира в TextFrame,която съдържа A ParagraphCollection.Всеки от тях Paragraph Дръжте A PortionCollection от Portion обекти, представляващи индивидуален текст, се изпълняват с независим форматиране.
using var pres = new Presentation();
var slide = pres.Slides[0];
var shape = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 50, 400, 200);
// Access the shape's text frame
var tf = shape.TextFrame;
// Read or set the full text
tf.Text = "Hello, presentation world!";
// Work with individual paragraphs and portions
var para = new Paragraph();
var portion = new Portion("Formatted run");
para.Portions.Add(portion);
tf.Paragraphs.Add(para);
Всеки от тях Portion Има A PortionFormat свойства за контрол на шрифта, размера, смелост/италиански, цвят, под линия и други атрибути на нивото на характера. ParagraphFormat Контролира съвместимост, стил на топката, пространство и индентация.
Таблица
Таблиците се добавят чрез ShapeCollection.AddTable, който приема ширини на колоните и височини на редове като раси. Table обекта предоставя достъп до Rows, Columns,и индивидуално Cell обекти .
using var pres = new Presentation();
var slide = pres.Slides[0];
double[] colWidths = { 150, 150, 150 };
double[] rowHeights = { 40, 40, 40 };
var table = slide.Shapes.AddTable(
50, 50, colWidths, rowHeights);
// Set text in a cell
table.Rows[0][0].TextFrame.Text = "Header 1";
table.Rows[0][1].TextFrame.Text = "Header 2";
table.Rows[0][2].TextFrame.Text = "Header 3";
// Merge cells
table.MergeCells(table.Rows[1][0], table.Rows[1][2], false);
// Style presets
table.StylePreset = TableStylePreset.MediumStyle2Accent1;
Спестяване на презентации
и на Presentation.Save методът пише документа в файл или поток. SaveFormat enum определя формата на изхода. PPTX е основният поддържан формат за изход.
using var pres = new Presentation();
// ... build slides ...
// Save to a file
pres.Save("output.pptx", SaveFormat.Pptx);
// Save to a stream
using var ms = new MemoryStream();
pres.Save(ms, SaveFormat.Pptx);
// Save specific slides by index
pres.Save("subset.pptx", new[] { 1, 3 }, SaveFormat.Pptx);
Можете също да преминете през SaveOptions - да се осигури допълнителен контрол върху производството.
Бързо стартиране
Инсталирайте пакета чрез .NET CLI:
dotnet add package aspose.slides.foss
След това създайте и спестете минимална презентация:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
// 1. Create a new presentation
using var pres = new Presentation();
// 2. Get the default slide
var slide = pres.Slides[0];
// 3. Add a title shape
var title = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 30, 600, 60);
title.TextFrame.Text = "Quarterly Report";
// 4. Add a content shape
var body = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 120, 600, 300);
var para = new Paragraph();
para.Portions.Add(new Portion("Revenue grew 12% year-over-year."));
body.TextFrame.Paragraphs.Add(para);
// 5. Save as PPTX
pres.Save("quarterly-report.pptx", SaveFormat.Pptx);
Подкрепени формати
| Форматът | Разширяване | Прочетете | Писане |
|---|---|---|---|
| PPTX | .ППТК | Да | Да |
| PPSX | .ППСХ | Не | Планирани |
| PPTM | .ППТМ | Не | Планирани |
| POTX | .Поткс | Не | Планирани |
| ODP | .Отп | Не | Планирани |
| FODP | .ФОДП | Не | Планирани |
Забележка : В момента се прилага само експортът на PPTX. Другите стойности на формата съществуват в
SaveFormatеум за напредна съвместимост, но все още не са функционални.Save()методът винаги произвежда PPTX изход, независимо от параметъра на формата..pptБинарният формат не се поддържа.
Отворени източници и лицензиране
Aspose.Slides FOSS for .NET is released under the MIT license. The full source code is available on GitHub.Можете да го използвате в търговски и отворени проекти, модифицирайте кода и я преразпределите без ограничения. Няма API ключ, лицензионна файла или регистрация е необходимо.
Започваме
- Разработчик ръководство: доcs.aspose.org/slides/net/ на сайта - Туториали и концептуална документация.
- Знание база: КБ.aspose.org / Слайдс / мрежа / FAQs и как да се чете статии.
- Огнено референтно: заглавие: Aspose.org / Slides / Net / - пълна класа и метод референт.