From 69bc6c2ae35883286d9c2b8cc77d5fa0a8c37351 Mon Sep 17 00:00:00 2001 From: pacien Date: Thu, 26 Jul 2018 11:34:06 +0200 Subject: Kotlin rewrite, adding diagram options --- .../org/pacien/pandoc/filter/plantuml/PlantUml.kt | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/main/kotlin/org/pacien/pandoc/filter/plantuml/PlantUml.kt (limited to 'src/main/kotlin/org/pacien/pandoc/filter/plantuml/PlantUml.kt') diff --git a/src/main/kotlin/org/pacien/pandoc/filter/plantuml/PlantUml.kt b/src/main/kotlin/org/pacien/pandoc/filter/plantuml/PlantUml.kt new file mode 100644 index 0000000..2a8da1b --- /dev/null +++ b/src/main/kotlin/org/pacien/pandoc/filter/plantuml/PlantUml.kt @@ -0,0 +1,21 @@ +package org.pacien.pandoc.filter.plantuml + +import net.sourceforge.plantuml.FileFormat +import net.sourceforge.plantuml.FileFormatOption +import net.sourceforge.plantuml.SourceStringReader +import java.io.ByteArrayOutputStream + +object PlantUml { + private val OUTPUT_FORMAT = FileFormatOption(FileFormat.LATEX_NO_PREAMBLE) + + private fun SourceStringReader.generateImage(outputFormat: FileFormatOption) = + ByteArrayOutputStream().use { buffer -> + generateImage(buffer, outputFormat) + buffer.toString().lineSequence() + } + + fun renderTikz(plantuml: String) = + SourceStringReader(plantuml) + .generateImage(OUTPUT_FORMAT) + .toLatex() +} -- cgit v1.2.3