MS Visio to popularna aplikacja, która umożliwia tworzenie szerokiej gamy diagramów, takich jak schematy blokowe, schematy przepływu danych, modele procesów biznesowych itp. VSDX to format pliku używany przez program MS Visio do przechowywania diagramy. Aby zautomatyzować manipulowanie VSDX, ten artykuł zawiera podstawowy samouczek dotyczący tworzenia diagramów programu Visio od podstaw w języku C#. Ponadto obejmuje sposób wstawiania stron, kształtów i tekstu w diagramach VSDX z poziomu aplikacji .NET.

Interfejs API programu Visio w języku C# — bezpłatne pobieranie

Aspose.Diagram for .NET to bogaty w funkcje interfejs API, który pozwala tworzyć, edytować, konwertować i przetwarzać diagramy MS Visio z poziomu aplikacji .NET. Interfejs API ułatwia manipulowanie diagramami VSDX za pomocą łatwych w użyciu właściwości i metod. Możesz pobrać DLL interfejsu API lub zainstalować go w swoich aplikacjach .NET za pomocą NuGet.

Install-Package Aspose.Diagram

Utwórz diagram Visio VSDX przy użyciu języka C#

Przede wszystkim utwórzmy od podstaw pusty diagram VSDX. Aby to zrobić, wykonaj następujące czynności:

Poniższy przykładowy kod pokazuje, jak utworzyć diagram programu Visio VSDX w języku C#.

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Ścieżka do katalogu dokumentów.
string dataDir = RunExamples.GetDataDir_Diagrams();

// Utwórz katalog, jeśli jeszcze go nie ma.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
    System.IO.Directory.CreateDirectory(dataDir);
// Zainicjuj nowy program Visio
Diagram diagram = new Diagram();
dataDir = dataDir + "CreateDiagram_out.vsdx";
// Zapisz w formacie VSDX
diagram.Save(dataDir, SaveFileFormat.VSDX);

Dodaj wzorzec do diagramu Visio w C#

Master służy do dodawania szablonu, który zawiera zbiór kształtów do wykorzystania w diagramach. Jeśli chcesz dodać wzorzec, potrzebujesz pliku szablonu VSS i identyfikatora wzorca. Poniżej przedstawiono kroki dodawania wzorca do diagramu programu Visio przy użyciu Aspose.Diagram.

Poniższy przykład kodu pokazuje, jak dodać wzorzec do diagramu programu Visio przy użyciu języka C#.

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Ścieżka do katalogu dokumentów.
string dataDir = RunExamples.GetDataDir_Master();

// Schemat obciążenia
Diagram diagram = new Diagram();

// Załaduj szablon do strumienia
string templateFileName = dataDir + "NetApp-FAS-series.vss";
Stream stream = new FileStream(templateFileName, FileMode.Open);

// Dodaj wzorzec ze ścieżką pliku szablonu i identyfikatorem wzorca
string masterName = "FAS80xx rear empty";
diagram.AddMaster(templateFileName, 2);

// Dodaj wzorzec ze ścieżką pliku szablonu i nazwą wzorca
diagram.AddMaster(templateFileName, masterName);

// Dodaj wzorzec ze strumieniem pliku szablonu i identyfikatorem wzorca
diagram.AddMaster(stream, 2);

// Dodaje wzorzec do diagramu z diagramu źródłowego
Diagram src = new Diagram(templateFileName);
diagram.AddMaster(src, masterName);

// Dodaj wzorzec ze strumieniem pliku szablonu i identyfikatorem wzorca
diagram.AddMaster(stream, masterName);

// Dodaje kształt ze zdefiniowanymi PinX i PinY.
diagram.AddShape(2.0, 2.0, masterName, 0);
diagram.AddShape(6.0, 6.0, masterName, 0);

// Dodaje kształt ze zdefiniowanym PinX, PinY, szerokością i wysokością.
diagram.AddShape(7.0, 3.0, 1.5, 1.5, masterName, 0);

Aby uzyskać więcej informacji, odwiedź stronę praca z mistrzem.

Wstaw strony do diagramu programu Visio w języku C#

Diagramy MS Visio składają się z jednej lub więcej stron, a każda strona zawiera diagramy. Dlatego przed dodaniem kształtu musisz dodać stronę, wykonując następujące czynności.

Poniższy przykładowy kod pokazuje, jak dodać stronę na diagramie programu Visio VSDX przy użyciu języka C#.

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Ścieżka do katalogu dokumentów.
string dataDir = RunExamples.GetDataDir_VisioPages();

// Schemat obciążenia
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");

// Oblicza maksymalny identyfikator strony
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;
}

// Ustaw maksymalny identyfikator strony
int MaxPageId = max;

// Zainicjuj nowy obiekt strony
Page newPage = new Page();
// Ustaw nazwę
newPage.Name = "new page";
// Ustaw identyfikator strony
newPage.ID = MaxPageId + 1;

// Lub wypróbuj konstruktor strony
// Nowa strona = nowa strona (MaxPageId + 1);

// Dodaj nową pustą stronę
diagram.Pages.Add(newPage);

// Zapisz diagram
diagram.Save(dataDir + "InsertBlankPage_out.vsdx", SaveFileFormat.VSDX);

Aby uzyskać więcej informacji, odwiedź stronę praca ze stronami.

Utwórz kształt w diagramie Visio przy użyciu języka C#

Kształty to elementy składowe diagramów programu Visio. MS Visio obsługuje szeroką gamę kształtów do tworzenia diagramów w różnych dziedzinach. Poniższe kroki pokazują, jak wstawić kształt do diagramu programu Visio.

Poniższy przykładowy kod pokazuje, jak dodać kształt na diagramie programu Visio przy użyciu języka C#.

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Ścieżka do katalogu dokumentów.
string dataDir = RunExamples.GetDataDir_Shapes();

// Załaduj schemat
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// Pobierz stronę według nazwy
Page page = diagram.Pages.GetPage("Page-2");

// Dodaj wzorzec ze ścieżką pliku szablonu i nazwą wzorca
string masterName = "Rectangle";
diagram.AddMaster(dataDir + "Basic Shapes.vss", masterName);
            
// Indeksowanie stron zaczyna się od 0
int PageIndex = 1;
double width = 2, height = 2, pinX = 4.25, pinY = 4.5;
// Dodaj nowy kształt prostokąta
long rectangleId = diagram.AddShape(pinX, pinY, width, height, masterName, PageIndex);
            
// Ustaw właściwości kształtu 
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.");

Aby uzyskać więcej informacji, odwiedź stronę praca z kształtami.

Dodaj kształt tekstu na stronie Visio w języku C#

W różnych przypadkach konieczne jest również dodanie tekstu do diagramów programu Visio. W tym celu możesz wykonać poniższe kroki.

Poniższy przykładowy kod pokazuje, jak dodać tekst na diagramie VSDX przy użyciu języka C#.

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Ścieżka do katalogu dokumentów.
string dataDir = RunExamples.GetDataDir_ShapeText();

// Utwórz nowy diagram
Diagram diagram = new Diagram();
// Ustaw parametry i dodaj tekst do strony programu Visio
double PinX = 1, PinY = 1, Width = 1, Height = 1;                  
diagram.Pages[0].AddText(PinX, PinY, Width, Height, "Test text");
// Zapisz diagram 
diagram.Save(dataDir + "InsertTextShape_out.vsdx", SaveFileFormat.VSDX);

Aby uzyskać więcej informacji, odwiedź stronę praca z tekstem.

Wniosek

W tym poście poznałeś kilka podstawowych funkcji Aspose.Diagram for .NET do tworzenia diagramów Visio VSDX od podstaw. W przykładach kodu pokazano, jak dodawać wzorce, strony, kształty i tekst na diagramach VSDX przy użyciu języka C#. Możesz dowiedzieć się więcej o interfejsie API, korzystając z dokumentacji.

Zobacz też