ทำงานกับรูปร่างในสไลด์ใน C#.jpg

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

C# API เพื่อทำงานกับ PowerPoint Shapes

Aspose.Slides for .NET เป็น C# API ซึ่งออกแบบมาเพื่อทำงานกับงานนำเสนอ PowerPoint จากภายในแอปพลิเคชัน .NET นอกเหนือจากคุณสมบัติการจัดการงานนำเสนอแล้ว API ยังมอบวิธีง่ายๆ ในการทำงานกับรูปร่างในสไลด์ PowerPoint คุณสามารถดาวน์โหลด DLL ของ API หรือติดตั้งผ่าน NuGet

Install-Package Aspose.Slides.NET

รูปร่าง PowerPoint

Aspose.Slides for .NET รองรับประเภทรูปร่างที่หลากหลายซึ่งคุณสามารถเพิ่มลงในสไลด์ PowerPoint ได้ รูปร่างที่ใช้บ่อยที่สุด ได้แก่ :

เพิ่มรูปร่างให้กับสไลด์ PowerPoint โดยใช้ C#

ในการเพิ่มรูปร่าง เช่น วงรี เส้น สี่เหลี่ยมผืนผ้า ฯลฯ Aspose.Slides มีเมธอด IShapeCollection.AddAutoShape(ShapeType, Single, Single, Single, Single) Enum ShapeType ให้คุณระบุประเภทของรูปร่างที่คุณต้องการเพิ่ม ต่อไปนี้เป็นขั้นตอนในการเพิ่มรูปร่างให้กับสไลด์ PowerPoint

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มรูปร่างลงในสไลด์ PowerPoint โดยใช้ C#

// สร้างอินสแตนซ์ของวัตถุการนำเสนอที่แสดงถึงไฟล์งานนำเสนอ
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // รับสไลด์แรก
    ISlide sld = pres.Slides[0];

    // เพิ่มรูปร่างอัตโนมัติของประเภทวงรี
    sld.Shapes.AddAutoShape(ShapeType.Ellipse, 50, 150, 150, 50);

    // บันทึกงานนำเสนอ
    pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}

เพิ่มตัวเชื่อมต่อเพื่อเชื่อมต่อรูปร่าง PowerPoint ใน C

ตัวเชื่อมต่อคือเส้นที่ใช้ในการเชื่อมต่อรูปร่างเพื่อเข้าร่วม ตัวเชื่อมต่ออาจเป็นเส้นตรงหรือเส้นโค้งก็ได้ มาดูวิธีเพิ่มตัวเชื่อมต่อระหว่างสองรูปร่างในสไลด์ PowerPoint

  1. สร้างอินสแตนซ์ของคลาส Presentation เพื่อสร้างงานนำเสนอใหม่
  2. รับข้อมูลอ้างอิงของสไลด์โดยใช้ Presentation.Slides[index] ลงในวัตถุ ISlide
  3. เพิ่มสองรูปร่างเหมือนกับที่คุณเพิ่มในตัวอย่างก่อนหน้า และรับการอ้างอิงในวัตถุ IAutoShape
  4. สร้างวัตถุ IConnector ใหม่โดยใช้เมธอด IShapeCollection.AddConnector(ShapeType, Single, Single, Single, Single)
  5. รวมรูปร่างโดยใช้คุณสมบัติ IConnector.StartShapeConnectedTo และ IConnector.EndShapeConnectedTo
  6. เรียกใช้เมธอด IConnector.Reroute() เพื่อสร้างเส้นทางการเชื่อมต่ออัตโนมัติที่สั้นที่สุด
  7. บันทึกไฟล์ PPTX โดยใช้วิธี Presentation.Save(String, SaveFormat)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเชื่อมต่อรูปร่างในสไลด์ PowerPoint โดยใช้ C#

// สร้างอินสแตนซ์ของวัตถุการนำเสนอที่แสดงถึงไฟล์งานนำเสนอ
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // การเข้าถึงคอลเลกชันรูปร่างสำหรับสไลด์ที่เลือก
    IShapeCollection shapes = pres.Slides[0].Shapes;

    // เพิ่มรูปร่างอัตโนมัติ Ellipse
    IAutoShape ellipse = shapes.AddAutoShape(ShapeType.Ellipse, 0, 100, 100, 100);

    // เพิ่มสี่เหลี่ยมผืนผ้าอัตโนมัติ
    IAutoShape rectangle = shapes.AddAutoShape(ShapeType.Rectangle, 100, 300, 100, 100);

    // การเพิ่มรูปร่างตัวเชื่อมให้กับคอลเลกชันรูปร่างของสไลด์
    IConnector connector = shapes.AddConnector(ShapeType.BentConnector2, 0, 0, 10, 10);

    // การรวมรูปร่างเข้ากับตัวเชื่อมต่อ
    connector.StartShapeConnectedTo = ellipse;
    connector.EndShapeConnectedTo = rectangle;

    // โทรเปลี่ยนเส้นทางเพื่อกำหนดเส้นทางที่สั้นที่สุดโดยอัตโนมัติระหว่างรูปร่างต่างๆ
    connector.Reroute();

    // บันทึกงานนำเสนอ
    pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}

โคลนรูปร่างในสไลด์ PowerPoint โดยใช้ C#

คุณยังสามารถโคลนรูปร่างจากสไลด์ PowerPoint หนึ่งไปยังอีกสไลด์หนึ่งได้โดยใช้ Aspose.Slides for .NET ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้

  1. สร้างอินสแตนซ์ของคลาส Presentation
  2. รับข้อมูลอ้างอิงของสไลด์โดยใช้ Presentation.Slides[index] ในวัตถุ ISlide
  3. เข้าถึงรูปร่างของสไลด์ต้นฉบับโดยใช้คอลเลกชัน ISlide.Shapes
  4. เข้าถึงรูปร่างของสไลด์ปลายทางโดยใช้คอลเลกชัน ISlide.Shapes
  5. โคลนรูปร่างจากคอลเลกชันรูปร่างสไลด์ต้นทางไปยังสไลด์ปลายทางโดยใช้เมธอด IShapeCollection.AddClone(ISlide)
  6. บันทึกไฟล์งานนำเสนอที่อัปเดต

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการโคลนรูปร่างภายในสไลด์ PowerPoint โดยใช้ C#

// สร้างอินสแตนซ์ของวัตถุการนำเสนอที่แสดงถึงไฟล์งานนำเสนอ
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // รับคอลเลกชันรูปร่างจากสไลด์ต้นฉบับ
    IShapeCollection sourceShapes = pres.Slides[0].Shapes;
    ILayoutSlide blankLayout = pres.Masters[0].LayoutSlides.GetByType(SlideLayoutType.Blank);
    ISlide destSlide = pres.Slides.AddEmptySlide(blankLayout);
    
    // รับคอลเลกชันรูปร่างจากสไลด์ปลายทาง
    IShapeCollection destShapes = destSlide.Shapes;
    destShapes.AddClone(sourceShapes[1], 50, 150 + sourceShapes[0].Height);
    destShapes.AddClone(sourceShapes[2]);
    
    // รูปร่างโคลน
    destShapes.InsertClone(0, sourceShapes[0], 50, 150);

    // บันทึกงานนำเสนอ
    pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}

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

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

  1. สร้างอินสแตนซ์ของคลาส Presentation เพื่อโหลดไฟล์ PPTX
  2. เข้าถึงสไลด์ที่ต้องการจาก Presentation.Slides[index] ไปยังวัตถุ ISlide
  3. ค้นหารูปร่างด้วย IShape.AlternativeText เฉพาะ
  4. ลบรูปร่างโดยใช้เมธอด ISlide.Shapes.Remove(IShape)
  5. บันทึกไฟล์งานนำเสนอที่อัปเดต

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการลบรูปร่างออกจากสไลด์ PowerPoint โดยใช้ C#

// สร้างอินสแตนซ์ของวัตถุการนำเสนอที่แสดงถึงไฟล์งานนำเสนอ
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // รับสไลด์แรก
    ISlide sld = pres.Slides[0];

    // เพิ่มรูปร่างอัตโนมัติของประเภทสี่เหลี่ยมผืนผ้า
    IShape shp1 = sld.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 40, 150, 50);
    IShape shp2 = sld.Shapes.AddAutoShape(ShapeType.Moon, 160, 40, 150, 50);
    
    String alttext = "User Defined";
    int iCount = sld.Shapes.Count;
   for (int i = 0; i < iCount; i++)
    {
        // เรียกรูปร่าง
        AutoShape ashp = (AutoShape)sld.Shapes[0];
        if (String.Compare(ashp.AlternativeText, alttext, StringComparison.Ordinal) == 0)
        {
            // ลบรูปร่าง
            sld.Shapes.Remove(ashp);
        }
    }

    // บันทึกงานนำเสนอ
    pres.Save("presentation.pptx", Export.SaveFormat.Pptx);
}

บทสรุป

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

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