Microsoft PowerPoint ช่วยให้คุณสามารถเพิ่มรูปร่างให้กับงานนำเสนอของคุณได้ รูปร่างอาจมีประโยชน์ในสถานการณ์ต่างๆ เช่น การแสดงการไหลของข้อมูลหรือการแสดงขั้นตอนต่างๆ ของกระบวนการ คุณสามารถใช้รูปร่างต่างๆ เช่น วงรี เส้น สี่เหลี่ยม ฯลฯ และเชื่อมต่อโดยใช้ตัวเชื่อมต่อ คุณอาจพบว่าตัวเองอยู่ในสถานการณ์ที่ต้องเพิ่มรูปร่างลงในสไลด์ PowerPoint โดยทางโปรแกรม ด้วยเหตุนี้ บทความนี้จะสอนวิธีการทำงานกับรูปร่างในงานนำเสนอ PowerPoint โดยใช้ C++
- C++ API สำหรับการทำงานกับรูปร่างในงานนำเสนอ PowerPoint
- เพิ่มรูปร่างให้กับสไลด์ PowerPoint
- เพิ่มรูปร่างที่เชื่อมต่อไปยังสไลด์ PowerPoint
- โคลนรูปร่างในสไลด์ PowerPoint
- ลบรูปร่างออกจากสไลด์ PowerPoint โดยใช้ C ++
- รูปร่าง PowerPoint ที่รองรับ
- รับใบอนุญาตฟรี
C++ API สำหรับการทำงานกับรูปร่างในงานนำเสนอ PowerPoint
Aspose.Slides for C++ เป็นไลบรารี่ C++ ดั้งเดิมที่รองรับการสร้าง อ่าน และจัดการไฟล์ PowerPoint API ยังรองรับการทำงานกับรูปร่างในงานนำเสนอ PowerPoint คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด
PM> Install-Package Aspose.Slides.Cpp
เพิ่มรูปร่างให้กับสไลด์ PowerPoint
ในการเพิ่มรูปร่าง ให้ใช้เมธอด ISlide->getShapes()->AddAutoShape() ที่จัดทำโดย API ต่อไปนี้เป็นขั้นตอนในการเพิ่มรูปร่างให้กับสไลด์ PowerPoint
- ขั้นแรก โหลดงานนำเสนอ PowerPoint โดยใช้คลาส Presentation
- ดึงสไลด์ที่คุณต้องการเพิ่มรูปร่างโดยใช้เมธอด Presentation->getSlides()->idxget (int32t index)
- เพิ่มรูปร่างโดยใช้เมธอด ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height)
- สุดท้าย บันทึกงานนำเสนอโดยใช้เมธอด Presentation->Save (System::String name, Export::SaveFormat)
ต่อไปนี้คือโค้ดตัวอย่างเพื่อเพิ่มรูปร่างให้กับสไลด์ PowerPoint โดยใช้ C++
// เส้นทางไฟล์
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddShapePresentation.pptx";
// โหลดไฟล์นำเสนอ
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// รับสไลด์แรก
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// เพิ่มรูปร่าง
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// บันทึกไฟล์งานนำเสนอ
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
เพิ่มรูปร่างที่เชื่อมต่อไปยังสไลด์ PowerPoint
สามารถใช้ตัวเชื่อมต่อเพื่อเชื่อมต่อรูปร่างได้ ในการสร้างตัวเชื่อมต่อ คุณสามารถใช้เมธอด ISlide->getShapes()->AddConnector() ต่อไปนี้เป็นขั้นตอนในการเพิ่มรูปร่างที่เชื่อมต่อไปยังสไลด์ PowerPoint
- ขั้นแรก ให้โหลดงานนำเสนอ PowerPoint โดยใช้คลาส Presentation
- ดึงสไลด์ที่คุณต้องการเพิ่มรูปร่างโดยใช้เมธอด Presentation->getSlides()->idxget (int32t index)
- เพิ่มรูปร่างโดยใช้เมธอด ISlide->getShapes()->AddAutoShape (ShapeType shapeType, float x, float y, float width, float height)
- เพิ่มตัวเชื่อมต่อโดยใช้เมธอด ISlide->getShapes()->AddConnector (ShapeType shapeType, float x, float y, float width, float height)
- เชื่อมต่อรูปร่างเข้ากับตัวเชื่อมต่อโดยใช้ IConnector->setStartShapeConnectedTo (System::SharedPtr ค่า) และ IConnector->setEndShapeConnectedTo (System::SharedPtr ค่า) วิธีการ
- เรียกใช้เมธอด IConnector->Reroute() เพื่อสร้างเส้นทางการเชื่อมต่ออัตโนมัติที่สั้นที่สุด
- สุดท้าย บันทึกงานนำเสนอโดยใช้เมธอด Presentation->Save (System::String name, Export::SaveFormat)
ต่อไปนี้คือโค้ดตัวอย่างเพื่อเพิ่มรูปร่างที่เชื่อมต่อไปยังสไลด์ PowerPoint โดยใช้ C++
// เส้นทางไฟล์
const String sourceFilePath = u"SourceDirectory\\SamplePresentation4.pptx";
const String outputFilePath = u"OutputDirectory\\AddConnectedShapesPresentation.pptx";
// โหลดไฟล์นำเสนอ
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// รับสไลด์แรก
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// เพิ่มรูปร่างแรก
SharedPtr<IAutoShape> ellipse = slide->get_Shapes()->AddAutoShape(ShapeType::Ellipse, 50, 150, 150, 50);
// เพิ่มรูปร่างที่สอง
SharedPtr<IAutoShape> rectangle = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 300, 100, 100);
// เพิ่มตัวเชื่อมต่อ
SharedPtr<IConnector> connector = slide->get_Shapes()->AddConnector(ShapeType::BentConnector2, 0, 0, 10, 10);
// เชื่อมต่อรูปร่างด้วยตัวเชื่อมต่อ
connector->set_StartShapeConnectedTo(ellipse);
connector->set_EndShapeConnectedTo(rectangle);
// โทรเปลี่ยนเส้นทางเพื่อกำหนดเส้นทางที่สั้นที่สุดโดยอัตโนมัติระหว่างรูปร่างต่างๆ
connector->Reroute();
// บันทึกไฟล์งานนำเสนอ
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
โคลนรูปร่างในสไลด์ PowerPoint
คุณยังสามารถโคลนรูปร่างที่มีอยู่โดยใช้ Aspose.Slides for C++ API ในการโคลนรูปร่าง ให้ใช้เมธอด ShapeCollection->InsertClone() ที่จัดทำโดย API ต่อไปนี้เป็นขั้นตอนในการโคลนรูปร่างจากสไลด์หนึ่งไปยังอีกสไลด์หนึ่ง
- ขั้นแรก โหลดงานนำเสนอ PowerPoint โดยใช้คลาส Presentation
- ดึงข้อมูลสไลด์ต้นฉบับโดยใช้เมธอด Presentation->getSlides()->idxget (int32t index)
- เข้าถึงรูปร่างของสไลด์ต้นฉบับโดยใช้เมธอด ISlide->getShapes()
- เข้าถึงรูปร่างของสไลด์ปลายทางโดยใช้เมธอด ISlide->getShapes()
- โคลนรูปร่างโดยใช้ IShapeCollection->InsertClone (ดัชนี int32t, System::SharedPtr sourceShape, float x, float y) เมธอด
- สุดท้าย บันทึกงานนำเสนอโดยใช้เมธอด Presentation->Save (System::String name, Export::SaveFormat)
ต่อไปนี้คือโค้ดตัวอย่างในการโคลนรูปร่างในสไลด์ PowerPoint โดยใช้ C++
// เส้นทางไฟล์
const String sourceFilePath = u"SourceDirectory\\ShapePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\CloneShapePresentation.pptx";
// โหลดไฟล์นำเสนอ
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// เข้าถึงสไลด์แรก
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);
// การเข้าถึงคอลเลกชันรูปร่างสำหรับสไลด์ที่เลือก
SharedPtr<IShapeCollection> sourceShapes = slide->get_Shapes();
// รับคอลเลกชันรูปร่างจากสไลด์ปลายทาง
SharedPtr<ISlide> destSlide = presentation->get_Slides()->idx_get(1);
SharedPtr<IShapeCollection> destShapes = destSlide->get_Shapes();
// รูปร่างโคลน
destShapes->InsertClone(0, sourceShapes->idx_get(1), 50, 150);
// บันทึกไฟล์งานนำเสนอ
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
ลบรูปร่างออกจากสไลด์ PowerPoint โดยใช้ C ++
ต่อไปนี้เป็นขั้นตอนในการลบรูปร่างออกจากสไลด์ PowerPoint
- ขั้นแรก โหลดงานนำเสนอ PowerPoint โดยใช้คลาส Presentation
- ดึงสไลด์จากตำแหน่งที่คุณต้องการลบรูปร่างโดยใช้เมธอด Presentation->getSlides()->idxget (int32t index)
- ค้นหารูปร่างที่ต้องการโดยจับคู่ข้อความแสดงแทนโดยใช้เมธอด IShape->getAlternativeText()
- ลบรูปร่างโดยใช้ ISlide->getShapes()->Remove (System::SharedPtr รูปร่าง) วิธีการ
- สุดท้าย บันทึกงานนำเสนอโดยใช้เมธอด Presentation->Save (System::String name, Export::SaveFormat)
ต่อไปนี้คือโค้ดตัวอย่างในการลบรูปร่างออกจากสไลด์ PowerPoint โดยใช้ C++
// เส้นทางไฟล์
const String sourceFilePath = u"SourceDirectory\\ShapePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\RemoveShapePresentation.pptx";
// โหลดไฟล์นำเสนอ
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
// เข้าถึงสไลด์แรก
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++)
{
// เข้าถึงรูปร่าง
SharedPtr<Shape> ashape = DynamicCast<Aspose::Slides::Shape>(slide->get_Shapes()->idx_get(i));
if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0)
{
// ลบรูปร่าง
slide->get_Shapes()->Remove(ashape);
}
}
// บันทึกไฟล์งานนำเสนอ
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
รูปร่าง PowerPoint ที่รองรับ
Aspose.Slides for C++ รองรับรูปร่างมากมายเพื่อให้คุณทำงานด้วย ต่อไปนี้เป็นรายการรูปร่างที่รองรับบางส่วน
คุณสามารถดูรายการรูปร่างที่รองรับทั้งหมดได้โดยดูค่า enum ShapeType
รับใบอนุญาตฟรี
คุณสามารถขอ ใบอนุญาตชั่วคราวฟรี เพื่อลองใช้ API โดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีการทำงานกับรูปร่างในงานนำเสนอ PowerPoint โดยใช้ C++ โดยเฉพาะอย่างยิ่ง คุณได้เรียนรู้วิธีการเพิ่ม โคลน และลบรูปร่างออกจากสไลด์ PowerPoint นอกจากนี้ คุณได้เห็นวิธีการเชื่อมต่อรูปร่างโดยใช้ตัวเชื่อมต่อ นอกเหนือจากการทำงานกับรูปร่างแล้ว Aspose.Slides for C++ ยังมีคุณสมบัติเพิ่มเติมมากมายสำหรับการปรับปรุงงานนำเสนอ PowerPoint ของคุณ คุณสามารถสำรวจ API โดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ ในกรณีที่มีคำถามใดๆ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี