")
+ .append(comment.getAuthor())
+ .append("")
+ .append(" - ")
+ .append(comment.getScore())
+ .append(" points - ")
+ .append(createdLocalDateTime.format(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.SHORT)))
+ .append("
");
+ return RedditMarkupToImageConverter.render(
+ headerBuilder.toString(),
+ comment.getBody(),
+ width,
+ height,
+ blockHeight);
+ }
+}
diff --git a/src/main/java/me/delta2force/redditbrowser/reddittext/RedditMarkupToImageConverter.java b/src/main/java/me/delta2force/redditbrowser/reddittext/RedditMarkupToImageConverter.java
new file mode 100644
index 0000000..c63fe0a
--- /dev/null
+++ b/src/main/java/me/delta2force/redditbrowser/reddittext/RedditMarkupToImageConverter.java
@@ -0,0 +1,89 @@
+package me.delta2force.redditbrowser.reddittext;
+
+import com.vladsch.flexmark.html.HtmlRenderer;
+import com.vladsch.flexmark.parser.Parser;
+import com.vladsch.flexmark.profiles.pegdown.Extensions;
+import com.vladsch.flexmark.profiles.pegdown.PegdownOptionsAdapter;
+import com.vladsch.flexmark.util.ast.Document;
+import com.vladsch.flexmark.util.data.DataHolder;
+import com.vladsch.flexmark.util.data.MutableDataSet;
+import gui.ava.html.image.generator.HtmlImageGenerator;
+import org.apache.commons.lang.StringUtils;
+
+import java.awt.*;
+import java.awt.image.BufferedImage;
+import java.util.ArrayList;
+import java.util.List;
+
+
+public class RedditMarkupToImageConverter {
+ static final DataHolder OPTIONS = PegdownOptionsAdapter.flexmarkOptions(
+ Extensions.ALL
+ );
+
+ static final MutableDataSet FORMAT_OPTIONS = new MutableDataSet();
+
+ static {
+ // copy extensions from Pegdown compatible to Formatting, but leave the rest default
+ FORMAT_OPTIONS.set(Parser.EXTENSIONS, OPTIONS.get(Parser.EXTENSIONS));
+ }
+
+ public static List