Appeler PlantUML depuis du Java
Il est facile d'intégrer PlantUML avec votre propre code en rajoutant plantuml.jar dans votre classpath.
Génération d'image PNG depuis une chaîne de caractères
Si votre description de diagrammes est stockée dans une String, vous pouvez utiliser la classe SourceStringReader pour générer un fichier PNG.
import net.sourceforge.plantuml.SourceStringReader;
OutputStream png = ...;
String source = "@startuml\n";
source += "Bob -> Alice : hello\n";
source += "@enduml\n";
SourceStringReader reader = new SourceStringReader(source);
// Write the first image to "png"
String desc = reader.outputImage(png).getDescription();
// Return a null string if no generation
Génération d'image PNG depuis un fichier
Si votre description de diagrammes est stockée dans un File, vous pouvez utiliser la classe SourceFileReader pour générer un fichier PNG.
File source = ...;
SourceFileReader reader = new SourceFileReader(source);
List<GeneratedImage> list = reader.getGeneratedImages();
// Generated files
File png = list.get(0).getPngFile();
Génération d'image SVG depuis une chaîne de caractères
Si votre description de diagrammes est stockée dans une String, vous pouvez utiliser la classe SourceStringReader pour générer un fichier SVG.
String source = "@startuml\n";
source += "Bob -> Alice : hello\n";
source += "@enduml\n";
SourceStringReader reader = new SourceStringReader(source);
final ByteArrayOutputStream os = new ByteArrayOutputStream();
// Write the first image to "os"
String desc = reader.generateImage(os, new FileFormatOption(FileFormat.SVG));
os.close();
// The XML is stored into svg
final String svg = new String(os.toByteArray(), Charset.forName("UTF-8"));