Trabalhar com conectores Aspose.Slides FOSS para .NET
Este guia mostra como adicionar e configurar conectores entre formas em apresentações do PowerPoint usando Aspose.Slides FOSS para .NET. Os conecteurs são formas que ligam visualmente duas outras formas com uma linha; a biblioteca suporta tipos de conector dobrados, retos e curvos. Índices de locais de ligação.
Índices de sites de conexão
Cada forma expõe quatro locais de ligação padrão:
| Índice de preços | Lado |
|---|---|
0 | Top (em inglês) |
1 | À esquerda. |
2 | Fonte: |
3 | - Certo. |
Adicionando um conector dobrado entre duas formas
Chama-me . slide.Shapes.AddConnector() com um ShapeType, então definido . StartShapeConnectedTo e a) EndShapeConnectedTo com índices de locais de ligação para o fio de duas formas, com um conector dobrado:
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);Tipos de forma do conector
| ShapeType | Descrição: |
|---|---|
ShapeType.BentConnector3 | Duas curvas de 90 graus (mais comuns para diagramas em estilo gráfico de fluxo) |
ShapeType.BentConnector2 | Uma curva de 90 graus. |
ShapeType.BentConnector4 | Três curvas de 90 graus. |
ShapeType.StraightConnector1 | Linha reta direta |
ShapeType.CurvedConnector2 | Curva lisa única |
ShapeType.CurvedConnector3 | Curva de dupla curvatura |
Conexão de cima para baixo
Indice do sítio de conexão 0 (em cima) para a forma final e o índice. 2 (inferior) para a forma de partida, que permite criar um conector vertical cima-abaixo:
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);Diagrama de fluxo com múltiplos conectores
Criar formas e conectores em linha para construir um diagrama de fluxo com várias etapas num único slide:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Create three labeled boxes
var box1 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 260, 60, 160, 50);
box1.AddTextFrame("Start");
var box2 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 260, 180, 160, 50);
box2.AddTextFrame("Process Data");
var box3 = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 260, 300, 160, 50);
box3.AddTextFrame("End");
// Connect Start → Process (bottom to top)
var conn1 = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
conn1.StartShapeConnectedTo = box1;
conn1.StartShapeConnectionSiteIndex = 2; // bottom of Start
conn1.EndShapeConnectedTo = box2;
conn1.EndShapeConnectionSiteIndex = 0; // top of Process
// Connect Process → End (bottom to top)
var conn2 = slide.Shapes.AddConnector(ShapeType.BentConnector3, 0, 0, 10, 10);
conn2.StartShapeConnectedTo = box2;
conn2.StartShapeConnectionSiteIndex = 2; // bottom of Process
conn2.EndShapeConnectedTo = box3;
conn2.EndShapeConnectionSiteIndex = 0; // top of End
prs.Save("flowchart.pptx", SaveFormat.Pptx);Formato de um conector
Conectores suportam o mesmo LineFormat Propriedades como formas regulares, permitindo o controle da largura de linha, estilo do quadro e cor:
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);