Microsoft PowerPoint cung cấp cho bạn khả năng thêm hình dạng vào bản trình bày của bạn. Hình dạng có thể hữu ích trong các tình huống như hiển thị luồng dữ liệu hoặc hiển thị các giai đoạn khác nhau của quy trình. Bạn có thể sử dụng các hình dạng như hình elip, đường thẳng, hình chữ nhật, v.v. và kết nối chúng bằng cách sử dụng trình kết nối. Bạn có thể thấy mình trong các tình huống mà bạn phải thêm hình dạng vào các trang chiếu PowerPoint theo chương trình. Để kết thúc, bài viết này sẽ hướng dẫn bạn cách làm việc với các hình dạng trong bản trình bày PowerPoint bằng C ++.
- API C ++ để làm việc với hình dạng trong bản trình bày PowerPoint
- Thêm hình dạng vào trang chiếu PowerPoint
- Thêm Hình dạng được Kết nối vào Trang chiếu PowerPoint
- Sao chép hình dạng trong trang trình bày PowerPoint
- Xóa Hình dạng khỏi Trang trình bày PowerPoint bằng C ++
- Hình dạng PowerPoint được hỗ trợ
- Nhận giấy phép miễn phí
API C ++ để làm việc với hình dạng trong bản trình bày PowerPoint
Aspose.Slides for C ++ là một thư viện C ++ gốc hỗ trợ tạo, đọc và thao tác các tệp PowerPoint. API cũng hỗ trợ làm việc với các hình dạng trong bản trình bày PowerPoint. Bạn có thể cài đặt API thông qua NuGet hoặc tải xuống trực tiếp từ phần Tải xuống.
PM> Install-Package Aspose.Slides.Cpp
Thêm hình dạng vào trang chiếu PowerPoint
Để thêm hình dạng, hãy sử dụng phương thức ISlide-> getShapes() -> AddAutoShape() do API cung cấp. Sau đây là các bước để thêm hình dạng vào trang chiếu PowerPoint.
- Đầu tiên, tải bản trình bày PowerPoint bằng lớp Trình bày.
- Truy xuất trang chiếu mà bạn muốn thêm hình dạng bằng phương thức Presentation-> getSlides() -> idxget (int32t index).
- Thêm hình dạng bằng phương thức ISlide-> getShapes() -> AddAutoShape (ShapeType shapeType, float x, float y, float width, float height).
- Cuối cùng, lưu bản trình bày bằng phương thức Presentation-> Save (System :: String name, Export :: SaveFormat format).
Sau đây là mã mẫu để thêm hình dạng vào trang chiếu PowerPoint bằng C ++.
// Đường dẫn tệp
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";
// Tải tệp bản trình bày
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Tải trang trình bày đầu tiên
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Thêm hình dạng
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// Lưu tệp bản trình bày
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Thêm Hình dạng được Kết nối vào Trang chiếu PowerPoint
Các đầu nối có thể được sử dụng để kết nối các hình dạng. Để tạo trình kết nối, bạn có thể sử dụng phương thức ISlide-> getShapes() -> AddConnector(). Sau đây là các bước để thêm hình dạng được kết nối vào trang chiếu PowerPoint.
- Đầu tiên, tải bản trình bày PowerPoint bằng lớp Trình bày.
- Truy xuất trang chiếu mà bạn muốn thêm các hình dạng bằng phương thức Presentation-> getSlides() -> idxget (int32t index).
- Thêm các hình dạng bằng phương thức ISlide-> getShapes() -> AddAutoShape (ShapeType shapeType, float x, float y, float width, float height).
- Thêm trình kết nối bằng phương thức ISlide-> getShapes() -> AddConnector (ShapeType shapeType, float x, float y, float width, float height).
- Kết nối các hình dạng với trình kết nối bằng IConnector-> setStartShapeConnectedTo (System :: SharedPtr value) và IConnector-> setEndShapeConnectedTo (System :: SharedPtr giá trị) phương pháp.
- Gọi phương thức IConnector-> Reroute() để tạo đường kết nối tự động ngắn nhất.
- Cuối cùng, lưu bản trình bày bằng phương thức Presentation-> Save (System :: String name, Export :: SaveFormat format).
Sau đây là mã mẫu để thêm các hình dạng được kết nối vào trang chiếu PowerPoint bằng C ++.
// Đường dẫn tệp
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";
// Tải tệp bản trình bày
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Tải trang trình bày đầu tiên
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Thêm hình dạng đầu tiên
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// Thêm hình dạng thứ hai
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);
// Thêm trình kết nối
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);
// Nối các hình với trình kết nối
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);
// Gọi định tuyến lại để đặt đường đi ngắn nhất tự động giữa các hình dạng
connector->Reroute();
// Lưu tệp bản trình bày
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Sao chép hình dạng trong trang trình bày PowerPoint
Bạn cũng có thể sao chép các hình dạng hiện có bằng cách sử dụng API Aspose.Slides cho C ++. Để sao chép một hình dạng, hãy sử dụng phương thức ShapeCollection-> InsertClone() do API cung cấp. Sau đây là các bước để sao chép hình dạng từ slide này sang slide khác.
- Đầu tiên, tải bản trình bày PowerPoint bằng lớp Trình bày.
- Truy xuất trang trình bày nguồn bằng phương thức Presentation-> getSlides() -> idxget (int32t index).
- Truy cập các hình dạng của trang chiếu nguồn bằng phương thức ISlide-> getShapes().
- Truy cập các hình dạng của trang chiếu đích bằng phương thức ISlide-> getShapes().
- Sao chép hình dạng bằng cách sử dụng IShapeCollection-> InsertClone (int32t index, System :: SharedPtr phương thức sourceShape, float x, float y).
- Cuối cùng, lưu bản trình bày bằng phương thức Presentation-> Save (System :: String name, Export :: SaveFormat format).
Sau đây là mã mẫu để sao chép hình dạng trong slide PowerPoint bằng C ++.
// Đường dẫn tệp
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";
// Tải tệp bản trình bày
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Truy cập trang trình bày đầu tiên
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Truy cập bộ sưu tập hình dạng cho trang trình bày đã chọn
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();
// Nhận bộ sưu tập hình dạng từ trang trình bày đích
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();
// Nhân bản hình dạng
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);
// Lưu tệp bản trình bày
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Xóa Hình dạng khỏi Trang trình bày PowerPoint bằng C ++
Sau đây là các bước để loại bỏ hình dạng khỏi trang chiếu PowerPoint.
- Đầu tiên, tải bản trình bày PowerPoint bằng lớp Trình bày.
- Truy xuất trang chiếu từ nơi bạn muốn xóa hình dạng bằng phương thức Presentation-> getSlides() -> idxget (int32t index).
- Tìm hình dạng được yêu cầu bằng cách so khớp văn bản thay thế bằng phương thức IShape-> getAlternativeText().
- Loại bỏ hình dạng bằng cách sử dụng ISlide-> getShapes() -> Loại bỏ (System :: SharedPtr hình dạng) phương pháp.
- Cuối cùng, lưu bản trình bày bằng phương thức Presentation-> Save (System :: String name, Export :: SaveFormat format).
Sau đây là mã mẫu để xóa hình dạng khỏi trang chiếu PowerPoint bằng C ++.
// Đường dẫn tệp
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";
// Tải tệp bản trình bày
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Truy cập trang trình bày đầu tiên
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
String alttext = u"User Defined";
int iCount = slide->get_Shapes()->get_Count();
for (int i = 0; i < iCount; i++)
{
// Truy cập hình dạng
SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));
if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
{
// Xóa hình dạng
slide->get_Shapes()->Remove(ashape);
}
}
// Lưu tệp bản trình bày
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Hình dạng PowerPoint được hỗ trợ
Aspose.Slides for C ++ hỗ trợ nhiều hình dạng để bạn làm việc. Sau đây là danh sách một số hình dạng được hỗ trợ.
Bạn có thể xem danh sách đầy đủ các hình dạng được hỗ trợ bằng cách xem các giá trị enum ShapeType.
Nhận giấy phép miễn phí
Bạn có thể yêu cầu giấy phép tạm thời miễn phí để dùng thử API mà không có giới hạn đánh giá.
Sự kết luận
Trong bài này, bạn đã học cách làm việc với các hình dạng trong bản trình bày PowerPoint bằng C ++. Cụ thể, bạn đã học cách thêm, sao chép và loại bỏ các hình dạng từ các trang chiếu PowerPoint. Hơn nữa, bạn đã thấy cách kết nối các hình dạng bằng cách sử dụng trình kết nối. Ngoài việc làm việc với các hình dạng, Aspose.Slides for C ++ cung cấp nhiều tính năng bổ sung để cải thiện các bản trình bày PowerPoint của bạn. Bạn có thể khám phá API chi tiết bằng cách truy cập tài liệu chính thức. Trong trường hợp có bất kỳ câu hỏi nào, vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.