Bekerja dengan Penyambung — Aspose.Slides FOSS untuk .NET

Penghubung adalah bentuk yang secara visual menghubungkan dua bentuk lain dengan garis. Aspose.Slides FOSS untuk .NET menyokong penghubung bengkok, lurus, dan melengkung. Titik sambungan pada satu bentuk dikenali dengan integer indeks tapak sambungan.


Indeks Tapak Sambungan

Setiap bentuk menyediakan empat tapak sambungan standard:

IndeksSisi
0Atas
1Kiri
2Bawah
3Kanan

Menambah Penyambung Bengkok Antara Dua Bentuk

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var slide = prs.Slides[0];

// Create two shapes to connect
var box1 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 150, 150, 60);
box1.AddTextFrame("Start");

var box2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 400, 150, 150, 60);
box2.AddTextFrame("End");

// Add a bent connector (position/size are ignored once connected)
var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);

// Connect right side of box1 to left side of box2
conn.StartShapeConnectedTo = box1;
conn.StartShapeConnectionSiteIndex = 3;   // right
conn.EndShapeConnectedTo = box2;
conn.EndShapeConnectionSiteIndex = 1;     // left

prs.Save("connector.pptx", SaveFormat.Pptx);

Jenis Bentuk Penyambung

ShapeTypeDeskripsi
ShapeType.BentConnector3Dua lengkungan 90 darjah (paling umum untuk diagram gaya carta alir)
ShapeType.BentConnector2Satu lengkungan 90 darjah
ShapeType.BentConnector4Tiga lengkungan 90 darjah
ShapeType.StraightConnector1Garis lurus langsung
ShapeType.CurvedConnector2Lengkungan licin tunggal
ShapeType.CurvedConnector3Lengkungan dua bengkok

Sambungan Atas-ke-Bawah

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var slide = prs.Slides[0];

var top = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 250, 80, 200, 60);
top.AddTextFrame("Decision");

var bottom = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 250, 300, 200, 60);
bottom.AddTextFrame("Action");

var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
conn.StartShapeConnectedTo = top;
conn.StartShapeConnectionSiteIndex = 2;    // bottom of top box
conn.EndShapeConnectedTo = bottom;
conn.EndShapeConnectionSiteIndex = 0;      // top of bottom box

prs.Save("vertical-connector.pptx", SaveFormat.Pptx);

Carta Alir dengan Pelbagai Penyambung

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

static IAutoShape AddBox(ISlide slide, string text, float x, float y,
    float w = 160, float h = 50)
{
    var s = slide.Shapes.AddAutoShape(ShapeType.Rectangle, x, y, w, h);
    s.AddTextFrame(text);
    return s;
}

static IConnector Connect(ISlide slide, IShape s1, int site1, IShape s2, int site2)
{
    var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
    conn.StartShapeConnectedTo = s1;
    conn.StartShapeConnectionSiteIndex = site1;
    conn.EndShapeConnectedTo = s2;
    conn.EndShapeConnectionSiteIndex = site2;
    return conn;
}

using var prs = new Presentation();
var slide = prs.Slides[0];

var start = AddBox(slide, "Start", 260, 60);
var process = AddBox(slide, "Process Data", 260, 180);
var end = AddBox(slide, "End", 260, 300);

Connect(slide, start, 2, process, 0);    // start -> process (bottom to top)
Connect(slide, process, 2, end, 0);      // process -> end (bottom to top)

prs.Save("flowchart.pptx", SaveFormat.Pptx);

Memformat Penyambung

Penghubung menyokong yang sama LineFormat sifat seperti bentuk lain:

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, 150, 60);
var box2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 400, 150, 150, 60);

var conn = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
conn.StartShapeConnectedTo = box1;
conn.StartShapeConnectionSiteIndex = 3;
conn.EndShapeConnectedTo = box2;
conn.EndShapeConnectionSiteIndex = 1;

// Style the connector line
conn.LineFormat.Width = 2.5;
conn.LineFormat.DashStyle = LineDashStyle.Dash;
conn.LineFormat.FillFormat.SolidFillColor.Color = Color.DarkBlue;

prs.Save("styled-connector.pptx", SaveFormat.Pptx);

Lihat Juga

 Bahasa Melayu