.NET में कनेक्टर्स के साथ शैप्स को कैसे कनेक्ट करें
Aspose.Slides FOSS में कनेक्टर्स लाइन शैप्स होते हैं जो अन्य शैप्स के कनेक्शन साइट्स से जुड़ते हैं। जब आप किसी जुड़े हुए शैप को स्थानांतरित करते हैं, तो कनेक्टर का अंत बिंदु उसके साथ चलता है। सबसे सामान्य कनेक्टर प्रकार BentConnector3 है, जो एकल एल्बो मोड़ के साथ बाधाओं के चारों ओर मार्ग बनाता है।
पूर्वापेक्षाएँ
dotnet add package Aspose.Slides.Fossकनेक्शन साइट सूचकांक
प्रत्येक आकार में चार क्रमांकित कनेक्शन साइट्स होते हैं:
| इंडेक्स | स्थिति |
|---|---|
0 | ऊपरी केंद्र |
1 | बाएँ केंद्र |
2 | निचला केंद्र |
3 | दाएँ केंद्र |
दो आकृतियों को जोड़ें
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Add two rectangles
var box1 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 200, 200, 100);
var box2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 450, 200, 200, 100);
box1.AddTextFrame("Start");
box2.AddTextFrame("End");
// Add a bent connector (initial bounds are overwritten by the connection)
var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
// Connect right side of box1 (site 3) to left side of box2 (site 1)
conn.StartShapeConnectedTo = box1;
conn.StartShapeConnectionSiteIndex = 3;
conn.EndShapeConnectedTo = box2;
conn.EndShapeConnectionSiteIndex = 1;
prs.Save("connected.pptx", SaveFormat.Pptx);एक बार कनेक्शन एंडपॉइंट सेट हो जाने पर, (0, 0, 10, 10) को AddConnector में पास किए गए प्लेसहोल्डर बाउंड्स को अनदेखा किया जाता है; PowerPoint कनेक्टर को संलग्न आकृतियों की ओर पुनः मार्गित करता है।
कनेक्टर प्रकार
// Straight line
ShapeType.StraightConnector1
// Single elbow (L-shape)
ShapeType.BentConnector2
// Double elbow (Z-shape): most common
ShapeType.BentConnector3
// Curved connector
ShapeType.CurvedConnector3कनेक्टर लाइन को स्टाइल करें
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var box1 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 150, 180, 80);
var box2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 500, 300, 180, 80);
var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
conn.StartShapeConnectedTo = box1;
conn.StartShapeConnectionSiteIndex = 2; // bottom of box1
conn.EndShapeConnectedTo = box2;
conn.EndShapeConnectionSiteIndex = 0; // top of box2
// Style: dashed blue line, 2 pt width
var lf = conn.LineFormat;
lf.Width = 2.0;
lf.FillFormat.SolidFillColor.Color = Color.Blue;
lf.DashStyle = LineDashStyle.Dash;
prs.Save("styled-connector.pptx", SaveFormat.Pptx);बहु कनेक्टरों के साथ फ्लोचार्ट
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Three-step flowchart
var step1 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 350, 50, 200, 70);
var step2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 350, 220, 200, 70);
var step3 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 350, 390, 200, 70);
step1.AddTextFrame("Step 1");
step2.AddTextFrame("Step 2");
step3.AddTextFrame("Step 3");
void ConnectVertical(IShapeCollection shapes, IShape topShape, IShape bottomShape)
{
var c = shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
c.StartShapeConnectedTo = topShape;
c.StartShapeConnectionSiteIndex = 2; // bottom
c.EndShapeConnectedTo = bottomShape;
c.EndShapeConnectionSiteIndex = 0; // top
}
ConnectVertical(slide.Shapes, step1, step2);
ConnectVertical(slide.Shapes, step2, step3);
prs.Save("flowchart.pptx", SaveFormat.Pptx);कनेक्टर गुण पढ़ें
using Aspose.Slides.Foss;
using var prs = new Presentation("connected.pptx");
foreach (var shape in prs.Slides[0].Shapes)
{
if (shape is Connector connector)
{
var start = connector.StartShapeConnectedTo;
var end = connector.EndShapeConnectedTo;
Console.WriteLine($"Connector: {start?.Name ?? "?"} -> {end?.Name ?? "?"}");
}
}