Trabajar con el pegado de formas
Obtenga los conectores pegados a una forma particular
Agregar y conectar Visio Formas explica cómo agregar una forma y conectarla a otras formas en diagramas Microsoft Visio usando Aspose.Diagram for .NET. También es posible encontrar conectores que están pegados a esta forma.
Conseguir formas pegadas
El método GluedShapes expuesto por elFormaLa clase se puede usar para obtener una lista de los ID de todos los conectores pegados a una forma o, si la forma en cuestión es un conector, los ID de las formas a las que está conectado. El método GetShape, expuesto por elShapeCollection class, se puede usar para encontrar una forma por su ID.
El siguiente código muestra cómo:
- Cargue un archivo de muestra.
- Accede a una forma particular.
- Obtenga una lista de ID de todos los conectores pegados a esta forma.
Obtenga una muestra de programación pegada de conectores
Use el siguiente código en su aplicación .NET para encontrar todos los conectores pegados a una forma usando Aspose.Diagram for .NET.
// For complete examples and data files, please go to https://github.com/aspose-diagram/Aspose.Diagram-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_Shapes(); | |
// Call a Diagram class constructor to load the VSD diagram | |
Diagram diagram = new Diagram(dataDir + "RetrieveShapeInfo.vsd"); | |
// Get shape by an ID | |
Shape shape = diagram.Pages[0].Shapes.GetShape(90); | |
// Get all glued 1D shapes | |
long[] gluedShapeIds = shape.GluedShapes(GluedShapesFlags.GluedShapesAll1D, null, null); | |
// Display shape ID and name | |
foreach (long id in gluedShapeIds) | |
{ | |
shape = diagram.Pages[0].Shapes.GetShape(id); | |
Console.WriteLine("ID: " + shape.ID + "\t\t Name: " + shape.Name); | |
} |
Pegue las formas Visio junto con el punto de conexión
Aspose.Diagram for .NET permite a los desarrolladores unir formas a través de los puntos de conexión.
Formas de pegamento
El método GlueShapes expuesto por elPágina Se puede usar la clase.
Entrada diagram |
El diagram después de pegar las formas. |
---|---|
El siguiente código muestra cómo: |
- Cargue un archivo de muestra.
- Pega formas.
- Guardar diagram.
Pegamento Visio Muestra de programación de formas
Use el siguiente código en su aplicación .NET para pegar formas a través de los puntos de conexión:
// For complete examples and data files, please go to https://github.com/aspose-diagram/Aspose.Diagram-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_Shapes(); | |
// Load diagram | |
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx"); | |
// Get a particular page | |
Page page = diagram.Pages.GetPage("Page-1"); | |
// Set shape id | |
long shape1_ID = 7; | |
long shape2_ID = 494; | |
// Glue shapes | |
page.GlueShapes(shape1_ID, Aspose.Diagram.Manipulation.ConnectionPointPlace.Center, shape2_ID); | |
// Save diagram | |
diagram.Save(dataDir + "GlueVisioShapes_out.vsdx", SaveFileFormat.VSDX); |
Pegue las formas dentro del recipiente
Aspose.Diagram for .NET permite a los desarrolladores pegar formas grupales dentro de un contenedor.
Forma de grupo de pegamento
El método GlueShapesInContainer expuesto por elPágina Se puede usar la clase.
Entrada diagram |
El diagram después de pegar las formas del grupo. |
---|---|
El siguiente código muestra cómo: |
- Cargue un archivo de muestra.
- Pegue las formas del grupo.
- Guardar diagram.
Muestra de programación de formas de pegamento en el interior
Use el siguiente código en su aplicación .NET para pegar la forma del grupo dentro de un contenedor:
// For complete examples and data files, please go to https://github.com/aspose-diagram/Aspose.Diagram-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_Shapes(); | |
// Load diagram | |
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx"); | |
// Get a particular page | |
Page page = diagram.Pages.GetPage("Page-1"); | |
// The ID of shape which is glue from Aspose.Diagram.Shape. | |
long shapeFromId = 779; | |
// The location on the first connection index where to glue | |
int shapeToBeginConnectionIndex = 72; | |
// The location on the end connection index where to glue | |
int shapeToEndConnectionIndex = 73; | |
// The ID of shape where to glue to Aspose.Diagram.Shape. | |
long shapeToId = 743; | |
// Glue shapes in container | |
page.GlueShapesInContainer(shapeFromId, shapeToBeginConnectionIndex, shapeToEndConnectionIndex, shapeToId); | |
// Glue shapes in container using connection name | |
// Page.GlueShapesInContainer(fasId, "U05L", "U05R", cabinetId1); | |
// Save diagram | |
diagram.Save(dataDir + "GlueContainerShape_out.vsdx", SaveFileFormat.VSDX); |