Convert HTML into Markdown with Java.
In your gradle file:
dependencies {
compile 'io.github.furstenheim:copy_down:1.0'
}
import io.github.furstenheim.CopyDown;
public class Main {
public static void main (String[] args) {
CopyDown converter = new CopyDown();
String myHtml = "<h1>Some title</h1><div>Some html<p>Another paragraph</p></div>";
String markdown = converter.convert(myHtml);
System.out.println(markdown);
// Some title\n==========\n\nSome html\n\nAnother paragraph\n
}
}
It is possible to use options for converting markdown:
import io.github.furstenheim.CopyDown;
import io.github.furstenheim.Options;
import io.github.furstenheim.OptionsBuilder;
public class Main {
public static void main (String[] args) {
OptionsBuilder optionsBuilder = OptionsBuilder.anOptions();
Options options = optionsBuilder
.withBr("-")
// more options
.build();
CopyDown converter = new CopyDown(options);
String myHtml = "<h1>Some title</h1><div>Some html<p>Another paragraph</p></div>";
String markdown = converter.convert(myHtml);
System.out.println(markdown);
}
}
Option | Valid values | Default |
---|---|---|
headingStyle |
SETEXT or ATX |
SETEXT |
hr |
Any Thematic break | * * * |
bulletListMarker |
- , + , or * |
* |
codeBlockStyle |
INDENTED or FENCED |
INDENTED |
fence |
``` or ~~~ |
``` |
emDelimiter |
_ or * |
_ |
strongDelimiter |
** or __ |
** |
linkStyle |
INLINED or REFERENCED |
INLINED |
linkReferenceStyle |
FULL , COLLAPSED , or SHORTCUT |
FULL |
This library is a port to Java of the wonderful library Turndown.js. This library passes the same test suite as the original library to ensure same behavior.