Flussdiagramm Java erstellen

Flussdiagramme können hilfreich sein, um Schritt-für-Schritt-Algorithmen zu verstehen, um die grafische Darstellung von Arbeitsabläufen und Prozessen zu entwerfen. In einigen Szenarien müssen Sie möglicherweise Flussdiagramme zur Problemlösung erstellen. In diesem Artikel wird beschrieben, wie Sie ein Flussdiagramm programmgesteuert in Java erstellen.

Installieren Sie die Java API, um ein Flussdiagramm zu erstellen

Sie können Flussdiagramme mit der API Aspose.Diagram for Java erstellen. Es unterstützt das Erstellen oder Bearbeiten von Visio Dateien in VSD, VSDX und anderen unterstützten Formaten. Sie können die API einfach installieren, indem Sie die JAR Datei aus dem Abschnitt New Releases herunterladen oder die folgenden Maven-Spezifikationen verwenden:

Repository:

 <repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>http://repository.aspose.com/repo/</url>
    </repository>
</repositories>

Abhängigkeit:

 <dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-diagram</artifactId>
        <version>22.1</version>
        <classifier>jdk16</classifier>
    </dependency>
</dependencies>

Programmgesteuertes Erstellen von Flussdiagrammen in Java

Sie können ein Flussdiagramm erstellen, um die Schritte einer Sequenz zu erklären. Sie müssen die folgenden Schritte ausführen, um Flussdiagramme zu erstellen:

  1. Erstellen Sie zunächst ein Schema zum Erstellen des Diagramms.
  2. Laden Sie zweitens eine VSS Datei als Master zum Hinzufügen von Formen. mit der Diagram Klasse.
  3. Formen und Konnektoren aus dem Schema hinzufügen.
  4. Legen Sie das Layout für das Flussdiagramm fest.
  5. Schreiben Sie schließlich die Ausgabedatei mit dem Flussdiagramm im VSDX Format mit der methode Save.

Das folgende Codebeispiel erläutert, wie ein Flussdiagramm programmgesteuert in Java erstellt wird:

// Erstellen Sie ein neues Diagramm 
int pageNumber = 0;
String rectangleMaster = "Process", decisionMaster = "Decision", connectorMaster = "Dynamic connector"; 

Diagram diagram = new Diagram("XANFLOWCHARTNEW.vss"); 

double width = 1, height = 1, pinX = 4, pinY = 10; 
long process1 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0); 
Shape processShape1 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process1); 

processShape1.getText().getValue().add(new Txt("PROCESS")); 
processShape1.setName("PROCESS"); 
processShape1.getXForm().getLocPinX().getUfe().setF("Width*0.5"); 
processShape1.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 

long decision1 = diagram.addShape(pinX, pinY, width, height, decisionMaster, 0);
Shape decisionShape1 = diagram.getPages().getPage(pageNumber).getShapes().getShape(decision1);

decisionShape1.getText().getValue().add(new Txt("DECISION")); 
decisionShape1.setName("DECISION"); 
decisionShape1.getXForm().getLocPinX().getUfe().setF("Width*0.5"); 
decisionShape1.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 
long process2 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0); 
Shape processShape2 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process2);

processShape2.getText().getValue().add(new Txt("PROCESS")); 
processShape2.setName("PROCESS");
processShape2.getXForm().getLocPinX().getUfe().setF("Width*0.5");
processShape2.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 
long process3 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0);
Shape processShape3 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process3);

processShape3.getText().getValue().add(new Txt("PROCESS")); 
processShape3.setName("PROCESS");
processShape3.getXForm().getLocPinX().getUfe().setF("Width*0.5");
processShape3.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 
long process4 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0);
Shape processShape4 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process4);

processShape4.getText().getValue().add(new Txt("PROCESS")); 
processShape4.setName("PROCESS");
processShape4.getXForm().getLocPinX().getUfe().setF("Width*0.5");
processShape4.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

long connecterId = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(process1, ConnectionPointPlace.BOTTOM, 
        decision1, ConnectionPointPlace.TOP, connecterId); 

long connecterId1 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(decision1, ConnectionPointPlace.BOTTOM,
        process2, ConnectionPointPlace.TOP, connecterId1); 

long connecterId2 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(process2, ConnectionPointPlace.BOTTOM,
        process3, ConnectionPointPlace.TOP, connecterId2); 

long connecterId3 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(process3, ConnectionPointPlace.BOTTOM,
        process4, ConnectionPointPlace.TOP, connecterId3); 

long connecterId4 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(decision1, ConnectionPointPlace.RIGHT,
        process4, ConnectionPointPlace.TOP, connecterId4);

// Legen Sie automatische Layoutoptionen fest
LayoutOptions layoutOptions = new LayoutOptions();

// Methode 
layoutOptions.setLayoutStyle(LayoutStyle.FLOW_CHART);
layoutOptions.setDirection(LayoutDirection.BOTTOM_TO_TOP);
diagram.layout(layoutOptions);

DiagramSaveOptions options = new DiagramSaveOptions(SaveFileFormat.VSDX);
diagram.save("sample.vsdx", options);

Vorschau des Beispielausgabe-Flussdiagramms

Flowchart Creator Maker Java

Außerdem können Sie die Eingabe und Ausgabedateien herunterladen, um diese Funktion zu überprüfen.

Erhalten Sie eine kostenlose API Lizenz

Sie können alle Funktionen der API ohne Einschränkungen testen, indem Sie eine kostenlose temporäre Lizenz anfordern.

Fazit

Zusammenfassend haben Sie gelernt, wie Sie Flussdiagramme programmgesteuert mit Java erstellen oder erstellen. Sie können die Richtung oder Formen des Flussdiagramms nach Ihren Anforderungen anpassen und ändern. Sie können diese Funktion also einfach mit den API-Aufrufen aus Ihrer Java Anwendung einbetten. Darüber hinaus können Sie die API Dokumentation besuchen, um mehrere andere Funktionen der API zu überprüfen. Sie können alle Ihre Fragen stellen, indem Sie sich an das Forum wenden.

Siehe auch