Markdown Studio

Fill-in lines & inline HTML in PDFs

Markdown alone can’t express everything a printed form or court filing needs — a signature line, a “Name: __” blank, a two-column caption, a centred title block. Markdown Studio’s PDF renderer understands a small, deliberate subset of inline HTML/CSS so those documents come out right when you print or export to PDF, while the source stays plain Markdown that an AI assistant can read and edit.

Scope: this page describes what the PDF renderer supports (the Print / Export PDF preview tab). The on-screen Markdown preview may render these snippets more plainly — judge the result in the print preview.

Quick reference

Construct Renders as
<u>text</u>, <ins>text</ins> Underlined text
<del>text</del> Struck-through text
<br> Line break
<span style="border-bottom:…"> (no text) A fill-in blank line
<span style="color:…; font-weight:…">text</span> A styled inline label
<span style="color:transparent">…</span> Redacted (invisible) text
<div style="border-bottom:…"></div> A block signature line
<div style="text-align:center">…</div> Aligned block text
<div style="display:flex">…</div> Divs laid out side by side (a row)
<div style="page-break-before:always"></div> Forces a new page

Fill-in blanks (inline <span>)

A span with a visible border-bottom and no real text renders as a blank line sitting on the text baseline — the classic fill-in field:

Name: <span style="display:inline-block; min-width:150px; border-bottom:1px solid #555;"> </span>
Date: <span style="display:inline-block; min-width:108px; border-bottom:1px solid #555;"> </span>

Details the renderer honours:

Styled labels (inline <span> with text)

A span with text becomes a styled run inside the paragraph:

Status: <span style="color:#c00; font-weight:bold;">OVERDUE</span>

Supported properties: color, font-weight (bold or numeric ≥ 600), font-style: italic, font-size, and text-decoration: underline / line-through (combined with any surrounding decoration).

Redaction: color: transparent hides the text while keeping its space — on a span itself or inherited from a wrapping span. Combined with a visible border-bottom it draws the blank without the text.

Spans nest (inner spans inherit the outer style), uppercase <SPAN> works, HTML entities in prose are decoded (&amp;&, &nbsp; → space), and stray, unclosed, or self-closing span tags are stripped rather than leaking into the output.

Block layout (<div>)

A <div> on its own line(s) is a block-level element:

Page breaks

A bare <div> (empty or self-closing) or <hr> carrying a page-break directive forces a new page — the classic use is starting the Certificate of Service on its own page:

<div style="page-break-before:always"></div>

#### <u>CERTIFICATE OF SERVICE</u>

Details:

With a legal-mode profile (e.g. the built-in Court Filing), body paragraphs and list items flow across page boundaries: a paragraph that doesn’t fit the remaining space splits at a line and continues on the next page, so every page fills top to bottom the way a court filing must. Legal mode also sets body text — captions, list markers and plain <div>s included — at a uniform 12pt (Markdown headings keep their own sizes; ##### renders a 12pt bold title) and keeps one continuous double-spaced rhythm across paragraph breaks. Headings, caption rows, signature lines, quotes, tables and images never split.

Limitations

See also