Introduction
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 Các tập tin từ các mảnh vỡ, tải những hiện có, thao tác các hình ảnh và hình dạng, và lưu kết quả trở lại đĩa - tất cả mà không cần cài đặt Microsoft Office hoặc bất kỳ sự phụ thuộc bên ngoài.
Các Aspose.Slides.Foss NuGet gói nhằm vào .NET 9.0 và chạy tương tự trên Windows, macOS, Linux, và Docker containers. nó được phát hành dưới giấy phép MIT, vì vậy bạn có thể sử dụng nó trong các dự án thương mại và nguồn mở mà không có giới hạn.
Bài viết này đi qua các khả năng quản lý trình bày cốt lõi: làm việc với slides, xây dựng hình dạng hiệc, tổ chức văn bản, quản trị bảng và tiết kiệm cho PPTX.
Những gì được bao gồm
Tạo và tải các bài thuyết trình
Các Presentation lớp là điểm nhập của mỗi hoạt động. bạn có thể tạo một bản trình bày trống, tải một từ đường file hoặc đọc từ dòng. IDisposable,Và để nó được gắn vào một using Báo cáo đảm bảo rằng các nguồn lực được giải phóng đúng cách.
// Create a brand-new, empty presentation
using var pres = new Presentation();
// Load an existing file
using var existing = new Presentation("report.pptx");
Các Presentation đối tượng tiết lộ toàn bộ hiến trúc vỏ qua các thuộc tính như: Slides, Masters, LayoutSlides, Sections, CommentAuthors, Images, và NotesSize.
Làm việc với Slides
Các SlideCollection Trở lại bởi Presentation.Slides Hỗ trợ thêm, cloning, nhập, sắp xếp lại và xóa các slides. Bạn có thể clone một slide trong cùng một trình bày hoặc qua các trình diễn trong khi duy trì hoặc sửa chữa bố trí.
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;
Each Slide triển lãm SlideNumber, Hidden, LayoutSlide, NotesSlideManager, và Name.Bạn có thể cài đặt bộ sưu tập với foreach hoặc chuyển đổi nó thành một dòng với ToArray().
Hình dạng và AutoShapes
Mỗi slide chứa một ShapeCollection Truy cập qua Slide.Shapes.Sử dụng AddAutoShape(), AddConnector(), và AddPictureFrame() để thêm các loại hình phổ biến nhất.
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();
Các AddAutoShape và InsertAutoShape Phương pháp chấp nhận a ShapeType giá trị enum plus vị trí và kích thước phối hợp. AddConnector, InsertConnector, AddPictureFrame, và InsertPictureFrame theo cùng một mẫu.
Bài viết: Phần và phần
Bài viết trong một bài thuyết trình sống bên trong a TextFrame, trong đó có chứa một ParagraphCollection.Mỗi người Paragraph giữ A PortionCollection của Portion Các đối tượng đại diện cho một văn bản cá nhân chạy với định dạng độc lập.
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);
Each `Portion` có a `PortionFormat` thuộc tính để kiểm soát chữ cái, kích thước, mạnh mẽ/thiết học, màu sắc, dưới dạng và các đặc điểm khác ở cấp độ nhân vật. `ParagraphFormat` kiểm soát sự phù hợp, phong cách quả bóng, không gian và thả.
### Tables
Bảng được thêm vào qua `ShapeCollection.AddTable`, chấp nhận chiều rộng cột và độ cao hàng như các góc. `Table` mục cung cấp quyền truy cập vào `Rows`, `Columns`,Và cá nhân `Cell` đối tượng .
double[] colWidths = { 150, 150, 150 };
double[] rowHeights = { 40, 40, 40 };
var table = slide.Shapes.AddTable(
50, 50, colWidths, rowHeights);
// Merge cells in the second row
table.MergeCells(table.Rows[1][0], table.Rows[1][2], false);
// Apply a visual style preset
table.StylePreset = TableStylePreset.MediumStyle2Accent1;
tiết kiệm trình bày
Các Presentation.Save phương pháp viết tài liệu vào một tệp hoặc dòng. SaveFormat enum xác định định dạng xuất. PPTX là định hình xuất hỗ trợ chính.
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);
Bạn cũng có thể vượt qua một SaveOptions - Đối với việc kiểm soát thêm sản lượng.
Khởi động nhanh
Cài đặt gói FOSS cho .NET bằng cách sử dụng .net CLI:
dotnet add package aspose.slides.foss
Sau đó tạo và lưu một bản trình bày tối thiểu:
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.AddTextFrame("Quarterly Report");
// 4. Add a content shape
var body = slide.Shapes.AddAutoShape(
ShapeType.Rectangle, 50, 120, 600, 300);
var bodyTf = body.AddTextFrame("");
var para = new Paragraph();
para.Portions.Add(new Portion("Revenue grew 12% year-over-year."));
bodyTf.Paragraphs.Add(para);
// 5. Save as PPTX
pres.Save("quarterly-report.pptx", SaveFormat.Pptx);
Các định dạng hỗ trợ
| Format | Extension | Read | Write |
|---|---|---|---|
| PPTX | .pptx | Có | Có |
| PPSX | .ppsx | Không | Planned |
| PPTM | .pptm | Không | Planned |
| POTX | .Đồ họa: Potx | Không | Planned |
| ODP | .Đáp: ODP | Không | Planned |
| FODP | .Phân tích | Không | Planned |
Lưu ý : PPTX đọc và viết được thực hiện đầy đủ. khác
SaveFormatCác giá trị enum (PPSX, PPTM, ODP, vv) được xác định cho tương thích trong tương lai và sẽ có chức năng trong các phát hành trong năm tới.
Open Source & Giấy phép
Aspose.Slides FOSS for .NET is released under the MIT license. The full source code is available on GitHub.Bạn có thể sử dụng nó trong các dự án thương mại và nguồn mở, sửa đổi mã, và phân phối lại mà không bị hạn chế. Không cần API khóa, tệp giấy phép hoặc đăng ký.
bắt đầu
- Hướng dẫn Developer: docs.aspose.org/slides/net/ thông tin liên lạc - Các hướng dẫn và tài liệu khái niệm.
- Cơ sở kiến thức: kb.aspose.org/slides / mạng/ - FAQs và làm thế nào để các bài viết.
- API tham chiếu: tham khảo.aspose.org/slides/net/ - Mức độ và phương pháp tham khảo đầy đủ.