SmartArt được sử dụng để nâng cao trải nghiệm trình chiếu PowerPoint và trình bày dữ liệu một cách trực quan. Nó có thể được sử dụng để làm cho văn bản nổi bật và hấp dẫn hơn và cũng được sử dụng để hiển thị sơ đồ luồng, quy trình, biểu đồ quan hệ, v.v. Trong bài viết này, bạn sẽ học cách tạo SmartArt trong bản trình bày PowerPoint bằng C ++.
- API C ++ để tạo SmartArt trong bản trình bày PowerPoint
- Tạo Hình dạng SmartArt trong PowerPoint bằng C ++
- Truy cập Hình dạng SmartArt trong Bản trình bày PowerPoint
- Thay đổi Kiểu của Hình dạng SmartArt bằng C ++
API C ++ để tạo SmartArt trong bản trình bày PowerPoint
Aspose.Slides cho C ++ là một API C ++ để làm việc với các tệp PowerPoint. Nó cho phép bạn tạo, đọc và sửa đổi các tệp PPT và PPTX mà không cần phần mềm bổ sung. Hơn nữa, API hỗ trợ tạo SmartArt 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
Tạo Hình dạng SmartArt trong PowerPoint bằng C ++
Sau đây là các bước để tạo hình SmartArt trong bản trình bày PowerPoint.
- Tạo một phiên bản của lớp Presentation để đại diện cho một tệp PowerPoint mới.
- Truy xuất trang trình bày mong muốn.
- Thêm SmartArt bằng phương thức ISlide-> getShapes() -> AddSmartArt (float x, float y, float width, float height, SmartArt :: SmartArtLayoutType layoutType).
- Lưu bản trình bày bằng phương pháp Presentation-> Save (System :: String fname, Export :: SaveFormat format).
Mã mẫu sau đây cho biết cách tạo hình SmartArt trong PowerPoint bằng C ++.
// Đường dẫn tập tin
const String outputFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
// Tải tệp bản trình bày
SharedPtr<Presentation> presentation = MakeObject<Presentation>();
// Truy xuất trang trình bày đầu tiên
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// Thêm SmartArt
auto smartArt = slide->get_Shapes()->AddSmartArt(0, 0, 400, 400, Aspose::Slides::SmartArt::SmartArtLayoutType::BasicBlockList);
smartArt->get_AllNodes()->idx_get(0)->get_TextFrame()->set_Text(u"First Block");
smartArt->get_AllNodes()->idx_get(1)->get_TextFrame()->set_Text(u"Second Block");
// Lưu bản trình bày
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Truy cập Hình dạng SmartArt trong Bản trình bày PowerPoint
Bạn có thể truy cập các hình dạng SmartArt trong tệp PowerPoint bằng cách làm theo các bước dưới đây.
- Tải tệp PowerPoint bằng lớp Trình bày.
- Lặp qua các hình dạng.
- Nếu hình dạng thuộc loại ISmartArt, thì lấy tham chiếu của nó dưới dạng đối tượng ISmartArt.
Mã mẫu sau đây cho thấy cách truy cập hình dạng SmartArt từ bản trình bày PowerPoint bằng C ++.
// Đường dẫn tập tin
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
// Tải tệp bản trình bày
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Lặp qua các hình dạng
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
// Kiểm tra xem hình dạng có thuộc loại SmartArt không
if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
{
// Đánh máy hình dạng sang SmartArt
auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);
Console::WriteLine(String::Format(u"Shape Name: {0}", smartArt->get_Name()));
// Kiểm tra bố cục SmartArt
/*if (smartArt->get_Layout() == SmartArtLayoutType::BasicBlockList)
{
Console::WriteLine(u"Do some thing here....");
}*/
}
}
Thay đổi Kiểu của Hình dạng SmartArt bằng C ++
Bạn có thể dễ dàng thay đổi kiểu của hình dạng SmartArt sau khi truy cập vào nó. Sau đây là các bước để thay đổi kiểu của hình dạng SmartArt bằng C ++.
- Tải tệp PowerPoint bằng lớp Trình bày.
- Lặp qua các hình dạng.
- Nếu hình dạng thuộc loại ISmartArt, thì lấy tham chiếu của nó dưới dạng đối tượng ISmartArt.
- Thay đổi kiểu bằng các phương thức ISmartArt-> setColorStyle (SmartArtColorType value) và ISmartArt-> setQuickStyle (SmartArtQuickStyleType value).
- Lưu bản trình bày bằng phương pháp Presentation-> Save (System :: String fname, Export :: SaveFormat format).
Mã mẫu sau đây cho thấy cách thay đổi kiểu của hình dạng SmartArt bằng C ++.
// Đường dẫn tệp
const String sourceFilePath = u"OutputDirectory\\CreateSmartArt_out.pptx";
const String outputFilePath = u"OutputDirectory\\ChangeSmartArt_out.pptx";
// Tải tệp bản trình bày
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// Lặp qua các hình dạng
for (auto shape : presentation->get_Slides()->idx_get(0)->get_Shapes())
{
// Kiểm tra xem hình dạng có thuộc loại SmartArt không
if (System::ObjectExt::Is<Aspose::Slides::SmartArt::SmartArt>(shape))
{
// Đánh máy hình dạng thành SmartArt
auto smartArt = System::DynamicCast_noexcept<ISmartArt>(shape);
// Kiểm tra kiểu SmartArt
if (smartArt->get_QuickStyle() == SmartArtQuickStyleType::SimpleFill) {
// Thay đổi kiểu SmartArt
smartArt->set_QuickStyle(SmartArtQuickStyleType::Cartoon);
}
// Kiểm tra loại màu SmartArt
if (smartArt->get_ColorStyle() == SmartArtColorType::ColoredFillAccent1) {
// Thay đổi loại màu SmartArt
smartArt->set_ColorStyle(SmartArtColorType::ColorfulAccentColors);
}
}
}
// Lưu bản trình bày
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
Nhận giấy phép miễn phí
Để dùng thử API mà không có giới hạn đánh giá, bạn có thể yêu cầu giấy phép tạm thời miễn phí.
Sự kết luận
Trong bài viết này, bạn đã học cách tạo một hình dạng SmartArt trong bản trình bày PowerPoint bằng C ++. Hơn nữa, bạn đã thấy cách truy cập và thay đổi kiểu của một hình dạng SmartArt bằng cách sử dụng API Aspose.Slides cho C ++. Đây là một API mạnh mẽ và giàu tính năng, cung cấp nhiều tính năng bổ sung để làm việc với các tệp PowerPoint. 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ỳ thắc mắc nào, vui lòng liên hệ với chúng tôi tại diễn đàn hỗ trợ miễn phí của chúng tôi.