![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(C++) Markdown to HTML - Full Document, Custom Theme with Code Syntax HighlightingSee more Markdown ExamplesDemonstrates how to convert a complete Markdown document to HTML using your own custom theme with Cloudfare Prism's code syntax highlighting.Note: This example requires Chilkat v11.2.0 or greater.
#include <CkJsonObject.h> #include <CkStringBuilder.h> void ChilkatSample(void) { bool success = false; success = false; CkJsonObject options; // Instead of specifying a "theme", provide values for the HTML document parts. CkStringBuilder sbHead; bool bCrlf = true; sbHead.AppendLine("<head>",bCrlf); sbHead.AppendLine("<style>",bCrlf); sbHead.AppendLine("body {",bCrlf); sbHead.AppendLine(" font-family: \"Segoe UI\", Tahoma, Geneva, Verdana, sans-serif;",bCrlf); sbHead.AppendLine("}",bCrlf); sbHead.AppendLine("</style>",bCrlf); sbHead.AppendLine("</head>",bCrlf); // Each HTML section can be set individually. options.UpdateString("docType","<!DOCTYPE html>"); options.UpdateString("rootElement","<html lang=\"en\">"); options.UpdateString("head",sbHead.getAsString()); options.UpdateString("bodyStart","<body>\n<div id=\"content\""); options.UpdateString("bodyEnd","</div>\n</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. options.UpdateString("extraHead","<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-coy.min.css\" />"); 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>"); CkStringBuilder sbMarkdown; CkStringBuilder sbHtml; success = sbMarkdown.LoadFile("qa_data/markdown/test1.md","utf-8"); if (success == false) { std::cout << sbMarkdown.lastErrorText() << "\r\n"; return; } sbMarkdown.MarkdownToHtml(options,sbHtml); sbHtml.ToCRLF(); std::cout << sbHtml.getAsString() << "\r\n"; // 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: // |
||||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.