Objective-C
Objective-C
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 Objective-C Downloads
#import <CkoJsonObject.h>
#import <CkoStringBuilder.h>
BOOL success = NO;
success = NO;
CkoJsonObject *options = [[CkoJsonObject alloc] init];
// Instead of specifying a "theme", provide values for the HTML document parts.
CkoStringBuilder *sbHead = [[CkoStringBuilder alloc] init];
BOOL bCrlf = YES;
[sbHead AppendLine: @"<head>" crlf: bCrlf];
[sbHead AppendLine: @"<style>" crlf: bCrlf];
[sbHead AppendLine: @"body {" crlf: bCrlf];
[sbHead AppendLine: @" font-family: \"Segoe UI\", Tahoma, Geneva, Verdana, sans-serif;" crlf: bCrlf];
[sbHead AppendLine: @"}" crlf: bCrlf];
[sbHead AppendLine: @"</style>" crlf: bCrlf];
[sbHead AppendLine: @"</head>" crlf: bCrlf];
// Each HTML section can be set individually.
[options UpdateString: @"docType" value: @"<!DOCTYPE html>"];
[options UpdateString: @"rootElement" value: @"<html lang=\"en\">"];
[options UpdateString: @"head" value: [sbHead GetAsString]];
[options UpdateString: @"bodyStart" value: @"<body>\n<div id=\"content\""];
[options UpdateString: @"bodyEnd" value: @"</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" value: @"<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-coy.min.css\" />"];
[options UpdateString: @"extraBody" value: @"<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>"];
CkoStringBuilder *sbMarkdown = [[CkoStringBuilder alloc] init];
CkoStringBuilder *sbHtml = [[CkoStringBuilder alloc] init];
success = [sbMarkdown LoadFile: @"qa_data/markdown/test1.md" charset: @"utf-8"];
if (success == NO) {
NSLog(@"%@",sbMarkdown.LastErrorText);
return;
}
[sbMarkdown MarkdownToHtml: options sbHtml: sbHtml];
[sbHtml ToCRLF];
NSLog(@"%@",[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:
// 