การทำงานกับ Shapes ในงานนำเสนอ PowerPoint โดยใช้ C++

Microsoft PowerPoint ช่วยให้คุณสามารถเพิ่มรูปร่างให้กับงานนำเสนอของคุณได้ รูปร่างอาจมีประโยชน์ในสถานการณ์ต่างๆ เช่น การแสดงการไหลของข้อมูลหรือการแสดงขั้นตอนต่างๆ ของกระบวนการ คุณสามารถใช้รูปร่างต่างๆ เช่น วงรี เส้น สี่เหลี่ยม ฯลฯ และเชื่อมต่อโดยใช้ตัวเชื่อมต่อ คุณอาจพบว่าตัวเองอยู่ในสถานการณ์ที่ต้องเพิ่มรูปร่างลงในสไลด์ PowerPoint โดยทางโปรแกรม ด้วยเหตุนี้ บทความนี้จะสอนวิธีการทำงานกับรูปร่างในงานนำเสนอ PowerPoint โดยใช้ C++

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 โดยใช้ 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

เพิ่มรูปร่างที่เชื่อมต่อไปยังสไลด์ PowerPoint

สามารถใช้ตัวเชื่อมต่อเพื่อเชื่อมต่อรูปร่างได้ ในการสร้างตัวเชื่อมต่อ คุณสามารถใช้เมธอด ISlide->getShapes()->AddConnector() ต่อไปนี้เป็นขั้นตอนในการเพิ่มรูปร่างที่เชื่อมต่อไปยังสไลด์ PowerPoint

ต่อไปนี้คือโค้ดตัวอย่างเพื่อเพิ่มรูปร่างที่เชื่อมต่อไปยังสไลด์ 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

โคลนรูปร่างในสไลด์ PowerPoint

คุณยังสามารถโคลนรูปร่างที่มีอยู่โดยใช้ Aspose.Slides for C++ API ในการโคลนรูปร่าง ให้ใช้เมธอด ShapeCollection->InsertClone() ที่จัดทำโดย API ต่อไปนี้เป็นขั้นตอนในการโคลนรูปร่างจากสไลด์หนึ่งไปยังอีกสไลด์หนึ่ง

ต่อไปนี้คือโค้ดตัวอย่างในการโคลนรูปร่างในสไลด์ 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

ลบรูปร่างออกจากสไลด์ PowerPoint โดยใช้ C ++

ต่อไปนี้เป็นขั้นตอนในการลบรูปร่างออกจากสไลด์ PowerPoint

ต่อไปนี้คือโค้ดตัวอย่างในการลบรูปร่างออกจากสไลด์ 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 โดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ ในกรณีที่มีคำถามใดๆ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี

ดูสิ่งนี้ด้วย