![]()  | 
  
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 <C_CkJsonObject.h> #include <C_CkStringBuilder.h> void ChilkatSample(void) { BOOL success; HCkJsonObject options; HCkStringBuilder sbHead; BOOL bCrlf; HCkStringBuilder sbMarkdown; HCkStringBuilder sbHtml; success = FALSE; success = FALSE; options = CkJsonObject_Create(); // Instead of specifying a "theme", provide values for the HTML document parts. sbHead = CkStringBuilder_Create(); bCrlf = TRUE; CkStringBuilder_AppendLine(sbHead,"<head>",bCrlf); CkStringBuilder_AppendLine(sbHead,"<style>",bCrlf); CkStringBuilder_AppendLine(sbHead,"body {",bCrlf); CkStringBuilder_AppendLine(sbHead," font-family: \"Segoe UI\", Tahoma, Geneva, Verdana, sans-serif;",bCrlf); CkStringBuilder_AppendLine(sbHead,"}",bCrlf); CkStringBuilder_AppendLine(sbHead,"</style>",bCrlf); CkStringBuilder_AppendLine(sbHead,"</head>",bCrlf); // Each HTML section can be set individually. CkJsonObject_UpdateString(options,"docType","<!DOCTYPE html>"); CkJsonObject_UpdateString(options,"rootElement","<html lang=\"en\">"); CkJsonObject_UpdateString(options,"head",CkStringBuilder_getAsString(sbHead)); CkJsonObject_UpdateString(options,"bodyStart","<body>\n<div id=\"content\""); CkJsonObject_UpdateString(options,"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. CkJsonObject_UpdateString(options,"extraHead","<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-coy.min.css\" />"); CkJsonObject_UpdateString(options,"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>"); sbMarkdown = CkStringBuilder_Create(); sbHtml = CkStringBuilder_Create(); success = CkStringBuilder_LoadFile(sbMarkdown,"qa_data/markdown/test1.md","utf-8"); if (success == FALSE) { printf("%s\n",CkStringBuilder_lastErrorText(sbMarkdown)); CkJsonObject_Dispose(options); CkStringBuilder_Dispose(sbHead); CkStringBuilder_Dispose(sbMarkdown); CkStringBuilder_Dispose(sbHtml); return; } CkStringBuilder_MarkdownToHtml(sbMarkdown,options,sbHtml); CkStringBuilder_ToCRLF(sbHtml); printf("%s\n",CkStringBuilder_getAsString(sbHtml)); // 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.