module Markd

Overview

The library entry point for rendering PDFs.

A Renderer owns every option as instance state: instances are independent, nothing accumulates between renders, and the same instance can render many documents. The only process-wide state is the font cache (Markd::Pdf.register_font and Markd::Pdf.emoji_font=), which persists by design because parsing font metadata is expensive; register_font ignores duplicates.

Defined in:

lib/markd/src/markd.cr
lib/markd/src/markd/node.cr
lib/markd/src/markd/options.cr
lib/markd/src/markd/parser.cr
lib/markd/src/markd/renderer.cr
lib/markd/src/markd/renderers/html_renderer.cr
lib/markd/src/markd/rule.cr
lib/markd/src/markd/utils.cr
lib/markd/src/markd/version.cr
hyphenation.cr
markmark.cr
markterm.cr
pdf.cr
pdf_renderer.cr
pdf_styles.cr
text_renderer.cr

Constant Summary

SOFT_HYPHEN = '\u00AD'

Soft hyphen: inserted by insert_soft_hyphens, turned into a visible break hyphen by word_wrap when a line actually breaks there.

Class Method Summary

Class Method Detail

def self.to_md(source : String, options = Options.new) : String #

[View source]
def self.to_term(source : String, options = Options.new, theme : String | Nil = nil, code_theme : String | Nil = nil, force_links : Bool = false, max_width : Int32 | Nil = nil, hyphenate : Bool = false, language : String = "en", images : Bool | Nil = nil, no_links : Bool = false) : String #

[View source]