Maak een organigram in VSX in C#
Native en high-performance maak een organigram in VSX document met behulp van server-side Aspose.Diagram for .NET API's, zonder het gebruik van software zoals Microsoft of Open Office, Adobe PDF.
Hoe maak je een organigram in VSX Bestand met C#
Om een organigram in VSX bestand te maken, gebruiken we
API, een veelzijdig, krachtig en gebruiksvriendelijk documentmanipulatie- en samenvoegplatform API voor C#. Open
pakketbeheerder, zoek naar Aspose.Diagram en installeren. U kunt ook de volgende opdracht gebruiken vanuit de Package Manager Console.
Opdracht
PM> Install-Package Aspose.Diagram
Stappen voor het maken van een organigram in VSX Bestanden in C#
Organigram maken met
API’s kunnen worden gemaakt met slechts enkele regels code.
- Maak een diagram van stencil.
- Selecteer pagina via zijn id
- Voeg organisatieknooppuntvormen toe aan de pagina.
- Voeg verbindingslijnen toe aan de pagina om de vorm en het bovenliggende element te verbinden.
- Automatische lay-out door Layout-mothod aan te roepen
- Roep de methode Save() aan en geef de bestandsnaam (volledig pad) en formaat (VSDX) door als parameter.
- Nu kunt u het bestand VSDX openen en gebruiken in Microsoft Office, Adobe PDF of een ander compatibel programma.
systeem vereisten
Onze API’s worden ondersteund op alle belangrijke platforms en besturingssystemen. Voordat u de onderstaande code uitvoert, moet u ervoor zorgen dat u de volgende vereisten op uw systeem hebt.
- Microsoft Windows of een compatibel besturingssysteem met .NET Framework, .NET Core, Mono of COM Interop- Ontwikkelomgeving zoals Microsoft Visual Studio- Aspose.Diagram for .NET DLL waarnaar wordt verwezen in uw project - Installeer vanaf NuGet met de downloadknop hierboven
Organigram maken in VSX bestanden - C#
// 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_CompactTreeChart(); | |
// Load masters from any existing diagram, stencil or template | |
// And add in the new diagram | |
string visioStencil = dataDir + "Basic Shapes.vss"; | |
const string rectangleMaster = "Rectangle"; | |
const string connectorMaster = "Dynamic connector"; | |
const int pageNumber = 0; | |
const double width = 1; | |
const double height = 1; | |
double pinX = 4.25; | |
double pinY = 9.5; | |
// Define values to construct the hierarchy | |
List<string> listPos = new List<string>(new string[] { "0", "0:0", "0:1", "0:2", "0:3", "0:4", "0:5", "0:6", "0:0:0", "0:0:1", "0:3:0", "0:3:1", "0:3:2", "0:6:0", "0:6:1" }); | |
// Define a Hashtable to map the string name to long shape id | |
Hashtable shapeIdMap = new Hashtable(); | |
// Create a new diagram | |
Diagram diagram = new Diagram(visioStencil); | |
diagram.Pages[pageNumber].PageSheet.PageProps.PageWidth.Value = 11; | |
foreach (string orgnode in listPos) | |
{ | |
// Add a new rectangle shape | |
long rectangleId = diagram.AddShape(pinX++, pinY++, width, height, rectangleMaster, pageNumber); | |
// Set the new shape's properties | |
Shape shape = diagram.Pages[pageNumber].Shapes.GetShape(rectangleId); | |
shape.Text.Value.Add(new Txt(orgnode)); | |
shape.Name = orgnode; | |
shapeIdMap.Add(orgnode, rectangleId); | |
} | |
// Create connections between nodes | |
foreach (string orgName in listPos) | |
{ | |
int lastColon = orgName.LastIndexOf(':'); | |
if(lastColon > 0) | |
{ | |
string parendName = orgName.Substring(0, lastColon); | |
long shapeId = (long)shapeIdMap[orgName]; | |
long parentId = (long)shapeIdMap[parendName]; | |
Shape connector1 = new Shape(); | |
long connecter1Id = diagram.AddShape(connector1, connectorMaster, pageNumber); | |
diagram.Pages[pageNumber].ConnectShapesViaConnector(parentId, ConnectionPointPlace.Right, | |
shapeId, ConnectionPointPlace.Left, connecter1Id); | |
} | |
} | |
//auto layout CompactTree chart | |
LayoutOptions compactTreeOptions = new LayoutOptions | |
{ | |
LayoutStyle = LayoutStyle.CompactTree, | |
Direction = LayoutDirection.DownThenRight, | |
EnlargePage = false | |
}; | |
diagram.Pages[pageNumber].Layout(compactTreeOptions); | |
// Save diagram | |
diagram.Save(dataDir + "CompactTreeChart_out.vsdx", SaveFileFormat.VSDX); |
Over Aspose.Diagram for .NET API
Aspose.Diagram is een Microsoft Visio manipulatie van documentindeling API. Men kan gemakkelijk laden, creëren, wijzigen, manipuleren inclusief daigram-elementen en Visio diagrammen converteren naar andere formaten zoals PDF, XPS, JPEG, PNG, BMP, TIFF, SVG, EMF en meer. Het is een standalone API en vereist geen Microsoft Visio of andere software om te worden geïnstalleerd.Online VSX CompactTree Style organigram Live demo's
Maak nu een CompactTree-stijl organigram in VSX documenten door naar onze Live demo's website . De live demo heeft de volgende voordelen:
VSX Wat is VSX bestandsformaat
Bestanden met de extensie .VSX verwijzen naar stencils die bestaan uit tekeningen en vormen die worden gebruikt voor het maken van diagrammen in Microsoft Visio. VSX-bestanden worden opgeslagen in XML-bestandsindeling en werden ondersteund tot Visio 2013. Deze verschillen van de primaire VSDX-bestandsindeling die werd geïntroduceerd met Microsoft Visio 2013. VSX-bestanden kunnen worden geopend in een willekeurige teksteditor om de inhoud te bekijken.
Meer lezenAndere ondersteunde indelingen voor organigrammen
Met behulp van C# kan men eenvoudig een organigram in CompactTree-stijl maken in verschillende indelingen, waaronder.