Xojo Plugin
Xojo Plugin
Markdown to HTML - Full Document, Custom Theme with Code Syntax Highlighting
See more Markdown Examples
Demonstrates how to convert a complete Markdown document to HTML using your own custom theme with Cloudfare Prism's code syntax highlighting.Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
success = False
Dim options As New Chilkat.JsonObject
// Instead of specifying a "theme", provide values for the HTML document parts.
Dim sbHead As New Chilkat.StringBuilder
Dim bCrlf As Boolean
bCrlf = True
success = sbHead.AppendLine("<head>",bCrlf)
success = sbHead.AppendLine("<style>",bCrlf)
success = sbHead.AppendLine("body {",bCrlf)
success = sbHead.AppendLine(" font-family: ""Segoe UI"", Tahoma, Geneva, Verdana, sans-serif;",bCrlf)
success = sbHead.AppendLine("}",bCrlf)
success = sbHead.AppendLine("</style>",bCrlf)
success = sbHead.AppendLine("</head>",bCrlf)
// Each HTML section can be set individually.
success = options.UpdateString("docType","<!DOCTYPE html>")
success = options.UpdateString("rootElement","<html lang=""en"">")
success = options.UpdateString("head",sbHead.GetAsString())
success = options.UpdateString("bodyStart","<body>" + EndOfLine.Unix + "<div id=""content""")
success = options.UpdateString("bodyEnd","</div>" + EndOfLine.Unix + "</body>")
// We can add extra content to the bottom of the HTML head and body sections like this:
// Here we are using the Cloudfare Prism "coy" theme for code syntax higlighting.
success = options.UpdateString("extraHead","<link rel=""stylesheet"" href=""https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-coy.min.css"" />")
success = options.UpdateString("extraBody","<script src=""https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/prism.min.js""></script><script src =""https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js""></script>")
Dim sbMarkdown As New Chilkat.StringBuilder
Dim sbHtml As New Chilkat.StringBuilder
success = sbMarkdown.LoadFile("qa_data/markdown/test1.md","utf-8")
If (success = False) Then
System.DebugLog(sbMarkdown.LastErrorText)
Return
End If
success = sbMarkdown.MarkdownToHtml(options,sbHtml)
success = sbHtml.ToCRLF()
System.DebugLog(sbHtml.GetAsString())
// The sample markdown input for this example is identical to the one at Markdown to HTML - Full Document, Raw, where you can view it.
// Sample HTML output as viewed in a browser:
//