MS Visio är en populär applikation som låter dig skapa ett brett utbud av diagram som flödesscheman, dataflödesdiagram, affärsprocessmodeller och etc. VSDX är filformatet som MS Visio använder för att lagra diagrammen. För att automatisera VSDX-manipulation ger den här artikeln dig en grundläggande handledning om hur du skapar Visio-diagram från början i C#. Dessutom beskriver den hur man infogar sidor, former och text i VSDX-diagrammen inifrån .NET-applikationer.
- C# Visio API - Gratis nedladdning
- Skapa MS Visio-diagram med C#
- Lägg till Master till VSDX Diagram i C#
- Infoga sidor i ett Visio-diagram i C#
- Skapa en form i ett Visio-diagram i C#
- Lägg till en textform på Visio-sidan i C#
C# Visio API - Gratis nedladdning
Aspose.Diagram for .NET är ett funktionsrikt API som låter dig skapa, redigera, konvertera och bearbeta MS Visio-diagram inifrån dina .NET-applikationer. API:et gör det lättare för dig att manipulera VSDX-diagrammen med lättanvända egenskaper och metoder. Du kan antingen ladda ner API:s DLL eller få den installerad i dina .NET-applikationer med NuGet.
Install-Package Aspose.Diagram
Skapa Visio VSDX-diagram med C#
Först och främst, låt oss skapa ett tomt VSDX-diagram från början. Följande är stegen för att göra det:
- Skapa en instans av klassen Diagram.
- Använd metoden Diagram.Save(Sring fileName, SaveFileFormat.VSDX) för att spara filen som VSDX.
Följande kodexempel visar hur man skapar Visio VSDX-diagram i C#.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Sökvägen till dokumentkatalogen.
string dataDir = RunExamples.GetDataDir_Diagrams();
// Skapa katalog om den inte redan finns.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
System.IO.Directory.CreateDirectory(dataDir);
// Initiera en ny Visio
Diagram diagram = new Diagram();
dataDir = dataDir + "CreateDiagram_out.vsdx";
// Spara i VSDX-format
diagram.Save(dataDir, SaveFileFormat.VSDX);
Lägg till Master till Visio Diagram i C#
Master används för att lägga till stencilen som innehåller en samling former som ska användas i diagram. Om du vill lägga till mastern behöver du en VSS-stencilfil och master-ID. Följande är stegen för att lägga till en master till Visio-diagrammet med Aspose.Diagram.
- Skapa ett nytt diagram eller ladda ett befintligt med klassen Diagram.
- Lägg till master med metoden Diagram.AddMaster(String fileName, Int masterID).
- Lägg till en form från mastern till diagrammet med metoden Diagram.AddShape(Double, Double, String, Int).
- Spara diagram med metoden Diagram.Save(Sring filnamn, SaveFileFormat.VSDX).
Följande kodexempel visar hur man lägger till en master till Visio-diagrammet med C#.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Sökvägen till dokumentkatalogen.
string dataDir = RunExamples.GetDataDir_Master();
// Lastdiagram
Diagram diagram = new Diagram();
// Ladda stencil till en ström
string templateFileName = dataDir + "NetApp-FAS-series.vss";
Stream stream = new FileStream(templateFileName, FileMode.Open);
// Lägg till master med stencilfilsökväg och master-id
string masterName = "FAS80xx rear empty";
diagram.AddMaster(templateFileName, 2);
// Lägg till master med stencilfilsökväg och masternamn
diagram.AddMaster(templateFileName, masterName);
// Lägg till master med stencilfilström och master-id
diagram.AddMaster(stream, 2);
// Lägger till master till diagram från källdiagram
Diagram src = new Diagram(templateFileName);
diagram.AddMaster(src, masterName);
// Lägg till master med stencilfilström och master-id
diagram.AddMaster(stream, masterName);
// Lägger till form med definierade PinX och PinY.
diagram.AddShape(2.0, 2.0, masterName, 0);
diagram.AddShape(6.0, 6.0, masterName, 0);
// Lägger till form med definierade PinX, PinY, Width och Height.
diagram.AddShape(7.0, 3.0, 1.5, 1.5, masterName, 0);
För mer information, besök working with master.
Infoga sidor i ett Visio-diagram i C#
MS Visio-diagram består av en eller flera sidor och varje sida innehåller diagrammen. Innan du lägger till en form måste du därför lägga till en sida med följande steg.
- Skapa ett nytt diagram eller ladda ett befintligt med klassen Diagram.
- Kontrollera om diagrammet redan innehåller en sida med egenskapen Diagram.Pages.Count.
- Om den gör det, hämta ID:t för den sista sidan med egenskapen Diagram.Pages[index].ID.
- Skapa en ny sida med klassen Page och ange dess namn och ID.
- Lägg till sida i diagrammet med metoden Diagram.Pages.Add(Page).
- Spara VSDX-diagram med metoden Diagram.Save(Sring filnamn, SaveFileFormat.VSDX).
Följande kodexempel visar hur man lägger till en sida i Visio VSDX-diagram med C#.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Sökvägen till dokumentkatalogen.
string dataDir = RunExamples.GetDataDir_VisioPages();
// Lastdiagram
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// Den beräknar max sid-id
int max = 0;
if (diagram.Pages.Count != 0)
max = diagram.Pages[0].ID;
for (int i = 1; i < diagram.Pages.Count; i++)
{
if (max < diagram.Pages[i].ID)
max = diagram.Pages[i].ID;
}
// Ställ in max sid-ID
int MaxPageId = max;
// Initiera ett nytt sidobjekt
Page newPage = new Page();
// Ange namn
newPage.Name = "new page";
// Ställ in sid-ID
newPage.ID = MaxPageId + 1;
// Eller prova sidkonstruktorn
// Page newPage = new Page(MaxPageId + 1);
// Lägg till en ny tom sida
diagram.Pages.Add(newPage);
// Spara diagram
diagram.Save(dataDir + "InsertBlankPage_out.vsdx", SaveFileFormat.VSDX);
För mer information, besök arbeta med sidor.
Skapa en form i Visio-diagram med C#
Former är byggstenarna i Visio-diagrammen. MS Visio stöder ett brett utbud av former för att skapa diagram i olika domäner. Följande steg visar hur man infogar en form i Visio Diagram.
- Skapa ett nytt diagram eller ladda ett befintligt med klassen Diagram.
- Skapa en sida eller få önskad sida i ett sidaobjekt.
- Lägg till master till diagrammet med metoden Diagram.AddMaster(String fileName, Int masterID).
- Lägg till en ny rektangulär form med metoden Diagram.AddShape(pinX, pinY, width, height, masterName, PageIndex).
- Lagra form-ID:t som returneras av metoden Diagram.AddShape().
- Hämta den nyligen tillagda formen i Shape-objektet med metoden Page.Shapes.GetShape(long ID).
- Ställ in formens egenskaper som text, färg osv.
- Spara VSDX-diagram med metoden Diagram.Save(Sring filnamn, SaveFileFormat.VSDX).
Följande kodexempel visar hur man lägger till en form i Visio-diagrammet med C#.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Sökvägen till dokumentkatalogen.
string dataDir = RunExamples.GetDataDir_Shapes();
// Ladda ett diagram
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// Få sida med namn
Page page = diagram.Pages.GetPage("Page-2");
// Lägg till master med stencilfilsökväg och masternamn
string masterName = "Rectangle";
diagram.AddMaster(dataDir + "Basic Shapes.vss", masterName);
// Sidindexering börjar från 0
int PageIndex = 1;
double width = 2, height = 2, pinX = 4.25, pinY = 4.5;
// Lägg till en ny rektangelform
long rectangleId = diagram.AddShape(pinX, pinY, width, height, masterName, PageIndex);
// Ställ in formegenskaper
Shape rectangle = page.Shapes.GetShape(rectangleId);
rectangle.XForm.PinX.Value = 5;
rectangle.XForm.PinY.Value = 5;
rectangle.Type = TypeValue.Shape;
rectangle.Text.Value.Add(new Txt("Aspose Diagram"));
rectangle.TextStyle = diagram.StyleSheets[3];
rectangle.Line.LineColor.Value = "#ff0000";
rectangle.Line.LineWeight.Value = 0.03;
rectangle.Line.Rounding.Value = 0.1;
rectangle.Fill.FillBkgnd.Value = "#ff00ff";
rectangle.Fill.FillForegnd.Value = "#ebf8df";
diagram.Save(dataDir + "AddShape_out.vsdx", SaveFileFormat.VSDX);
Console.WriteLine("Shape has been added.");
För mer information, besök arbeta med former.
Lägg till en textform på Visio-sidan i C#
I olika fall behöver du även lägga till text i Visio-diagrammen. För detta kan du följa stegen nedan.
- Skapa ett nytt diagram eller ladda ett befintligt med klassen Diagram.
- Lägg till text på en viss sida med metoden Diagram.Pages[0].AddText(PinX, PinY, Width, Height, “Test text”).
- Spara VSDX-diagrammet med metoden Diagram.Save(Sring filnamn, SaveFileFormat.VSDX).
Följande kodexempel visar hur man lägger till text i ett VSDX-diagram med C#.
// För fullständiga exempel och datafiler, gå till https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Sökvägen till dokumentkatalogen.
string dataDir = RunExamples.GetDataDir_ShapeText();
// Skapa ett nytt diagram
Diagram diagram = new Diagram();
// Ställ in parametrar och lägg till text på en Visio-sida
double PinX = 1, PinY = 1, Width = 1, Height = 1;
diagram.Pages[0].AddText(PinX, PinY, Width, Height, "Test text");
// Spara diagram
diagram.Save(dataDir + "InsertTextShape_out.vsdx", SaveFileFormat.VSDX);
För mer information, besök arbeta med text.
Slutsats
I det här inlägget har du lärt dig några grundläggande funktioner i Aspose.Diagram för .NET för att skapa Visio VSDX-diagram från grunden. Kodexemplen har visat hur man lägger till masters, sidor, former och text i VSDX-diagram med C#. Du kan utforska mer om API:t med hjälp av dokumentationen.