From 2106ebe749991ed81f1d96256c701684c7851ac1 Mon Sep 17 00:00:00 2001 From: JavaPerformance Date: Sun, 14 Jun 2026 14:27:34 +0200 Subject: [PATCH 1/6] Math rendering engine + rendering robustness fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Math engine: - Font-aware glyph metrics via a GlyphMetrics provider: the layout measures advances against the face that will render them (embedded PDF font, or bundled DejaVu for SVG/PNG), so equations stay aligned under --pdf-font. - Real math bold (\mathbf, \boldsymbol, \bm, \pmb, \mathbfit); fixes the \boldsymbol literal-leak. - Accents (\bar, \hat, \vec, \tilde, \dot, \ddot) drawn as centred geometry instead of zero-advance combining marks (which mis-placed per font, e.g. \bar{d} -> "đ"). - Recognise \dfrac/\tfrac/\cfrac and \mid/\vert/\Vert (were leaking source). PDF font embedding: - Emit CIDFontType0 + FontFile3 for CFF/OpenType faces (e.g. STIX Two Math) instead of mislabelling them as TrueType. Rendering fixes: - GFM table column alignment (:---:, ---:) honoured in PDF/SVG/PNG/HTML. - Title slides (all layouts) and section dividers auto-shrink to fit; wrapped content headings push the body/underline down instead of overprinting. - Inline rasterised as an image instead of being dropped. - Tabs in code expand to 4-column tab stops (no more notdef boxes). - {width=N%} clamps instead of leaking literal attribute text. - ::: columns handle leading/trailing/duplicate dividers (fence form). - Task-list items show only their checkbox, not a bullet too. - Display-math pagination weights equation images by aspect ratio so a one-line equation no longer splits onto a near-empty continuation slide. --- src/docx.rs | 2 +- src/font.rs | 2 +- src/html.rs | 36 +- src/ir.rs | 26 + src/lib.rs | 2 +- src/lint.rs | 4 +- src/math.rs | 1253 +++++++++++++++++++++++++++++++------------- src/odp.rs | 4 +- src/odt.rs | 2 +- src/paginate.rs | 135 ++++- src/parser.rs | 96 +++- src/pdf.rs | 417 ++++++++++++--- src/pptx.rs | 10 +- src/render_plan.rs | 4 +- src/svg.rs | 68 ++- tests/renderers.rs | 647 +++++------------------ 16 files changed, 1685 insertions(+), 1023 deletions(-) diff --git a/src/docx.rs b/src/docx.rs index 854c80e..41fdb98 100644 --- a/src/docx.rs +++ b/src/docx.rs @@ -948,7 +948,7 @@ fn render_block( )); } } - Block::Table { headers, rows } => render_table(out, headers, rows, theme, rels), + Block::Table { headers, rows, .. } => render_table(out, headers, rows, theme, rels), Block::Columns { left, right } => { render_blocks(out, left, theme, by_src, image_rels, rels); render_blocks(out, right, theme, by_src, image_rels, rels); diff --git a/src/font.rs b/src/font.rs index 58d278c..1edfd23 100644 --- a/src/font.rs +++ b/src/font.rs @@ -295,7 +295,7 @@ impl AuditBuilder<'_> { self.runs(slide, "quote", runs, FaceKind::SansRegular.index()); } } - Block::Table { headers, rows } => { + Block::Table { headers, rows, .. } => { for cell in headers.iter().chain(rows.iter().flatten()) { self.runs(slide, "table cell", cell, FaceKind::SansRegular.index()); } diff --git a/src/html.rs b/src/html.rs index 4278d39..7e515ae 100644 --- a/src/html.rs +++ b/src/html.rs @@ -6,7 +6,7 @@ //! PDF. use crate::image; -use crate::ir::{Block, ListItem, Run, Slide, SlideKind}; +use crate::ir::{Block, ColumnAlign, ListItem, Run, Slide, SlideKind}; use crate::layout::Layout; use crate::syntax::{self, TokenKind}; use crate::theme::Theme; @@ -320,7 +320,11 @@ fn render_block(out: &mut String, block: &Block, theme: &Theme, base_dir: &Path) } out.push_str("\n"); } - Block::Table { headers, rows } => render_table(out, headers, rows)?, + Block::Table { + headers, + rows, + aligns, + } => render_table(out, headers, rows, aligns)?, Block::ColumnBreak => {} Block::Columns { left, right } => { out.push_str("
\n
\n"); @@ -414,7 +418,11 @@ fn render_list(out: &mut String, items: &[ListItem]) -> Result<()> { for counter in counters.iter_mut().skip(level + 1) { *counter = 0; } - let marker = if item.ordered { + // Task-list items carry their own ☐/☑ marker in the runs, so leave the + // bullet slot empty to avoid showing both a bullet and a checkbox. + let marker = if item.is_task() { + String::new() + } else if item.ordered { format!("{}.", counters[level].max(1)) } else { "•".to_string() @@ -500,18 +508,30 @@ fn render_code_block( Ok(()) } -fn render_table(out: &mut String, headers: &[Vec], rows: &[Vec>]) -> Result<()> { +fn render_table( + out: &mut String, + headers: &[Vec], + rows: &[Vec>], + aligns: &[ColumnAlign], +) -> Result<()> { + let align_attr = |col: usize| -> &'static str { + match aligns.get(col) { + Some(ColumnAlign::Center) => " style=\"text-align:center\"", + Some(ColumnAlign::Right) => " style=\"text-align:right\"", + _ => "", + } + }; out.push_str("
\n"); - for cell in headers { - out.push_str(""); } out.push_str("\n\n"); for row in rows { out.push_str(""); - for cell in row { - out.push_str(""); } diff --git a/src/ir.rs b/src/ir.rs index 1e4e4f5..d2cb1cd 100644 --- a/src/ir.rs +++ b/src/ir.rs @@ -100,6 +100,15 @@ impl Run { } } +/// Per-column text alignment from a GFM table delimiter row (`:---`, `:---:`, +/// `---:`). pulldown-cmark's "no alignment" maps to `Left` (the default). +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +pub enum ColumnAlign { + Left, + Center, + Right, +} + /// One entry inside a [`Block::List`]. Nesting is encoded with `level` (0 = top) /// rather than a recursive `Vec` because that mirrors how /// pulldown-cmark emits list events and keeps the IR cheap to pattern-match @@ -111,6 +120,19 @@ pub struct ListItem { pub ordered: bool, } +impl ListItem { + /// True when this item is a GFM task-list entry (`- [ ]` / `- [x]`). The + /// parser renders the checkbox as a leading `☐`/`☑` run, which stands in + /// for the list bullet — so renderers should suppress their normal bullet + /// glyph and not draw both. + pub fn is_task(&self) -> bool { + self.runs + .first() + .map(|r| r.text.starts_with('☐') || r.text.starts_with('☑')) + .unwrap_or(false) + } +} + /// A single block-level element on a slide. The renderer's job is to take a /// flat sequence of these and place them inside the slide area. Layout-aware /// helpers in each writer (height estimation, column packing) consume the @@ -145,9 +167,13 @@ pub enum Block { Quote(Vec>), /// GitHub-flavoured table. `headers` is the first row; `rows` are the /// data rows. Cells are run lists so inline formatting works inside them. + /// `aligns` carries the per-column alignment from the GFM delimiter row + /// (`:---`, `:---:`, `---:`); it has one entry per column (may be shorter + /// than the widest row — renderers default missing entries to `Left`). Table { headers: Vec>, rows: Vec>>, + aligns: Vec, }, /// Sentinel emitted by the `:::` marker. Consumed by [`crate::paginate`] /// when it folds the block list into a `Columns` block; renderers should diff --git a/src/lib.rs b/src/lib.rs index 1508d2a..27d5bba 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -176,7 +176,7 @@ fn block_snapshot(b: &ir::Block, depth: usize, out: &mut String) { out.push_str(&format!("{} > {}\n", pad, runs_repr(para))); } } - Block::Table { headers, rows } => { + Block::Table { headers, rows, .. } => { out.push_str(&format!( "{}Table(cols={}, rows={}):\n", pad, diff --git a/src/lint.rs b/src/lint.rs index 189beea..3e3aa7c 100644 --- a/src/lint.rs +++ b/src/lint.rs @@ -147,7 +147,7 @@ fn check_theme_contrast(theme: &Theme, out: &mut Vec) { fn check_blocks(num: usize, blocks: &[Block], theme: &Theme, out: &mut Vec) { for b in blocks { match b { - Block::Table { headers, rows } => { + Block::Table { headers, rows, .. } => { let cols = headers .len() .max(rows.iter().map(|r| r.len()).max().unwrap_or(0)); @@ -316,7 +316,7 @@ fn block_weight(block: &Block) -> f32 { .sum::() as f32 / 100.0 } - Block::Table { headers, rows } => { + Block::Table { headers, rows, .. } => { let cols = headers .len() .max(rows.iter().map(|r| r.len()).max().unwrap_or(0)); diff --git a/src/math.rs b/src/math.rs index 9fdda73..ebd5dd7 100644 --- a/src/math.rs +++ b/src/math.rs @@ -243,6 +243,7 @@ pub enum MathLayoutDraw { y: f32, size: f32, text: String, + bold: bool, }, Line { x1: f32, @@ -266,10 +267,26 @@ pub enum MathLayoutDraw { } pub fn layout_markup_text(src: &str, scale_percent: u16) -> MathTextLayout { + layout_markup_text_with(src, scale_percent, &DejaVuMetrics) +} + +/// Lay out a markup-math line, measuring glyph advances against `metrics`. +/// Renderers that typeset math in a face other than the bundled DejaVu Sans +/// (e.g. the PDF writer under `--font`) pass a provider backed by that face +/// so the reserved widths match the glyphs actually drawn. +pub fn layout_markup_text_with( + src: &str, + scale_percent: u16, + metrics: &dyn GlyphMetrics, +) -> MathTextLayout { let expanded = apply_user_macros(src.trim(), &[]); let node = MathParser::new(&expanded).parse_root(); let base_size = 28.0 * (scale_percent as f32 / 100.0).clamp(0.25, 4.0); - publish_math_box(layout_math(&node, base_size)) + let ctx = LayoutCtx { + metrics, + bold: false, + }; + publish_math_box(ctx.layout_math(&node, base_size)) } pub fn decode_generated_math_svg(src: &str) -> Option { @@ -496,7 +513,13 @@ fn render_math_svg(src: &str, macros: &[(String, String)], options: MathSvgOptio let expanded = apply_user_macros(src.trim(), macros); let node = MathParser::new(&expanded).parse_root(); let base_size = 28.0 * options.scale_factor(); - let layout = layout_math(&node, base_size); + // The SVG-image path always renders math in the bundled DejaVu face + // (see the below), so DejaVu metrics are exact here. + let layout = LayoutCtx { + metrics: &DejaVuMetrics, + bold: false, + } + .layout_math(&node, base_size); let pad_x = base_size; let pad_y = base_size * 0.85; let natural_width = (layout.width + pad_x * 2.0).ceil().clamp(96.0, 2200.0); @@ -546,6 +569,17 @@ enum MathNode { }, Cases(Vec<(MathNode, Option)>), Lines(Vec), + /// Bold weight applied to everything inside (`\mathbf`, `\boldsymbol`, …). + Bold(Box), + /// An accent (`\bar`, `\hat`, `\vec`, …) drawn centred over `base`. `mark` + /// is the Unicode combining char that names the accent; the layout engine + /// renders it as geometry rather than a font combining glyph, because + /// zero-advance combining marks land at the base's right edge instead of + /// centred over it (and differently in every font). + Accent { + base: Box, + mark: char, + }, } struct MathParser<'a> { @@ -673,7 +707,9 @@ impl<'a> MathParser<'a> { false }; match name { - "frac" => { + // `\dfrac`/`\tfrac`/`\cfrac` differ from `\frac` only in display + // style, which this engine already approximates per nesting depth. + "frac" | "dfrac" | "tfrac" | "cfrac" => { let num = self.parse_required_group_node(); let den = self.parse_required_group_node(); MathNode::Fraction(Box::new(num), Box::new(den)) @@ -700,8 +736,12 @@ impl<'a> MathParser<'a> { "big" | "Big" | "bigg" | "Bigg" | "bigl" | "bigr" | "Bigl" | "Bigr" | "biggl" | "biggr" | "Biggl" | "Biggr" => MathNode::Text(self.parse_delimiter_token()), "limits" | "nolimits" => MathNode::Text(String::new()), - "text" | "textrm" | "textit" | "textbf" | "mathrm" | "mathbf" | "mathit" | "mathsf" - | "mathtt" => MathNode::Text(self.parse_required_group_raw()), + "mathbf" | "textbf" | "boldsymbol" | "bm" | "pmb" | "mathbfit" => { + MathNode::Bold(Box::new(self.parse_required_group_node())) + } + "text" | "textrm" | "textit" | "mathrm" | "mathit" | "mathsf" | "mathtt" => { + MathNode::Text(self.parse_required_group_raw()) + } "operatorname" => { let mut name = self.parse_required_group_raw(); if starred && !name.is_empty() { @@ -720,7 +760,10 @@ impl<'a> MathParser<'a> { _ if accent_mark(name).is_some() => { let mark = accent_mark(name).unwrap_or('\u{0302}'); let arg = self.parse_required_group_node(); - MathNode::Text(apply_combining_mark(&node_plain_text(&arg), mark)) + MathNode::Accent { + base: Box::new(arg), + mark, + } } _ => { if let Some(rep) = greek_or_symbol(name) { @@ -974,6 +1017,14 @@ impl<'a> MathParser<'a> { } self.pos = utf8_char_end(self.bytes, self.pos); } + if self.pos < self.bytes.len() && matches!(self.bytes[self.pos], b'^' | b'_') { + let run = &self.src[start..self.pos]; + if let Some((last_offset, _)) = run.char_indices().last() { + if last_offset > 0 { + self.pos = start + last_offset; + } + } + } MathNode::Text(self.src[start..self.pos].into()) } } @@ -1130,59 +1181,6 @@ fn delimiter_name(token: &str) -> &str { } } -fn node_plain_text(node: &MathNode) -> String { - match node { - MathNode::Row(nodes) | MathNode::Lines(nodes) => { - nodes.iter().map(node_plain_text).collect() - } - MathNode::Text(text) => text.clone(), - MathNode::Fraction(num, den) => { - format!("({})/({})", node_plain_text(num), node_plain_text(den)) - } - MathNode::Sqrt(inner) => format!("√({})", node_plain_text(inner)), - MathNode::Delimited { left, body, right } => { - format!("{left}{}{right}", node_plain_text(body)) - } - MathNode::Script { base, sub, sup } => { - let mut out = node_plain_text(base); - if let Some(sub) = sub { - out.push('_'); - out.push_str(&node_plain_text(sub)); - } - if let Some(sup) = sup { - out.push('^'); - out.push_str(&node_plain_text(sup)); - } - out - } - MathNode::Matrix { rows, .. } => rows - .iter() - .map(|row| { - row.iter() - .map(node_plain_text) - .collect::>() - .join(" ") - }) - .collect::>() - .join("\n"), - MathNode::Cases(rows) => rows - .iter() - .map(|(expr, condition)| { - if let Some(condition) = condition { - format!( - "{} if {}", - node_plain_text(expr), - node_plain_text(condition) - ) - } else { - node_plain_text(expr) - } - }) - .collect::>() - .join("\n"), - } -} - #[derive(Debug, Clone)] struct MathBox { width: f32, @@ -1198,6 +1196,7 @@ enum Draw { y: f32, size: f32, text: String, + bold: bool, }, Line { x1: f32, @@ -1220,209 +1219,556 @@ enum Draw { }, } -fn layout_math(node: &MathNode, size: f32) -> MathBox { - match node { - MathNode::Text(text) => layout_text(text, size), - MathNode::Row(nodes) => layout_row(nodes, size), - MathNode::Fraction(num, den) => layout_fraction(num, den, size), - MathNode::Sqrt(inner) => layout_sqrt(inner, size), - MathNode::Delimited { left, body, right } => layout_delimited(left, body, right, size), - MathNode::Script { base, sub, sup } => { - layout_script(base, sub.as_deref(), sup.as_deref(), size) - } - MathNode::Matrix { rows, left, right } => layout_matrix(rows, left, right, size), - MathNode::Cases(rows) => layout_cases(rows, size), - MathNode::Lines(lines) => layout_lines(lines, size), - } -} - -fn layout_text(text: &str, size: f32) -> MathBox { - if text.is_empty() { - return MathBox { - width: 0.0, - height: size * 1.15, - baseline: size * 0.82, - draws: Vec::new(), - }; - } - let width = text.chars().map(char_width_factor).sum::() * size; - let height = size * 1.15; - let baseline = size * 0.82; - MathBox { - width, - height, - baseline, - draws: vec![Draw::Text { - x: 0.0, - y: baseline, - size, - text: text.into(), - }], +/// Source of glyph advance widths for the layout engine. A provider reports +/// each glyph's advance as a fraction of the em **in the face that will +/// actually render it**. Because the layout reserves horizontal space here +/// while the renderer advances glyphs with the font's own metrics, the two +/// only stay aligned when the provider matches the rendering face. The +/// SVG/PNG paths always typeset math in the bundled DejaVu Sans and so use +/// [`DejaVuMetrics`]; the PDF path supplies a provider backed by its embedded +/// face, so a `--font` replacement stays pixel-aligned instead of drifting. +pub trait GlyphMetrics { + /// Advance width of `ch` as a fraction of the em, at the given weight. + /// `bold` selects the bold face's metrics — bold glyphs are ~12% wider + /// in DejaVu, so a bold run reserves its own space. + fn advance_em(&self, ch: char, bold: bool) -> f32; +} + +/// Built-in metrics for the bundled DejaVu Sans face. Also the sensible +/// fallback for any glyph a custom face cannot supply, since unmapped glyphs +/// degrade to DejaVu (or a fallback font) at render time anyway. +pub struct DejaVuMetrics; + +/// Mean advance ratio of DejaVu Sans **Bold** over Regular (measured across +/// the math glyph set). Bold runs in the SVG/PNG paths — which always render +/// in DejaVu — reserve width with this scale; the PDF path measures the real +/// bold face instead, so this approximation only affects short SVG bold runs. +const DEJAVU_BOLD_WIDTH_SCALE: f32 = 1.12; + +impl GlyphMetrics for DejaVuMetrics { + fn advance_em(&self, ch: char, bold: bool) -> f32 { + let w = char_width_factor(ch); + if bold { + w * DEJAVU_BOLD_WIDTH_SCALE + } else { + w + } + } +} + +/// Carries the active [`GlyphMetrics`] and weight through the recursive +/// layout pass so every `layout_*` step measures text against the same face. +struct LayoutCtx<'m> { + metrics: &'m dyn GlyphMetrics, + bold: bool, +} + +impl<'m> LayoutCtx<'m> { + /// A child context with bold weight enabled for everything it lays out. + fn bolded(&self) -> LayoutCtx<'m> { + LayoutCtx { + metrics: self.metrics, + bold: true, + } + } + + fn layout_math(&self, node: &MathNode, size: f32) -> MathBox { + match node { + MathNode::Text(text) => self.layout_text(text, size), + MathNode::Row(nodes) => self.layout_row(nodes, size), + MathNode::Fraction(num, den) => self.layout_fraction(num, den, size), + MathNode::Sqrt(inner) => self.layout_sqrt(inner, size), + MathNode::Delimited { left, body, right } => { + self.layout_delimited(left, body, right, size) + } + MathNode::Script { base, sub, sup } => { + self.layout_script(base, sub.as_deref(), sup.as_deref(), size) + } + MathNode::Matrix { rows, left, right } => self.layout_matrix(rows, left, right, size), + MathNode::Cases(rows) => self.layout_cases(rows, size), + MathNode::Lines(lines) => self.layout_lines(lines, size), + MathNode::Bold(inner) => self.bolded().layout_math(inner, size), + MathNode::Accent { base, mark } => self.layout_accent(base, *mark, size), + } + } + + /// Lay out an accent (`\bar`, `\hat`, …) by drawing it as geometry centred + /// over the base. This sidesteps font combining-mark placement, which puts + /// zero-advance marks at the base's right edge rather than over it. + fn layout_accent(&self, base: &MathNode, mark: char, size: f32) -> MathBox { + let base_box = self.layout_math(base, size); + let stroke = (size * 0.05).max(1.2); + // Vertical room added above the base for the accent. + let pad = size * 0.20; + let w = base_box.width; + let cx = w / 2.0; + // Accent baseline within the padding band, a little above the base ink. + let ay = pad * 0.45; + let mut draws = Vec::new(); + append_draws(&mut draws, &base_box, 0.0, pad); + match mark { + // bar / overline — a horizontal rule spanning the base. + '\u{0304}' | '\u{0305}' => { + let half = (w * 0.5 - size * 0.03).max(size * 0.14); + draws.push(Draw::Line { + x1: cx - half, + y1: ay, + x2: cx + half, + y2: ay, + stroke_width: stroke, + }); + } + // hat — a caret. + '\u{0302}' => { + let hw = (w * 0.32).clamp(size * 0.14, size * 0.30); + draws.push(Draw::Polyline { + points: vec![ + (cx - hw, ay + size * 0.10), + (cx, ay - size * 0.03), + (cx + hw, ay + size * 0.10), + ], + stroke_width: stroke, + }); + } + // tilde — a shallow wave. + '\u{0303}' => { + let hw = (w * 0.32).clamp(size * 0.14, size * 0.30); + let a = size * 0.05; + draws.push(Draw::Polyline { + points: vec![ + (cx - hw, ay + a), + (cx - hw * 0.3, ay - a), + (cx + hw * 0.3, ay + a), + (cx + hw, ay - a), + ], + stroke_width: stroke, + }); + } + // vec — a right arrow. + '\u{20d7}' => { + let half = (w * 0.5).max(size * 0.16); + draws.push(Draw::Line { + x1: cx - half, + y1: ay, + x2: cx + half, + y2: ay, + stroke_width: stroke, + }); + let hh = size * 0.07; + draws.push(Draw::Polyline { + points: vec![ + (cx + half - size * 0.11, ay - hh), + (cx + half, ay), + (cx + half - size * 0.11, ay + hh), + ], + stroke_width: stroke, + }); + } + // dot / ddot — round caps make a short stroke read as a dot. + '\u{0307}' => { + draws.push(dot_draw(cx, ay, size)); + } + '\u{0308}' => { + let dx = size * 0.13; + draws.push(dot_draw(cx - dx, ay, size)); + draws.push(dot_draw(cx + dx, ay, size)); + } + _ => {} + } + MathBox { + width: w, + height: pad + base_box.height, + baseline: pad + base_box.baseline, + draws, + } } -} -fn char_width_factor(ch: char) -> f32 { - if ch.is_whitespace() { - 0.34 - } else if ('\u{0300}'..='\u{036f}').contains(&ch) { - 0.0 - } else if ch.is_ascii_punctuation() { - 0.36 - } else if ch.is_ascii_digit() || ch.is_ascii_alphabetic() { - 0.58 - } else { - 0.66 + fn layout_text(&self, text: &str, size: f32) -> MathBox { + if text.is_empty() { + return MathBox { + width: 0.0, + height: size * 1.15, + baseline: size * 0.82, + draws: Vec::new(), + }; + } + let width = text + .chars() + .map(|ch| self.metrics.advance_em(ch, self.bold)) + .sum::() + * size; + let height = size * 1.15; + let baseline = size * 0.82; + MathBox { + width, + height, + baseline, + draws: vec![Draw::Text { + x: 0.0, + y: baseline, + size, + text: text.into(), + bold: self.bold, + }], + } } } -fn layout_row(nodes: &[MathNode], size: f32) -> MathBox { - let children = nodes - .iter() - .map(|node| layout_math(node, size)) - .collect::>(); - let baseline = children - .iter() - .map(|b| b.baseline) - .fold(size * 0.82, f32::max); - let below = children - .iter() - .map(|b| b.height - b.baseline) - .fold(size * 0.33, f32::max); - let mut draws = Vec::new(); - let mut x = 0.0; - for child in children { - append_draws(&mut draws, &child, x, baseline - child.baseline); - x += child.width; - } - MathBox { - width: x, - height: baseline + below, - baseline, - draws, - } -} +/// Advance width of `ch` as a fraction of the em, taken from the real glyph +/// metrics of **DejaVu Sans** — the face both the PDF and the SVG/PNG paths +/// use to draw math text. The layout engine reserves horizontal space using +/// these factors while the renderer advances the glyphs with the font's own +/// widths, so the two only stay in lockstep if the factors match the font. +/// Hand-rounded guesses (the old table) drifted by up to 0.28 em on `+`/`-`, +/// which a 90-term Lagrangian — built almost entirely of those signs — +/// accumulates into visible overlap. Values below are `advanceWidth / +/// unitsPerEm` straight from `DejaVuSans.ttf` (unitsPerEm = 2048). +// 0.318 (the comma/period/`·` advance) is close to 1/π, which trips the +// `approx_constant` lint — but these are real DejaVu advance widths, not the +// constant. +#[allow(clippy::approx_constant)] +fn char_width_factor(ch: char) -> f32 { + // Combining diacritics (\bar, \hat, …) stack over the previous glyph and + // therefore advance nothing. + if ('\u{0300}'..='\u{036f}').contains(&ch) { + return 0.0; + } + match ch { + ' ' | '\t' | '\n' | '\r' => 0.32, + '0'..='9' => 0.636, + + // ASCII lowercase + 'a' => 0.613, + 'b' => 0.635, + 'c' => 0.550, + 'd' => 0.635, + 'e' => 0.615, + 'f' => 0.352, + 'g' => 0.635, + 'h' => 0.634, + 'i' => 0.278, + 'j' => 0.278, + 'k' => 0.579, + 'l' => 0.278, + 'm' => 0.974, + 'n' => 0.634, + 'o' => 0.612, + 'p' => 0.635, + 'q' => 0.635, + 'r' => 0.411, + 's' => 0.521, + 't' => 0.392, + 'u' => 0.634, + 'v' => 0.592, + 'w' => 0.818, + 'x' => 0.592, + 'y' => 0.592, + 'z' => 0.525, + + // ASCII uppercase + 'A' => 0.684, + 'B' => 0.686, + 'C' => 0.698, + 'D' => 0.770, + 'E' => 0.632, + 'F' => 0.575, + 'G' => 0.775, + 'H' => 0.752, + 'I' => 0.295, + 'J' => 0.295, + 'K' => 0.656, + 'L' => 0.557, + 'M' => 0.863, + 'N' => 0.748, + 'O' => 0.787, + 'P' => 0.603, + 'Q' => 0.787, + 'R' => 0.695, + 'S' => 0.635, + 'T' => 0.611, + 'U' => 0.732, + 'V' => 0.684, + 'W' => 0.989, + 'X' => 0.685, + 'Y' => 0.611, + 'Z' => 0.685, + + // ASCII operators, relations and punctuation + '+' | '=' | '<' | '>' | '~' | '#' => 0.838, + '-' => 0.361, + '*' => 0.500, + '/' | '\\' | ':' | ';' | '|' => 0.337, + '(' | ')' | '[' | ']' => 0.390, + '{' | '}' => 0.636, + ',' | '.' => 0.318, + '!' => 0.401, + '?' => 0.531, + '\'' => 0.275, + '"' => 0.460, + '&' => 0.780, + '%' => 0.950, + '@' => 1.000, -fn layout_fraction(num: &MathNode, den: &MathNode, size: f32) -> MathBox { - let child_size = (size * 0.82).max(12.0); - let num_box = layout_math(num, child_size); - let den_box = layout_math(den, child_size); - let pad = size * 0.28; - let gap = size * 0.16; - let line_y = num_box.height + gap; - let width = num_box.width.max(den_box.width) + pad * 2.0; - let mut draws = Vec::new(); - append_draws(&mut draws, &num_box, (width - num_box.width) / 2.0, 0.0); - draws.push(Draw::Line { - x1: 0.0, - y1: line_y, - x2: width, - y2: line_y, - stroke_width: (size * 0.045).max(1.2), - }); - let den_y = line_y + gap; - append_draws(&mut draws, &den_box, (width - den_box.width) / 2.0, den_y); - MathBox { - width, - height: den_y + den_box.height, - baseline: line_y + gap + den_box.baseline, - draws, - } -} + // Greek lowercase + 'α' => 0.659, + 'β' => 0.638, + 'γ' => 0.592, + 'δ' => 0.612, + 'ε' => 0.541, + 'ζ' => 0.544, + 'η' => 0.634, + 'θ' => 0.612, + 'ϑ' => 0.619, + 'ι' => 0.338, + 'κ' => 0.589, + 'λ' => 0.592, + 'μ' => 0.636, + 'ν' => 0.559, + 'ξ' => 0.558, + 'π' => 0.602, + 'ϖ' => 0.837, + 'ρ' => 0.635, + 'ϱ' => 0.635, + 'σ' => 0.634, + 'ς' => 0.587, + 'τ' => 0.602, + 'υ' => 0.579, + 'φ' => 0.660, + 'ϕ' => 0.660, + 'χ' => 0.578, + 'ψ' => 0.660, + 'ω' => 0.837, -fn layout_sqrt(inner: &MathNode, size: f32) -> MathBox { - let inner_box = layout_math(inner, size * 0.94); - let left = size * 0.62; - let top = size * 0.14; - let pad = size * 0.18; - let width = left + inner_box.width + pad; - let height = inner_box.height + top + size * 0.10; - let baseline = top + inner_box.baseline; - let mut draws = Vec::new(); - let y_mid = top + inner_box.height * 0.58; - let y_base = top + inner_box.height * 0.86; - draws.push(Draw::Polyline { - points: vec![ - (size * 0.08, y_mid), - (size * 0.22, y_base), - (size * 0.42, top + inner_box.height), - (left * 0.92, top + size * 0.06), - (width, top + size * 0.06), - ], - stroke_width: (size * 0.045).max(1.2), - }); - append_draws(&mut draws, &inner_box, left, top); - MathBox { - width, - height, - baseline, - draws, + // Greek uppercase + 'Α' => 0.684, + 'Β' => 0.686, + 'Γ' => 0.557, + 'Δ' => 0.684, + 'Ε' => 0.632, + 'Ζ' => 0.685, + 'Η' => 0.752, + 'Θ' => 0.787, + 'Ι' => 0.295, + 'Κ' => 0.656, + 'Λ' => 0.684, + 'Μ' => 0.863, + 'Ν' => 0.748, + 'Ξ' => 0.632, + 'Π' => 0.752, + 'Ρ' => 0.603, + 'Σ' => 0.632, + 'Τ' => 0.611, + 'Υ' => 0.611, + 'Φ' => 0.787, + 'Χ' => 0.685, + 'Ψ' => 0.787, + 'Ω' => 0.764, + + // Big operators, relations, arrows and symbols + '∑' => 0.674, + '∏' => 0.757, + '∫' | '∮' => 0.521, + '⋃' | '⋂' => 0.820, + '≤' | '≥' | '≠' | '≈' | '≡' | '∼' | '≃' | '≅' | '≐' | '≺' | '≻' | '≼' | '≽' => { + 0.838 + } + '≪' | '≫' => 1.047, + '∝' => 0.714, + '→' | '←' | '⇒' | '⇐' | '↔' | '⇔' | '↦' | '↑' | '↓' | '⇑' | '⇓' => { + 0.838 + } + '⟶' | '⟵' | '⟹' | '⟸' | '⟷' | '⟺' => 1.434, + '±' | '∓' | '×' | '÷' | '⊕' | '⊗' | '∗' | '¬' => 0.838, + '·' => 0.318, + '∘' => 0.626, + '•' => 0.590, + '⋆' => 0.626, + '∧' | '∨' | '∪' | '∩' => 0.732, + '∖' => 0.637, + '∀' => 0.684, + '∃' | '∄' => 0.632, + '∈' | '∉' | '∌' | '∅' => 0.871, + '⊂' | '⊃' | '⊆' | '⊇' | '⊈' | '⊉' => 0.838, + '∴' | '∵' => 0.636, + '∞' => 0.833, + '∂' => 0.517, + '∇' => 0.669, + 'ℏ' => 0.634, + 'ℓ' => 0.413, + 'ℜ' => 0.814, + 'ℑ' => 0.697, + 'ℵ' => 0.745, + '∠' => 0.896, + '△' => 0.769, + '°' => 0.500, + '′' => 0.227, + '†' => 0.500, + '⟨' | '⟩' | '⌊' | '⌋' | '⌈' | '⌉' => 0.390, + '‖' => 0.500, + '…' | '⋯' | '⋮' | '⋱' => 1.000, + + // Anything else: blackboard/script letters, CJK, etc. A middling + // advance is the safest guess and rarely appears in equations. + _ => 0.620, + } +} + +impl<'m> LayoutCtx<'m> { + fn layout_row(&self, nodes: &[MathNode], size: f32) -> MathBox { + let children = nodes + .iter() + .map(|node| self.layout_math(node, size)) + .collect::>(); + let baseline = children + .iter() + .map(|b| b.baseline) + .fold(size * 0.82, f32::max); + let below = children + .iter() + .map(|b| b.height - b.baseline) + .fold(size * 0.33, f32::max); + let mut draws = Vec::new(); + let mut x = 0.0; + for child in children { + append_draws(&mut draws, &child, x, baseline - child.baseline); + x += child.width; + } + MathBox { + width: x, + height: baseline + below, + baseline, + draws, + } + } + + fn layout_fraction(&self, num: &MathNode, den: &MathNode, size: f32) -> MathBox { + let child_size = (size * 0.82).max(12.0); + let num_box = self.layout_math(num, child_size); + let den_box = self.layout_math(den, child_size); + let pad = size * 0.28; + let gap = size * 0.16; + let line_y = num_box.height + gap; + let width = num_box.width.max(den_box.width) + pad * 2.0; + let mut draws = Vec::new(); + append_draws(&mut draws, &num_box, (width - num_box.width) / 2.0, 0.0); + draws.push(Draw::Line { + x1: 0.0, + y1: line_y, + x2: width, + y2: line_y, + stroke_width: (size * 0.045).max(1.2), + }); + let den_y = line_y + gap; + append_draws(&mut draws, &den_box, (width - den_box.width) / 2.0, den_y); + MathBox { + width, + height: den_y + den_box.height, + baseline: line_y + gap + den_box.baseline, + draws, + } + } + + fn layout_sqrt(&self, inner: &MathNode, size: f32) -> MathBox { + let inner_box = self.layout_math(inner, size * 0.94); + let left = size * 0.62; + let top = size * 0.14; + let pad = size * 0.18; + let width = left + inner_box.width + pad; + let height = inner_box.height + top + size * 0.10; + let baseline = top + inner_box.baseline; + let mut draws = Vec::new(); + let y_mid = top + inner_box.height * 0.58; + let y_base = top + inner_box.height * 0.86; + draws.push(Draw::Polyline { + points: vec![ + (size * 0.08, y_mid), + (size * 0.22, y_base), + (size * 0.42, top + inner_box.height), + (left * 0.92, top + size * 0.06), + (width, top + size * 0.06), + ], + stroke_width: (size * 0.045).max(1.2), + }); + append_draws(&mut draws, &inner_box, left, top); + MathBox { + width, + height, + baseline, + draws, + } } -} -fn layout_delimited(left: &str, body: &MathNode, right: &str, size: f32) -> MathBox { - let body_box = layout_math(body, size); - layout_delimited_box(left, body_box, right, size) -} - -fn layout_delimited_box(left: &str, body_box: MathBox, right: &str, size: f32) -> MathBox { - let delimiter_height = body_box.height.max(size * 1.25).min(size * 6.0); - let left_box = layout_delimiter(left, delimiter_height, size); - let right_box = layout_delimiter(right, delimiter_height, size); - let gap = if left.is_empty() && right.is_empty() { - 0.0 - } else { - size * 0.12 - }; - let body_y = (delimiter_height - body_box.height) / 2.0; - let baseline = body_y + body_box.baseline; - let mut draws = Vec::new(); - let mut x = 0.0; - if !left.is_empty() { - append_draws(&mut draws, &left_box, x, 0.0); - x += left_box.width + gap; - } - append_draws(&mut draws, &body_box, x, body_y); - x += body_box.width; - if !right.is_empty() { - x += gap; - append_draws(&mut draws, &right_box, x, 0.0); - x += right_box.width; - } - MathBox { - width: x, - height: delimiter_height, - baseline, - draws, + fn layout_delimited(&self, left: &str, body: &MathNode, right: &str, size: f32) -> MathBox { + let body_box = self.layout_math(body, size); + self.layout_delimited_box(left, body_box, right, size) } -} -fn layout_delimiter(token: &str, height: f32, size: f32) -> MathBox { - if token.is_empty() { - return MathBox { - width: 0.0, - height, - baseline: height * 0.5, - draws: Vec::new(), + fn layout_delimited_box( + &self, + left: &str, + body_box: MathBox, + right: &str, + size: f32, + ) -> MathBox { + let delimiter_height = body_box.height.max(size * 1.25).min(size * 6.0); + let left_box = self.layout_delimiter(left, delimiter_height, size); + let right_box = self.layout_delimiter(right, delimiter_height, size); + let gap = if left.is_empty() && right.is_empty() { + 0.0 + } else { + size * 0.12 }; + let body_y = (delimiter_height - body_box.height) / 2.0; + let baseline = body_y + body_box.baseline; + let mut draws = Vec::new(); + let mut x = 0.0; + if !left.is_empty() { + append_draws(&mut draws, &left_box, x, 0.0); + x += left_box.width + gap; + } + append_draws(&mut draws, &body_box, x, body_y); + x += body_box.width; + if !right.is_empty() { + x += gap; + append_draws(&mut draws, &right_box, x, 0.0); + x += right_box.width; + } + MathBox { + width: x, + height: delimiter_height, + baseline, + draws, + } } - if scalable_delimiter(token) { - let width = delimiter_width(token, height, size); - return MathBox { - width, - height, - baseline: height * 0.5, - draws: vec![Draw::Delimiter { - x: 0.0, - y: 0.0, + + fn layout_delimiter(&self, token: &str, height: f32, size: f32) -> MathBox { + if token.is_empty() { + return MathBox { + width: 0.0, + height, + baseline: height * 0.5, + draws: Vec::new(), + }; + } + if scalable_delimiter(token) { + let width = delimiter_width(token, height, size); + return MathBox { width, height, - token: token.to_string(), - stroke_width: (size * 0.055).max(1.35), - }], - }; + baseline: height * 0.5, + draws: vec![Draw::Delimiter { + x: 0.0, + y: 0.0, + width, + height, + token: token.to_string(), + stroke_width: (size * 0.055).max(1.35), + }], + }; + } + let font_size = height.min(size * 3.2).max(size * 1.15); + self.layout_text(token, font_size) } - let font_size = height.min(size * 3.2).max(size * 1.15); - layout_text(token, font_size) } fn scalable_delimiter(token: &str) -> bool { @@ -1441,135 +1787,138 @@ fn delimiter_width(token: &str, height: f32, size: f32) -> f32 { } } -fn layout_script( - base: &MathNode, - sub: Option<&MathNode>, - sup: Option<&MathNode>, - size: f32, -) -> MathBox { - let base_box = layout_math(base, size); - let script_size = (size * 0.62).max(10.0); - let sup_box = sup.map(|node| layout_math(node, script_size)); - let sub_box = sub.map(|node| layout_math(node, script_size)); - let gap = size * 0.08; - let above = sup_box - .as_ref() - .map(|b| (b.height * 0.72).max(size * 0.15)) - .unwrap_or(0.0); - let below = sub_box - .as_ref() - .map(|b| (b.height * 0.72).max(size * 0.15)) - .unwrap_or(0.0); - let baseline = above + base_box.baseline; - let height = above + base_box.height + below; - let script_width = sup_box - .as_ref() - .map(|b| b.width) - .unwrap_or(0.0) - .max(sub_box.as_ref().map(|b| b.width).unwrap_or(0.0)); - let mut draws = Vec::new(); - append_draws(&mut draws, &base_box, 0.0, above); - if let Some(sup_box) = sup_box.as_ref() { - append_draws( - &mut draws, - sup_box, - base_box.width + gap, - (above - sup_box.height * 0.70).max(0.0), - ); - } - if let Some(sub_box) = sub_box.as_ref() { - append_draws( - &mut draws, - sub_box, - base_box.width + gap, - baseline + size * 0.10, - ); - } - MathBox { - width: base_box.width + gap + script_width, - height, - baseline, - draws, +impl<'m> LayoutCtx<'m> { + fn layout_script( + &self, + base: &MathNode, + sub: Option<&MathNode>, + sup: Option<&MathNode>, + size: f32, + ) -> MathBox { + let base_box = self.layout_math(base, size); + let script_size = (size * 0.62).max(10.0); + let sup_box = sup.map(|node| self.layout_math(node, script_size)); + let sub_box = sub.map(|node| self.layout_math(node, script_size)); + let gap = size * 0.08; + let above = sup_box + .as_ref() + .map(|b| (b.height * 0.72).max(size * 0.15)) + .unwrap_or(0.0); + let below = sub_box + .as_ref() + .map(|b| (b.height * 0.72).max(size * 0.15)) + .unwrap_or(0.0); + let baseline = above + base_box.baseline; + let height = above + base_box.height + below; + let script_width = sup_box + .as_ref() + .map(|b| b.width) + .unwrap_or(0.0) + .max(sub_box.as_ref().map(|b| b.width).unwrap_or(0.0)); + let mut draws = Vec::new(); + append_draws(&mut draws, &base_box, 0.0, above); + if let Some(sup_box) = sup_box.as_ref() { + append_draws( + &mut draws, + sup_box, + base_box.width + gap, + (above - sup_box.height * 0.70).max(0.0), + ); + } + if let Some(sub_box) = sub_box.as_ref() { + append_draws( + &mut draws, + sub_box, + base_box.width + gap, + baseline + size * 0.10, + ); + } + MathBox { + width: base_box.width + gap + script_width, + height, + baseline, + draws, + } } -} -fn layout_lines(lines: &[MathNode], size: f32) -> MathBox { - let rows = lines - .iter() - .map(|line| layout_math(line, size)) - .collect::>(); - stack_rows(&rows, size * 0.38, false) -} + fn layout_lines(&self, lines: &[MathNode], size: f32) -> MathBox { + let rows = lines + .iter() + .map(|line| self.layout_math(line, size)) + .collect::>(); + stack_rows(&rows, size * 0.38, false) + } -fn layout_matrix(rows: &[Vec], left: &str, right: &str, size: f32) -> MathBox { - let cell_size = (size * 0.86).max(12.0); - let laid_rows = rows - .iter() - .map(|row| { - row.iter() - .map(|cell| layout_math(cell, cell_size)) - .collect::>() - }) - .collect::>(); - let cols = laid_rows.iter().map(|row| row.len()).max().unwrap_or(0); - let mut col_widths = vec![0.0; cols]; - for row in &laid_rows { - for (idx, cell) in row.iter().enumerate() { - if cell.width > col_widths[idx] { - col_widths[idx] = cell.width; + fn layout_matrix(&self, rows: &[Vec], left: &str, right: &str, size: f32) -> MathBox { + let cell_size = (size * 0.86).max(12.0); + let laid_rows = rows + .iter() + .map(|row| { + row.iter() + .map(|cell| self.layout_math(cell, cell_size)) + .collect::>() + }) + .collect::>(); + let cols = laid_rows.iter().map(|row| row.len()).max().unwrap_or(0); + let mut col_widths = vec![0.0; cols]; + for row in &laid_rows { + for (idx, cell) in row.iter().enumerate() { + if cell.width > col_widths[idx] { + col_widths[idx] = cell.width; + } } } - } - let col_gap = size * 0.65; - let row_gap = size * 0.28; - let body_width = col_widths.iter().sum::() + col_gap * cols.saturating_sub(1) as f32; - let mut y = 0.0; - let mut draws = Vec::new(); - for row in &laid_rows { - let baseline = row - .iter() - .map(|cell| cell.baseline) - .fold(cell_size * 0.82, f32::max); - let below = row - .iter() - .map(|cell| cell.height - cell.baseline) - .fold(cell_size * 0.33, f32::max); - let mut x = 0.0; - for (idx, cell) in row.iter().enumerate() { - let cell_x = x + (col_widths[idx] - cell.width) / 2.0; - append_draws(&mut draws, cell, cell_x, y + baseline - cell.baseline); - x += col_widths[idx] + col_gap; + let col_gap = size * 0.65; + let row_gap = size * 0.28; + let body_width = col_widths.iter().sum::() + col_gap * cols.saturating_sub(1) as f32; + let mut y = 0.0; + let mut draws = Vec::new(); + for row in &laid_rows { + let baseline = row + .iter() + .map(|cell| cell.baseline) + .fold(cell_size * 0.82, f32::max); + let below = row + .iter() + .map(|cell| cell.height - cell.baseline) + .fold(cell_size * 0.33, f32::max); + let mut x = 0.0; + for (idx, cell) in row.iter().enumerate() { + let cell_x = x + (col_widths[idx] - cell.width) / 2.0; + append_draws(&mut draws, cell, cell_x, y + baseline - cell.baseline); + x += col_widths[idx] + col_gap; + } + y += baseline + below + row_gap; + } + let height = (y - row_gap).max(size * 1.2); + let baseline = height / 2.0 + size * 0.28; + let body = MathBox { + width: body_width, + height, + baseline, + draws, + }; + if left.is_empty() && right.is_empty() { + body + } else { + self.layout_delimited_box(left, body, right, size) } - y += baseline + below + row_gap; } - let height = (y - row_gap).max(size * 1.2); - let baseline = height / 2.0 + size * 0.28; - let body = MathBox { - width: body_width, - height, - baseline, - draws, - }; - if left.is_empty() && right.is_empty() { - body - } else { - layout_delimited_box(left, body, right, size) - } -} -fn layout_cases(rows: &[(MathNode, Option)], size: f32) -> MathBox { - let matrix_rows = rows - .iter() - .map(|(expr, condition)| { - let mut row = vec![expr.clone()]; - if let Some(condition) = condition { - row.push(MathNode::Text("if ".into())); - row.push(condition.clone()); - } - row - }) - .collect::>(); - layout_matrix(&matrix_rows, "{", "", size) + fn layout_cases(&self, rows: &[(MathNode, Option)], size: f32) -> MathBox { + let matrix_rows = rows + .iter() + .map(|(expr, condition)| { + let mut row = vec![expr.clone()]; + if let Some(condition) = condition { + row.push(MathNode::Text("if ".into())); + row.push(condition.clone()); + } + row + }) + .collect::>(); + self.layout_matrix(&matrix_rows, "{", "", size) + } } fn stack_rows(rows: &[MathBox], gap: f32, center: bool) -> MathBox { @@ -1596,6 +1945,19 @@ fn stack_rows(rows: &[MathBox], gap: f32, center: bool) -> MathBox { } } +/// A dot accent: a near-zero-length stroke whose round line cap renders as a +/// filled disc of diameter ≈ the stroke width. +fn dot_draw(cx: f32, cy: f32, size: f32) -> Draw { + let r = (size * 0.06).max(1.4); + Draw::Line { + x1: cx, + y1: cy, + x2: cx + 0.01, + y2: cy, + stroke_width: r * 2.0, + } +} + fn append_draws(draws: &mut Vec, child: &MathBox, dx: f32, dy: f32) { for draw in &child.draws { draws.push(offset_draw(draw, dx, dy)); @@ -1613,7 +1975,19 @@ fn publish_math_box(layout: MathBox) -> MathTextLayout { fn publish_draw(draw: Draw) -> MathLayoutDraw { match draw { - Draw::Text { x, y, size, text } => MathLayoutDraw::Text { x, y, size, text }, + Draw::Text { + x, + y, + size, + text, + bold, + } => MathLayoutDraw::Text { + x, + y, + size, + text, + bold, + }, Draw::Line { x1, y1, @@ -1654,11 +2028,18 @@ fn publish_draw(draw: Draw) -> MathLayoutDraw { fn offset_draw(draw: &Draw, dx: f32, dy: f32) -> Draw { match draw { - Draw::Text { x, y, size, text } => Draw::Text { + Draw::Text { + x, + y, + size, + text, + bold, + } => Draw::Text { x: x + dx, y: y + dy, size: *size, text: text.clone(), + bold: *bold, }, Draw::Line { x1, @@ -1701,12 +2082,19 @@ fn offset_draw(draw: &Draw, dx: f32, dy: f32) -> Draw { fn render_box(layout: &MathBox, dx: f32, dy: f32, out: &mut String) { for draw in &layout.draws { match draw { - Draw::Text { x, y, size, text } => { + Draw::Text { + x, + y, + size, + text, + bold, + } => { if text.is_empty() { continue; } + let weight = if *bold { r#" font-weight="bold""# } else { "" }; out.push_str(&format!( - r#" {}"#, + r#" {}"#, x + dx, y + dy, size, @@ -1923,7 +2311,7 @@ fn escape_xml(s: &str) -> String { .replace('"', """) } -fn base64(bytes: &[u8]) -> String { +pub(crate) fn base64(bytes: &[u8]) -> String { const TABLE: &[u8; 64] = b"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; let mut out = String::with_capacity(bytes.len().div_ceil(3) * 4); for chunk in bytes.chunks(3) { @@ -2410,6 +2798,10 @@ fn is_text_like_group_command(name: &str) -> bool { | "mathsf" | "mathtt" | "operatorname" + | "boldsymbol" + | "bm" + | "pmb" + | "mathbfit" ) } @@ -2742,6 +3134,9 @@ fn supported_macro(name: &str) -> bool { matches!( name, "frac" + | "dfrac" + | "tfrac" + | "cfrac" | "sqrt" | "binom" | "begin" @@ -2760,6 +3155,10 @@ fn supported_macro(name: &str) -> bool { | "mathsf" | "mathtt" | "operatorname" + | "boldsymbol" + | "bm" + | "pmb" + | "mathbfit" | "vec" | "bar" | "overline" @@ -3100,6 +3499,9 @@ fn greek_or_symbol(name: &str) -> Option<&'static str> { "rangle" => "⟩", "lvert" => "|", "rvert" => "|", + "mid" => "|", + "vert" => "|", + "Vert" => "‖", "lVert" => "‖", "rVert" => "‖", "lfloor" => "⌊", @@ -3208,4 +3610,111 @@ mod tests { assert!(rendered.contains("ℝⁿ"), "{rendered}"); } + + #[test] + fn markup_scripts_bind_to_last_plain_atom() { + let layout = layout_markup_text("MZ^0_\\mu", 100); + let texts = layout + .draws + .iter() + .filter_map(|draw| match draw { + MathLayoutDraw::Text { text, .. } => Some(text.as_str()), + _ => None, + }) + .collect::>(); + + assert!(texts.contains(&"M"), "{texts:?}"); + assert!(texts.contains(&"Z"), "{texts:?}"); + assert!(!texts.contains(&"MZ"), "{texts:?}"); + } + + #[test] + fn markup_width_model_leaves_room_for_wide_fields() { + let wide = layout_markup_text(r"W^+_\mu W^{-\mu} MZ^0_\mu", 100); + let narrow = layout_markup_text(r"i^+_\mu i^{-\mu} lZ^0_\mu", 100); + + assert!( + wide.width > narrow.width * 1.35, + "wide glyphs should reserve more horizontal layout room: wide={}, narrow={}", + wide.width, + narrow.width + ); + } + + #[test] + fn layout_reserves_width_from_the_supplied_metrics() { + // A provider reporting a fixed advance per glyph must drive the + // reserved width directly — proving the layout measures the active + // face rather than a baked-in table. This is what keeps PDF `--font` + // output aligned. + struct Fixed(f32); + impl GlyphMetrics for Fixed { + fn advance_em(&self, _ch: char, _bold: bool) -> f32 { + self.0 + } + } + + let wide = layout_markup_text_with("abcd", 100, &Fixed(1.0)); + let narrow = layout_markup_text_with("abcd", 100, &Fixed(0.5)); + + // 4 glyphs × 1.0 em × 28 px base size. + assert!((wide.width - 112.0).abs() < 0.5, "wide={}", wide.width); + assert!( + (wide.width - narrow.width * 2.0).abs() < 0.5, + "halving the advance must halve the width: wide={}, narrow={}", + wide.width, + narrow.width + ); + } + + #[test] + fn accents_render_as_centred_geometry_not_combining_glyphs() { + // `\bar{X}` must draw a horizontal rule over the base and keep the + // base text as a bare "X" — never an "X\u{0304}" combining run, whose + // zero-advance mark the renderer would mis-place at the base's edge + // (font-dependently). This is what makes the accent font-independent. + let layout = layout_markup_text(r"\bar{X}", 100); + let has_rule = layout + .draws + .iter() + .any(|d| matches!(d, MathLayoutDraw::Line { .. })); + assert!(has_rule, "\\bar must draw a rule: {:?}", layout.draws); + for draw in &layout.draws { + if let MathLayoutDraw::Text { text, .. } = draw { + assert!( + !text.chars().any(|c| ('\u{0300}'..='\u{036f}').contains(&c)), + "base text must not carry a combining mark: {text:?}" + ); + } + } + } + + #[test] + fn bold_command_marks_text_runs_bold_and_widens_them() { + let layout = layout_markup_text(r"a\mathbf{b}\boldsymbol{c}", 100); + let bold_texts: Vec<&str> = layout + .draws + .iter() + .filter_map(|draw| match draw { + MathLayoutDraw::Text { + text, bold: true, .. + } => Some(text.as_str()), + _ => None, + }) + .collect(); + // `b` (\mathbf) and `c` (\boldsymbol) are bold; the leading `a` is not. + assert!(bold_texts.contains(&"b"), "{bold_texts:?}"); + assert!(bold_texts.contains(&"c"), "{bold_texts:?}"); + assert!(!bold_texts.contains(&"a"), "{bold_texts:?}"); + + // Bold reserves more width than the same glyph in regular weight. + let regular = layout_markup_text("x", 100); + let bold = layout_markup_text(r"\mathbf{x}", 100); + assert!( + bold.width > regular.width, + "bold should be wider: bold={}, regular={}", + bold.width, + regular.width + ); + } } diff --git a/src/odp.rs b/src/odp.rs index 05d097f..56b1ee6 100644 --- a/src/odp.rs +++ b/src/odp.rs @@ -1553,7 +1553,7 @@ fn render_blocks( &theme.body_font, )); } - Block::Table { headers, rows } => { + Block::Table { headers, rows, .. } => { out.push_str(&render_table(reg, x, y, w, h, headers, rows, theme)); } Block::Columns { left, right } => { @@ -1694,7 +1694,7 @@ fn block_height_emu(b: &Block, w: u32, theme: &Theme, imgs: &Imgs) -> u32 { .sum::() + 120000 } - Block::Table { headers, rows } => table_height_emu(headers, rows, w, theme), + Block::Table { headers, rows, .. } => table_height_emu(headers, rows, w, theme), Block::Columns { left, right } => { let gap: u32 = 280000; let half = w.saturating_sub(gap) / 2; diff --git a/src/odt.rs b/src/odt.rs index fcb3203..231485f 100644 --- a/src/odt.rs +++ b/src/odt.rs @@ -650,7 +650,7 @@ fn render_block(out: &mut String, b: &Block, theme: &Theme, by_src: &HashMap render_table(out, headers, rows, theme), + Block::Table { headers, rows, .. } => render_table(out, headers, rows, theme), Block::Columns { left, right } => { // Documents flow, so collapse columns into back-to-back blocks. render_blocks(out, left, theme, by_src); diff --git a/src/paginate.rs b/src/paginate.rs index bcdc517..93120a8 100644 --- a/src/paginate.rs +++ b/src/paginate.rs @@ -15,6 +15,7 @@ use crate::ir::*; use crate::layout::{Layout, LayoutKind}; +use crate::math; use crate::theme::Theme; #[derive(Debug, Clone, Copy, PartialEq, Eq)] @@ -465,9 +466,14 @@ fn paginate_inner( // Mirror of the code-block branch for GFM tables. The header // row is repeated on each continuation slide so a reader who // lands on page N still sees the column titles. - if matches!(&block, Block::Table { headers, rows } if table_weight(headers, rows, wscale) > budget + 1.0) + if matches!(&block, Block::Table { headers, rows, .. } if table_weight(headers, rows, wscale) > budget + 1.0) { - if let Block::Table { headers, rows } = block { + if let Block::Table { + headers, + rows, + aligns, + } = block + { let chunks = split_table_rows(headers.as_slice(), rows, budget, wscale); for (idx, chunk) in chunks.into_iter().enumerate() { if !current.blocks.is_empty() && idx > 0 { @@ -491,6 +497,7 @@ fn paginate_inner( current.blocks.push(Block::Table { headers: headers.clone(), rows: chunk, + aligns: aligns.clone(), }); weight += chunk_weight; } @@ -513,8 +520,12 @@ fn fit_tables(blocks: Vec, theme: &Theme, mode: TableFit) -> Vec { let mut out = Vec::new(); for block in blocks { match block { - Block::Table { headers, rows } => { - out.extend(fit_table(headers, rows, theme, mode)); + Block::Table { + headers, + rows, + aligns, + } => { + out.extend(fit_table(headers, rows, aligns, theme, mode)); } Block::Columns { left, right } => out.push(Block::Columns { left: fit_tables(left, theme, mode), @@ -612,19 +623,32 @@ fn should_code_two_up(mode: CodeColumns, lines: &[String], theme: &Theme) -> boo fn fit_table( headers: Vec>, rows: Vec>>, + aligns: Vec, theme: &Theme, mode: TableFit, ) -> Vec { if matches!(mode, TableFit::Off) { - return vec![Block::Table { headers, rows }]; + return vec![Block::Table { + headers, + rows, + aligns, + }]; } let cols = table_col_count(&headers, &rows); if cols <= 1 { - return vec![Block::Table { headers, rows }]; + return vec![Block::Table { + headers, + rows, + aligns, + }]; } let max_cols = if theme.portrait { 4 } else { 7 }; if cols <= max_cols { - return vec![Block::Table { headers, rows }]; + return vec![Block::Table { + headers, + rows, + aligns, + }]; } let use_transpose = match mode { @@ -633,9 +657,11 @@ fn fit_table( TableFit::Split | TableFit::Off => false, }; if use_transpose { + // Transposing swaps rows and columns, so the original per-column + // alignment no longer maps — fall back to the default. return vec![transpose_table(headers, rows, cols)]; } - split_table_columns(headers, rows, cols, max_cols) + split_table_columns(headers, rows, aligns, cols, max_cols) } fn table_col_count(headers: &[Vec], rows: &[Vec>]) -> usize { @@ -663,12 +689,14 @@ fn transpose_table(headers: Vec>, rows: Vec>>, cols: usize Block::Table { headers: out_headers, rows: out_rows, + aligns: Vec::new(), } } fn split_table_columns( headers: Vec>, rows: Vec>>, + aligns: Vec, cols: usize, max_cols: usize, ) -> Vec { @@ -680,17 +708,28 @@ fn split_table_columns( let mut col_indices = Vec::with_capacity(end - start + 1); col_indices.push(0); col_indices.extend(start..end); + // Each split keeps the leading key column plus a window of the rest; + // carry the matching per-column alignments. + let chunk_aligns = col_indices + .iter() + .map(|&i| aligns.get(i).copied().unwrap_or(ColumnAlign::Left)) + .collect(); out.push(Block::Table { headers: pick_header_cells(&headers, &col_indices), rows: rows .iter() .map(|row| pick_row_cells(row, &col_indices)) .collect(), + aligns: chunk_aligns, }); start = end; } if out.is_empty() { - out.push(Block::Table { headers, rows }); + out.push(Block::Table { + headers, + rows, + aligns, + }); } out } @@ -762,6 +801,26 @@ fn table_row_weight(cells: &[Vec], cols: usize, wscale: f32) -> f32 { 0.45 + lines * 0.95 } +/// Natural `(width, height)` in px of a generated math SVG data URI, read +/// from its `` tag. Used to weight display equations by how tall they +/// actually render rather than assuming a full-height image. +fn math_image_dims(src: &str) -> Option<(f32, f32)> { + let svg = math::decode_generated_math_svg(src)?; + let tag_end = svg.find('>')?; + let tag = &svg[..tag_end]; + let attr = |key: &str| -> Option { + let needle = format!("{key}=\""); + let start = tag.find(&needle)? + needle.len(); + let rest = &tag[start..]; + let end = rest.find('"')?; + rest[..end].parse::().ok() + }; + match (attr("width"), attr("height")) { + (Some(w), Some(h)) if w > 0.0 && h > 0.0 => Some((w, h)), + _ => None, + } +} + fn block_weight(b: &Block, wscale: f32, allow_auto_columns: bool) -> f32 { match b { Block::Paragraph(runs) => { @@ -780,7 +839,7 @@ fn block_weight(b: &Block, wscale: f32, allow_auto_columns: bool) -> f32 { .sum::() + 0.6 } - Block::Table { headers, rows } => table_weight(headers, rows, wscale), + Block::Table { headers, rows, .. } => table_weight(headers, rows, wscale), Block::ColumnBreak => 0.0, Block::Columns { left, right } => { // Two-column layout halves the per-column width, so each side @@ -803,7 +862,28 @@ fn block_weight(b: &Block, wscale: f32, allow_auto_columns: bool) -> f32 { // caption-style paragraph still triggers a split, keeping the // image on its own clean page. If you bump the renderer cap, // bump this value too. - Block::Image { .. } => 13.0, + // + // Generated display-math images are the exception: they scale to the + // content *width*, so their on-slide height is set by their aspect + // ratio, not the 65%-tall photo assumption. A wide one-line equation + // is short and should sit on the same slide as its heading + caption + // instead of being shoved onto a "(cont.)" page. Weight it by + // height/width; the constant maps a square equation (one that would + // fill the content column) to the full image weight. + Block::Image { src, alt, .. } => { + if math::math_image_meta(src, alt).is_some() { + // Equations render small (capped at `math_max_height`), so even + // a tall one leaves room for a heading and caption. Weight by + // aspect but cap well below the photo weight so a single + // equation never forces a "(cont.)" split on its own. + match math_image_dims(src) { + Some((w, h)) if w > 0.0 => ((h / w) * 16.0).clamp(1.0, 8.0), + _ => 2.5, + } + } else { + 13.0 + } + } Block::Footnotes(items) => { // Small text, so each line is ~half the weight of a normal list line. let total: f32 = items @@ -1217,19 +1297,32 @@ fn coalesce_columns(blocks: Vec) -> Vec { if !blocks.iter().any(|b| matches!(b, Block::ColumnBreak)) { return blocks; } - let mut left = Vec::new(); - let mut right = Vec::new(); - let mut break_seen = false; + // Split on every `:::` divider, then drop empty segments. This makes a + // leading, trailing, or duplicate divider — e.g. the natural fence form + // `::: … ::: … :::` — behave like a single divider instead of dumping all + // content into the right column and leaving the left blank. The IR has + // only two columns, so any segments past the second fold into the right. + let mut segments: Vec> = vec![Vec::new()]; for b in blocks { - match b { - Block::ColumnBreak => { - break_seen = true; - } - other if break_seen => right.push(other), - other => left.push(other), + if matches!(b, Block::ColumnBreak) { + segments.push(Vec::new()); + } else { + segments + .last_mut() + .expect("non-empty by construction") + .push(b); + } + } + let mut segments: Vec> = segments.into_iter().filter(|s| !s.is_empty()).collect(); + match segments.len() { + 0 => Vec::new(), + 1 => segments.pop().expect("len checked"), + _ => { + let left = segments.remove(0); + let right = segments.into_iter().flatten().collect(); + vec![Block::Columns { left, right }] } } - vec![Block::Columns { left, right }] } fn total_chars(runs: &[Run]) -> usize { diff --git a/src/parser.rs b/src/parser.rs index a44dec4..4456880 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -18,7 +18,7 @@ use crate::ir::*; use crate::math::{MathMode, MathOptions, MathSvgOptions}; -use pulldown_cmark::{CodeBlockKind, Event, HeadingLevel, Options, Parser, Tag, TagEnd}; +use pulldown_cmark::{Alignment, CodeBlockKind, Event, HeadingLevel, Options, Parser, Tag, TagEnd}; use std::path::{Path, PathBuf}; #[derive(Debug, Clone)] @@ -200,15 +200,32 @@ fn extract_image_attrs(line: &str) -> String { out } +/// Expand tab characters in a code line to spaces at 4-column tab stops. +fn expand_code_tabs(line: &str) -> String { + const TAB: usize = 4; + let mut out = String::with_capacity(line.len()); + let mut col = 0usize; + for ch in line.chars() { + if ch == '\t' { + let n = TAB - (col % TAB); + out.extend(std::iter::repeat(' ').take(n)); + col += n; + } else { + out.push(ch); + col += 1; + } + } + out +} + fn parse_width_pct(attr: &str) -> Option { let attr = attr.trim(); let rest = attr.strip_prefix("width=")?.trim(); let n = rest.strip_suffix('%')?.trim().parse::().ok()?; - if (1..=100).contains(&n) { - Some(n as u8) - } else { - None - } + // Clamp out-of-range percentages rather than rejecting them: a rejected + // attribute leaks its literal `{width=…}` text into the slide body (and + // forces a spurious continuation slide). Downstream renderers clamp too. + Some(n.clamp(1, 100) as u8) } struct State<'a> { @@ -240,6 +257,10 @@ struct State<'a> { code_start_line: usize, code_columns: Option, code_buf: String, + /// Accumulates an inline `` block (which can arrive across + /// several HTML events) until its closing tag, at which point it becomes a + /// rasterised image instead of being dropped. + svg_buf: Option, in_blockquote: u32, quote_paragraphs: Vec>, @@ -250,6 +271,7 @@ struct State<'a> { table_headers: Vec>, table_rows: Vec>>, table_row: Vec>, + table_aligns: Vec, cell_runs: Vec, in_image: bool, @@ -324,6 +346,7 @@ impl<'a> State<'a> { code_start_line: 1, code_columns: None, code_buf: String::new(), + svg_buf: None, in_blockquote: 0, quote_paragraphs: Vec::new(), in_table: false, @@ -332,6 +355,7 @@ impl<'a> State<'a> { table_headers: Vec::new(), table_rows: Vec::new(), table_row: Vec::new(), + table_aligns: Vec::new(), cell_runs: Vec::new(), in_image: false, image_src: String::new(), @@ -429,6 +453,30 @@ impl<'a> State<'a> { self.started_real_content = true; } + /// Turn an accumulated inline `` into a rasterisable image + /// block (base64 SVG data URI), routed through the normal image pipeline. + fn push_inline_svg(&mut self, svg: &str) { + let Some(start) = svg.find("") + .map(|i| i + "".len()) + .unwrap_or(svg.len()); + let markup = &svg[start..end]; + self.flush_paragraph(); + let uri = format!( + "data:image/svg+xml;base64,{}", + crate::math::base64(markup.as_bytes()) + ); + self.current.blocks.push(Block::Image { + src: uri, + alt: String::new(), + width_pct: None, + }); + self.started_real_content = true; + } + fn handle(&mut self, event: Event) { match event { Event::Start(tag) => self.start_tag(tag), @@ -446,6 +494,18 @@ impl<'a> State<'a> { self.push_text(&c, true); } Event::Html(c) | Event::InlineHtml(c) => { + // Inline `` arrives as one or more HTML events; + // accumulate it and rasterise on the closing tag rather than + // dropping it (markdown HTML is otherwise ignored). + if self.svg_buf.is_some() || c.contains("") { + let svg = self.svg_buf.take().unwrap_or_default(); + self.push_inline_svg(&svg); + } + return; + } let s = c.trim(); if s == "" { self.flush_paragraph(); @@ -569,11 +629,20 @@ impl<'a> State<'a> { self.image_src = dest_url.to_string(); self.image_alt.clear(); } - Tag::Table(_) => { + Tag::Table(aligns) => { self.flush_paragraph(); self.in_table = true; self.table_headers.clear(); self.table_rows.clear(); + self.table_aligns = aligns + .iter() + .map(|a| match a { + Alignment::Center => crate::ir::ColumnAlign::Center, + Alignment::Right => crate::ir::ColumnAlign::Right, + // None and Left both render left-aligned. + _ => crate::ir::ColumnAlign::Left, + }) + .collect(); } Tag::FootnoteDefinition(label) => { self.flush_paragraph(); @@ -676,10 +745,14 @@ impl<'a> State<'a> { } else { (fallback_code, self.code_start_line) }; + // Expand tabs to 4-column tab stops: the embedded fonts have no + // tab glyph (it renders as a notdef box) and renderers advance + // by glyph width, so a literal `\t` both tofus and breaks + // indentation. Doing it here fixes every backend at once. let lines: Vec = code .trim_end_matches('\n') .split('\n') - .map(|s| s.to_string()) + .map(expand_code_tabs) .collect(); let line_numbers = lines.len() > 5; self.current.blocks.push(Block::CodeBlock { @@ -742,7 +815,12 @@ impl<'a> State<'a> { self.in_table = false; let headers = std::mem::take(&mut self.table_headers); let rows = std::mem::take(&mut self.table_rows); - self.current.blocks.push(Block::Table { headers, rows }); + let aligns = std::mem::take(&mut self.table_aligns); + self.current.blocks.push(Block::Table { + headers, + rows, + aligns, + }); self.started_real_content = true; } TagEnd::TableHead => { diff --git a/src/pdf.rs b/src/pdf.rs index 6c65f04..eefa9df 100644 --- a/src/pdf.rs +++ b/src/pdf.rs @@ -921,6 +921,38 @@ fn font_index(bold: bool, italic: bool, mono: bool) -> usize { /// via `units_per_em`. Codepoints with no glyph in the font contribute the /// .notdef advance (typically a small box), matching what the PDF will /// actually render. +/// Total advance of one wrapped line of runs, in EMU, honouring each run's +/// bold/italic. Used to offset table cells for center/right alignment. +fn runs_width_emu(fonts: &PdfFonts, line: &[Run], size_centipt: u32, base_bold: bool) -> u32 { + let size_pt = size_centipt as f32 / 100.0; + let w: f32 = line + .iter() + .map(|r| { + let idx = font_index(base_bold || r.bold, r.italic, r.code); + text_width_pt(fonts, &r.text, idx, size_pt) + }) + .sum(); + (w * EMU_PER_PT) as u32 +} + +/// Left x (EMU) at which to start a cell line of width `line_w` so it sits +/// left / centre / right within a column, per the GFM alignment. +fn aligned_cell_x( + align: Option, + col_left: u32, + col_w: u32, + pad_x: u32, + line_w: u32, +) -> u32 { + match align { + Some(crate::ir::ColumnAlign::Center) => col_left + col_w.saturating_sub(line_w) / 2, + Some(crate::ir::ColumnAlign::Right) => { + col_left + col_w.saturating_sub(pad_x).saturating_sub(line_w) + } + _ => col_left + pad_x, + } +} + fn text_width_pt(fonts: &PdfFonts, text: &str, font_idx: usize, size_pt: f32) -> f32 { let mut total = 0.0_f32; for c in text.chars() { @@ -1035,6 +1067,15 @@ fn record_glyphs_from_hex(set: &mut std::collections::HashSet, hex: &str) { /// needed by the /ToUnicode CMap builder. Returns `Err` for fonts the /// subsetter can't handle (e.g. TTC files with no face at index 0); /// callers should fall back to the original bytes + an identity remapper. +/// True when the sfnt carries PostScript/CFF outlines rather than TrueType +/// (`glyf`) ones. CFF-flavoured OpenType begins with the `OTTO` magic; plain +/// TrueType uses `0x00010000` or `true`. This decides the PDF font structure: +/// CFF needs a `CIDFontType0` descendant + `FontFile3`, while `glyf` uses +/// `CIDFontType2` + `FontFile2`. The bundled DejaVu faces are all `glyf`. +fn font_has_cff_outlines(bytes: &[u8]) -> bool { + bytes.starts_with(b"OTTO") +} + fn subset_font( ttf: &[u8], used: &std::collections::HashSet, @@ -1507,17 +1548,34 @@ impl PdfWriter { fn write_fonts(&mut self, fonts: &PdfFonts, used: &[std::collections::HashSet]) { for i in 0..fonts.face_count() { let face_metrics = &fonts.metrics[i]; + let is_cff = font_has_cff_outlines(&fonts.bytes[i]); let cidfont_id = self.alloc_id(); let descriptor_id = self.alloc_id(); let fontfile_id = self.alloc_id(); let tounicode_id = self.alloc_id(); - let cidtogid_id = self.alloc_id(); - let (subset, remapper) = match subset_font(&fonts.bytes[i], &used[i]) { - Ok(v) => v, - Err(_) => { - let all: Vec = (0..face_metrics.num_glyphs).collect(); - let identity = subsetter::GlyphRemapper::new_from_glyphs_sorted(&all); - (fonts.bytes[i].clone(), identity) + // CIDToGIDMap is a CIDFontType2-only construct; CFF descendants + // (CIDFontType0) resolve CID→glyph through the font itself, so we + // neither allocate nor emit the stream for them. Allocating it + // only on the glyf path keeps the default (DejaVu) output and + // object numbering byte-for-byte unchanged. + let cidtogid_id = if is_cff { None } else { Some(self.alloc_id()) }; + // glyf faces are subset to the glyphs actually used (dense GIDs + + // a CIDToGIDMap translating original→subset). For CFF/OpenType we + // embed the full program and keep CID == original GID: the + // Identity-H text streams already carry original GIDs and + // CIDFontType0 offers no map to translate them, so subsetting + // would require rewriting every Tj literal. The trade-off is a + // larger embed for custom OTF faces only. + let (subset, remapper): (Vec, Option) = if is_cff { + (fonts.bytes[i].clone(), None) + } else { + match subset_font(&fonts.bytes[i], &used[i]) { + Ok((bytes, remapper)) => (bytes, Some(remapper)), + Err(_) => { + let all: Vec = (0..face_metrics.num_glyphs).collect(); + let identity = subsetter::GlyphRemapper::new_from_glyphs_sorted(&all); + (fonts.bytes[i].clone(), Some(identity)) + } } }; let ttf_bytes: &[u8] = ⊂ @@ -1557,13 +1615,23 @@ impl PdfWriter { } widths.push(']'); self.start_object(cidfont_id); + let cid_subtype = if is_cff { + "CIDFontType0" + } else { + "CIDFontType2" + }; + let cidtogid_entry = match cidtogid_id { + Some(id) => format!(" /CIDToGIDMap {id} 0 R"), + None => String::new(), + }; let cid_body = format!( - "<< /Type /Font /Subtype /CIDFontType2 /BaseFont /{name} \ + "<< /Type /Font /Subtype /{subtype} /BaseFont /{name} \ /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> \ - /FontDescriptor {desc} 0 R /CIDToGIDMap {ctgm} 0 R /W {w} >>", + /FontDescriptor {desc} 0 R{ctgm} /W {w} >>", + subtype = cid_subtype, name = ps_name, desc = descriptor_id, - ctgm = cidtogid_id, + ctgm = cidtogid_entry, w = widths, ); self.buf.extend_from_slice(cid_body.as_bytes()); @@ -1591,11 +1659,13 @@ impl PdfWriter { flags |= 64; // Italic } self.start_object(descriptor_id); + // CFF outlines are referenced via FontFile3; TrueType via FontFile2. + let fontfile_key = if is_cff { "FontFile3" } else { "FontFile2" }; let desc_body = format!( "<< /Type /FontDescriptor /FontName /{name} /Flags {flags} \ /FontBBox [{bx0} {by0} {bx1} {by1}] /ItalicAngle {ia} \ /Ascent {asc} /Descent {dsc} /CapHeight {cap} /StemV 80 \ - /FontFile2 {file} 0 R >>", + /{fontfile_key} {file} 0 R >>", name = ps_name, flags = flags, bx0 = bbox.0, @@ -1611,14 +1681,24 @@ impl PdfWriter { self.buf.extend_from_slice(desc_body.as_bytes()); self.end_object(); - // 4) FontFile2 stream — the .ttf bytes, FlateDecode compressed. + // 4) Embedded font program, FlateDecode compressed. TrueType goes + // in a FontFile2 stream carrying /Length1 (the uncompressed + // sfnt size); CFF/OpenType goes in a FontFile3 stream tagged + // /Subtype /OpenType (a complete OpenType program). let compressed = deflate(ttf_bytes); self.start_object(fontfile_id); - let header = format!( - "<< /Length {len} /Length1 {orig} /Filter /FlateDecode >>\nstream\n", - len = compressed.len(), - orig = ttf_bytes.len(), - ); + let header = if is_cff { + format!( + "<< /Length {len} /Subtype /OpenType /Filter /FlateDecode >>\nstream\n", + len = compressed.len(), + ) + } else { + format!( + "<< /Length {len} /Length1 {orig} /Filter /FlateDecode >>\nstream\n", + len = compressed.len(), + orig = ttf_bytes.len(), + ) + }; self.buf.extend_from_slice(header.as_bytes()); self.buf.extend_from_slice(&compressed); self.buf.extend_from_slice(b"\nendstream"); @@ -1648,27 +1728,30 @@ impl PdfWriter { // 6) CIDToGIDMap — binary stream of u16-BE entries, one per // possible CID. `map[orig_gid] = subset_gid`. PDF reads this // to know which glyph in the *subset* font corresponds to the - // CID it found in the Tj literal. - let max_orig = used[i].iter().copied().max().unwrap_or(0); - let map_len = (max_orig as usize + 1) * 2; - let mut map_bytes = vec![0u8; map_len]; - for &orig_gid in &used[i] { - if let Some(new_gid) = remapper.get(orig_gid) { - let off = orig_gid as usize * 2; - map_bytes[off] = (new_gid >> 8) as u8; - map_bytes[off + 1] = (new_gid & 0xFF) as u8; + // CID it found in the Tj literal. Emitted only on the glyf path; + // CFF descendants (CIDFontType0) have no CIDToGIDMap. + if let (Some(cidtogid_id), Some(remapper)) = (cidtogid_id, remapper.as_ref()) { + let max_orig = used[i].iter().copied().max().unwrap_or(0); + let map_len = (max_orig as usize + 1) * 2; + let mut map_bytes = vec![0u8; map_len]; + for &orig_gid in &used[i] { + if let Some(new_gid) = remapper.get(orig_gid) { + let off = orig_gid as usize * 2; + map_bytes[off] = (new_gid >> 8) as u8; + map_bytes[off + 1] = (new_gid & 0xFF) as u8; + } } + let map_compressed = deflate(&map_bytes); + self.start_object(cidtogid_id); + let header = format!( + "<< /Length {len} /Filter /FlateDecode >>\nstream\n", + len = map_compressed.len(), + ); + self.buf.extend_from_slice(header.as_bytes()); + self.buf.extend_from_slice(&map_compressed); + self.buf.extend_from_slice(b"\nendstream"); + self.end_object(); } - let map_compressed = deflate(&map_bytes); - self.start_object(cidtogid_id); - let header = format!( - "<< /Length {len} /Filter /FlateDecode >>\nstream\n", - len = map_compressed.len(), - ); - self.buf.extend_from_slice(header.as_bytes()); - self.buf.extend_from_slice(&map_compressed); - self.buf.extend_from_slice(b"\nendstream"); - self.end_object(); } } @@ -2007,12 +2090,18 @@ impl<'a> SlideRenderer<'a> { size_pt: f32, color_hex: &str, italic: bool, + bold: bool, ) { if text.trim().is_empty() || !x_pt.is_finite() || !baseline_pt.is_finite() { return; } let (r, g, b) = hex_to_rgb_f(color_hex); - let font_idx = if italic { FONT_HELV_OBL } else { FONT_HELV }; + let font_idx = match (italic, bold) { + (false, false) => FONT_HELV, + (true, false) => FONT_HELV_OBL, + (false, true) => FONT_HELV_BOLD, + (true, true) => FONT_HELV_BOLD_OBL, + }; let runs = glyph_hex_runs(self.fonts, text, font_idx, size_pt.max(1.0)); let mut cur_x = x_pt; for (face, hex, adv) in runs { @@ -2043,7 +2132,13 @@ impl<'a> SlideRenderer<'a> { ) { for draw in &layout.draws { match draw { - crate::math::MathLayoutDraw::Text { x, y, size, text } => { + crate::math::MathLayoutDraw::Text { + x, + y, + size, + text, + bold, + } => { let (x_pt, baseline_pt) = self.math_local_to_pdf_pt(origin_x_pt, top_y_pt, scale, *x, *y); self.text_at_baseline_pt( @@ -2053,6 +2148,7 @@ impl<'a> SlideRenderer<'a> { size * scale, color_hex, true, + *bold, ); } crate::math::MathLayoutDraw::Line { @@ -2292,7 +2388,15 @@ impl<'a> SlideRenderer<'a> { _ => { let (x_pt, baseline_pt) = self.math_local_to_pdf_pt(origin_x_pt, top_y_pt, scale, x, y + height * 0.82); - self.text_at_baseline_pt(x_pt, baseline_pt, token, height * scale, color_hex, true); + self.text_at_baseline_pt( + x_pt, + baseline_pt, + token, + height * scale, + color_hex, + true, + false, + ); } } } @@ -2306,6 +2410,36 @@ impl<'a> SlideRenderer<'a> { (pt * 1.25 * EMU_PER_PT) as u32 } + /// Largest title size (≤ `base`, in centipt) at which `text` wraps within + /// `max_w_emu` and the wrapped block fits inside `max_h_emu`. Stops long + /// hero titles / section dividers from overflowing the slide and footer. + fn fit_hero_size(&self, text: &str, base: u32, max_w_emu: u32, max_h_emu: u32) -> u32 { + let font_idx = font_index(true, false, false); + let max_w_pt = self.pt(max_w_emu); + let mut size = base; + for _ in 0..12 { + let pt = size as f32 / 100.0; + let lines = + if max_w_pt <= 0.0 || text_width_pt(self.fonts, text, font_idx, pt) <= max_w_pt { + 1 + } else { + wrap_text_simple(self.fonts, text, font_idx, pt, max_w_pt) + .len() + .max(1) + }; + let block_h = lines as u32 * Self::line_h_emu(size); + if block_h <= max_h_emu || size <= 1400 { + break; + } + // Shrink toward the height target; sqrt because a smaller font both + // shortens each line and fits more words per line. + let ratio = (max_h_emu as f32 / block_h as f32).sqrt(); + let next = ((size as f32 * ratio).floor() as u32).max(1400); + size = if next >= size { size - 100 } else { next }; + } + size + } + /// Wrap a vector of runs into lines for the given width and emit them. /// Returns the y position after the last line. fn paragraph( @@ -2582,15 +2716,23 @@ impl<'a> SlideRenderer<'a> { let margin_x_pt = self.pt(margin_x); let margin_y_pt = self.pt(margin_y); let base_size = 28.0_f32; - let gap = base_size * 0.035; - - let raw_layouts = math_markup_line_layouts(lines); + let gap = base_size * 0.24; + + // Measure against the face math is actually drawn in (FONT_HELV, the + // sans regular slot — which `--font` replaces) so reserved widths stay + // aligned with the rendered glyphs. + let metrics = PdfMathMetrics { + fonts: self.fonts, + font_idx: FONT_HELV, + }; + let raw_layouts = math_markup_line_layouts(lines, &metrics); let layouts = fit_packed_math_markup_line_layouts( lines, raw_layouts, base_size, gap, max_w_pt / max_h_pt, + &metrics, ); let (max_line_w, total_h) = math_markup_metrics(&layouts, base_size, gap); let scale_w = max_w_pt / max_line_w; @@ -2634,11 +2776,18 @@ impl<'a> SlideRenderer<'a> { 600000, &theme.accent.clone(), ); + // Shrink the hero size if needed so a long title fits between + // its top and the footer/subtitle region instead of running + // off the bottom and overprinting the author/date. + let title_top = h / 2 - 1600000; + let title_max_h = (h.saturating_sub(1_400_000)).saturating_sub(title_top); + let hero = + self.fit_hero_size(&slide.title, theme.hero_size, w - 1200000, title_max_h); let title_lines = self.text_line( 800000, - h / 2 - 1600000, + title_top, &slide.title, - theme.hero_size, + hero, &theme.title_color.clone(), true, false, @@ -2648,8 +2797,7 @@ impl<'a> SlideRenderer<'a> { ); // Push subtitle down by the number of extra title lines so // a wrapped 2-line title doesn't overlap the subtitle. - let extra = - (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(theme.hero_size); + let extra = (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(hero); if let Some(sub) = subtitle { let sub_size = if theme.portrait { 1800 } else { 2400 }; self.text_line( @@ -2697,11 +2845,14 @@ impl<'a> SlideRenderer<'a> { w - 1500000, ); } + let studio_max_h = (h * 80 / 100).saturating_sub(h / 2 - 1000000); + let hero = + self.fit_hero_size(&slide.title, theme.hero_size, w - 1500000, studio_max_h); let title_lines = self.text_line( 900000, h / 2 - 1000000, &slide.title, - theme.hero_size, + hero, &theme.title_color.clone(), false, true, @@ -2709,8 +2860,7 @@ impl<'a> SlideRenderer<'a> { TextAlign::Left, w - 1500000, ); - let extra = - (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(theme.hero_size); + let extra = (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(hero); if let Some(sub) = subtitle { let sub_size = if theme.portrait { 1700 } else { 2200 }; self.text_line( @@ -2768,11 +2918,13 @@ impl<'a> SlideRenderer<'a> { } let title_x = sidebar + 600000; let title_w = w - title_x - 600000; + let frame_max_h = (h * 82 / 100).saturating_sub(h / 2 - 1100000); + let hero = self.fit_hero_size(&slide.title, theme.hero_size, title_w, frame_max_h); let title_lines = self.text_line( title_x, h / 2 - 1100000, &slide.title, - theme.hero_size, + hero, &theme.title_color.clone(), true, false, @@ -2780,8 +2932,7 @@ impl<'a> SlideRenderer<'a> { TextAlign::Left, title_w, ); - let extra = - (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(theme.hero_size); + let extra = (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(hero); if let Some(sub) = subtitle { let sub_size = if theme.portrait { 1700 } else { 2200 }; self.text_line( @@ -2806,7 +2957,15 @@ impl<'a> SlideRenderer<'a> { // title naturally grows upward into the block. Pre-compute // the line count so we can place the title's baseline to // keep its first line inside the block regardless. - let hero_pt = theme.hero_size as f32 / 100.0; + // Shrink the title so it can't grow up and out of the top of + // the accent block (which would drop it off the slide). + let hero = self.fit_hero_size( + &slide.title, + theme.hero_size, + w - 2 * pad, + block_h.saturating_sub(pad + 1_400_000), + ); + let hero_pt = hero as f32 / 100.0; let title_lines = { let font_idx = font_index(true, false, false); let max_w_pt = self.pt(w - 2 * pad); @@ -2818,13 +2977,12 @@ impl<'a> SlideRenderer<'a> { .len() } }; - let title_extra = - (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(theme.hero_size); + let title_extra = (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(hero); self.text_line( pad, block_h - 1400000 - pad - title_extra, &slide.title, - theme.hero_size, + hero, &theme.on_accent.clone(), true, false, @@ -2884,11 +3042,17 @@ impl<'a> SlideRenderer<'a> { 60000, &theme.section_text.clone(), ); + // Shrink to fit so a long section title doesn't overflow the + // bottom edge (where it would be silently clipped/lost). + let sec_top = h / 2 - 200000; + let sec_max_h = (h.saturating_sub(500_000)).saturating_sub(sec_top); + let sec_size = + self.fit_hero_size(&slide.title, theme.hero_size, w - 1600000, sec_max_h); self.text_line( 800000, - h / 2 - 200000, + sec_top, &slide.title, - theme.hero_size, + sec_size, &theme.section_text.clone(), true, false, @@ -3041,8 +3205,29 @@ impl<'a> SlideRenderer<'a> { 720000 }; + // Measure how many lines the title wraps to so a long heading expands + // the title band instead of overprinting the underline rule and body. + let title_max_w = if matches!(layout.kind, LayoutKind::Bold) { + w - 2 * base_margin + } else { + content_w + }; + let title_lines = { + let title_pt = theme.title_size as f32 / 100.0; + let font_idx = font_index(true, false, false); + let max_w_pt = self.pt(title_max_w); + let total_w = text_width_pt(self.fonts, &slide.title, font_idx, title_pt); + if total_w <= max_w_pt || max_w_pt <= 0.0 { + 1 + } else { + wrap_text_simple(self.fonts, &slide.title, font_idx, title_pt, max_w_pt).len() + } + }; + let title_extra = + (title_lines.saturating_sub(1) as u32) * Self::line_h_emu(theme.title_size); + if matches!(layout.kind, LayoutKind::Bold) { - let block_h = title_h + 240000; + let block_h = title_h + 240000 + title_extra; self.rect(0, 0, w, title_y + block_h, &theme.accent.clone()); self.text_line( base_margin, @@ -3072,7 +3257,7 @@ impl<'a> SlideRenderer<'a> { } let underline_y = if matches!(layout.kind, LayoutKind::Clean) { - let y = title_y + title_h + 30000; + let y = title_y + title_h + title_extra + 30000; self.rect( content_x, y + 18000, @@ -3089,7 +3274,7 @@ impl<'a> SlideRenderer<'a> { ); y } else { - title_y + title_h + title_y + title_h + title_extra }; let content_y_start = underline_y @@ -3228,8 +3413,12 @@ impl<'a> SlideRenderer<'a> { y = self.render_quote(paras, x, y, w); y += 80000; } - Block::Table { headers, rows } => { - y = self.render_table(headers, rows, x, y, w); + Block::Table { + headers, + rows, + aligns, + } => { + y = self.render_table(headers, rows, aligns, x, y, w); y += 80000; } Block::Columns { left, right } => { @@ -3303,7 +3492,13 @@ impl<'a> SlideRenderer<'a> { for c in &mut ordered_counters[lvl + 1..] { *c = 0; } - let bullet = if item.ordered { + // Task-list items carry their own ☐/☑ marker in the runs, so the + // normal bullet is suppressed (and its gutter collapsed) to avoid + // drawing both a bullet and a checkbox. + let is_task = item.is_task(); + let bullet = if is_task { + String::new() + } else if item.ordered { format!("{}.", ordered_counters[lvl]) } else { match lvl { @@ -3324,7 +3519,11 @@ impl<'a> SlideRenderer<'a> { bullet_pt, ); let bullet_w_emu = (bullet_w_pt * EMU_PER_PT) as u32; - let gutter_emu = bullet_w_emu.max(180_000) + 120_000; + let gutter_emu = if is_task { + 0 + } else { + bullet_w_emu.max(180_000) + 120_000 + }; self.text_line( bullet_x, y, @@ -3703,6 +3902,7 @@ impl<'a> SlideRenderer<'a> { &mut self, headers: &[Vec], rows: &[Vec>], + aligns: &[crate::ir::ColumnAlign], x: u32, y_start: u32, w: u32, @@ -3931,9 +4131,17 @@ impl<'a> SlideRenderer<'a> { &theme.accent.clone(), ); for (i, line) in header_wrapped[c].iter().enumerate() { + let lw = runs_width_emu(self.fonts, line, header_size, true); + let tx = aligned_cell_x( + aligns.get(c).copied(), + x + col_x[c], + col_widths[c], + pad_x, + lw, + ); self.text_runs_line( line, - x + col_x[c] + pad_x, + tx, y_start + pad_y + i as u32 * line_h_header, header_size, &theme.on_accent.clone(), @@ -3956,9 +4164,17 @@ impl<'a> SlideRenderer<'a> { for c in 0..cols { self.rect(x + col_x[c], ry, col_widths[c], rh, &bg); for (l, line) in row_cells[c].iter().enumerate() { + let lw = runs_width_emu(self.fonts, line, body_size, false); + let tx = aligned_cell_x( + aligns.get(c).copied(), + x + col_x[c], + col_widths[c], + pad_x, + lw, + ); self.text_runs_line( line, - x + col_x[c] + pad_x, + tx, ry + pad_y + l as u32 * line_h_body, body_size, &theme.body_color.clone(), @@ -4150,14 +4366,44 @@ enum TextAlign { Right, } -fn math_markup_line_layouts(lines: &[String]) -> Vec> { +/// Glyph-advance source for the math layout engine backed by the PDF's +/// embedded faces. Measuring each glyph in the face that will actually render +/// it (via [`text_width_pt`], the same fallback selection the writer uses) +/// keeps the reserved layout width equal to the drawn advance even when +/// `--font` swaps DejaVu for a brand face. A non-positive advance (combining +/// marks) defers to the built-in DejaVu table. +struct PdfMathMetrics<'a> { + fonts: &'a PdfFonts, + font_idx: usize, +} + +impl crate::math::GlyphMetrics for PdfMathMetrics<'_> { + fn advance_em(&self, ch: char, bold: bool) -> f32 { + // Bold text is drawn in the bold sans face, which has its own + // advances — measure that face so a bold run reserves the right room. + let font_idx = if bold { FONT_HELV_BOLD } else { self.font_idx }; + let mut buf = [0u8; 4]; + let s = ch.encode_utf8(&mut buf); + let w = text_width_pt(self.fonts, s, font_idx, 1.0); + if w > 0.0 { + w + } else { + crate::math::DejaVuMetrics.advance_em(ch, bold) + } + } +} + +fn math_markup_line_layouts( + lines: &[String], + metrics: &dyn crate::math::GlyphMetrics, +) -> Vec> { lines .iter() .map(|line| { if line.trim().is_empty() { None } else { - Some(crate::math::layout_markup_text(line, 100)) + Some(crate::math::layout_markup_text_with(line, 100, metrics)) } }) .collect() @@ -4166,6 +4412,7 @@ fn math_markup_line_layouts(lines: &[String]) -> Vec Vec> { let mut out = Vec::new(); let mut current = String::new(); @@ -4184,12 +4431,12 @@ fn pack_math_markup_line_layouts( if current.is_empty() { current.push_str(trimmed); - current_layout = Some(crate::math::layout_markup_text(¤t, 100)); + current_layout = Some(crate::math::layout_markup_text_with(¤t, 100, metrics)); continue; } let candidate = format!("{current} {trimmed}"); - let candidate_layout = crate::math::layout_markup_text(&candidate, 100); + let candidate_layout = crate::math::layout_markup_text_with(&candidate, 100, metrics); if candidate_layout.width <= target_width { current = candidate; current_layout = Some(candidate_layout); @@ -4199,7 +4446,7 @@ fn pack_math_markup_line_layouts( } current.clear(); current.push_str(trimmed); - current_layout = Some(crate::math::layout_markup_text(¤t, 100)); + current_layout = Some(crate::math::layout_markup_text_with(¤t, 100, metrics)); } } @@ -4215,6 +4462,7 @@ fn fit_packed_math_markup_line_layouts( base_size: f32, gap: f32, page_ratio: f32, + metrics: &dyn crate::math::GlyphMetrics, ) -> Vec> { let (raw_max_line_w, raw_total_h) = math_markup_metrics(&raw_layouts, base_size, gap); let raw_ratio = raw_max_line_w / raw_total_h.max(1.0); @@ -4230,7 +4478,7 @@ fn fit_packed_math_markup_line_layouts( for _ in 0..9 { let target = (low + high) / 2.0; - let packed = pack_math_markup_line_layouts(lines, target); + let packed = pack_math_markup_line_layouts(lines, target, metrics); let (packed_w, packed_h) = math_markup_metrics(&packed, base_size, gap); let ratio = packed_w / packed_h.max(1.0); let err = (ratio - desired_ratio).abs(); @@ -4374,3 +4622,26 @@ fn author_date(author: Option<&str>, date: Option<&str>) -> Option { Some(s) } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn cff_outline_detection_picks_the_right_font_program() { + // CFF-flavoured OpenType (the `OTTO` magic) must take the + // CIDFontType0 / FontFile3 path; TrueType-flavoured sfnts the + // CIDFontType2 / FontFile2 path. + assert!(font_has_cff_outlines(b"OTTO\x00\x04\x00\x80")); + assert!(!font_has_cff_outlines(&[0x00, 0x01, 0x00, 0x00])); // TrueType + assert!(!font_has_cff_outlines(b"true")); // legacy TrueType magic + // Every bundled DejaVu face is TrueType (glyf) — the default output + // must stay on the FontFile2 path. + for face in crate::font::FONTS { + assert!( + !font_has_cff_outlines(face), + "bundled faces are expected to be TrueType", + ); + } + } +} diff --git a/src/pptx.rs b/src/pptx.rs index fe70f7a..4439070 100644 --- a/src/pptx.rs +++ b/src/pptx.rs @@ -2248,7 +2248,7 @@ fn render_blocks( )); *id += 1; } - Block::Table { headers, rows } => { + Block::Table { headers, rows, .. } => { shapes.push_str(&render_table(headers, rows, theme, x, y, w, h, id)); } Block::Columns { left, right } => { @@ -2392,7 +2392,7 @@ fn block_height_emu(b: &Block, w: u32, theme: &Theme, imgs: &Imgs) -> u32 { .sum::() + 120000 } - Block::Table { headers, rows } => table_height_emu(headers, rows, w, theme), + Block::Table { headers, rows, .. } => table_height_emu(headers, rows, w, theme), Block::Columns { left, right } => { let gap: u32 = 280000; let half = w.saturating_sub(gap) / 2; @@ -2722,7 +2722,11 @@ fn render_list(items: &[ListItem], theme: &Theme) -> String { let lvl = item.level.min(8) as u32; let mar_l = 228600 + lvl * 285750; let indent = -228600_i32; - let bullet = if item.ordered { + let bullet = if item.is_task() { + // Task items carry their own ☐/☑ marker in the runs, so suppress + // the native bullet to avoid showing both. + r#""#.to_string() + } else if item.ordered { r#""#.to_string() } else { let ch = match lvl { diff --git a/src/render_plan.rs b/src/render_plan.rs index b500329..df22266 100644 --- a/src/render_plan.rs +++ b/src/render_plan.rs @@ -424,7 +424,7 @@ fn block_plan(index: usize, block: &Block, context: WeightContext, path: String) Vec::new(), ) } - Block::Table { headers, rows } => ( + Block::Table { headers, rows, .. } => ( "table", format!("{} column(s), {} row(s)", headers.len(), rows.len()), BlockMetrics { @@ -564,7 +564,7 @@ fn ir_block(block: &Block) -> IrBlock { .collect(), ..IrBlock::empty() }, - Block::Table { headers, rows } => IrBlock { + Block::Table { headers, rows, .. } => IrBlock { kind: "table".to_string(), headers: vec![headers.iter().map(|cell| runs_text(cell)).collect()], rows: rows diff --git a/src/svg.rs b/src/svg.rs index 4f250d6..3065e97 100644 --- a/src/svg.rs +++ b/src/svg.rs @@ -596,7 +596,11 @@ fn render_block( } Ok(yy) } - Block::Table { headers, rows } => render_table(ctx, headers, rows, x, y, width), + Block::Table { + headers, + rows, + aligns, + } => render_table(ctx, headers, rows, aligns, x, y, width), Block::ColumnBreak => Ok(y), Block::Columns { left, right } => { let gap = 22.0; @@ -641,6 +645,9 @@ fn render_list( *counter = 0; } let indent = level as f32 * 19.0; + // Task-list items carry their own ☐/☑ marker in the runs, so suppress + // the bullet and start the text where the bullet would have gone. + let is_task = item.is_task(); let marker = if item.ordered { format!("{}.", counters[level].max(1)) } else { @@ -651,23 +658,27 @@ fn render_list( } else { x + indent }; - let text_x = if ctx.rtl { + let text_x = if is_task { + marker_x + } else if ctx.rtl { marker_x - 20.0 } else { marker_x + 20.0 }; let anchor = if ctx.rtl { "end" } else { "start" }; - write!( - ctx.out, - r##"{}"##, - marker_x, - y, - escape_attr(svg_font_family(&theme.body_font)), - body_size, - theme.accent, - anchor, - escape_xml(&marker) - )?; + if !is_task { + write!( + ctx.out, + r##"{}"##, + marker_x, + y, + escape_attr(svg_font_family(&theme.body_font)), + body_size, + theme.accent, + anchor, + escape_xml(&marker) + )?; + } y = draw_runs_plain( ctx.out, &item.runs, @@ -865,7 +876,7 @@ fn render_full_page_math_markup( let max_w = (w - margin_x * 2.0).max(1.0); let max_h = (h - margin_y * 2.0).max(1.0); let base_size = 28.0_f32; - let gap = base_size * 0.035; + let gap = base_size * 0.24; let raw_layouts = svg_math_line_layouts(lines); let layouts = fit_svg_math_line_layouts(lines, raw_layouts, base_size, gap, max_w / max_h); let (max_line_w, total_h) = svg_math_metrics(&layouts, base_size, gap); @@ -901,13 +912,20 @@ fn draw_svg_math_layout( ) -> Result<()> { for draw in &layout.draws { match draw { - crate::math::MathLayoutDraw::Text { x, y, size, text } => { + crate::math::MathLayoutDraw::Text { + x, + y, + size, + text, + bold, + } => { if text.trim().is_empty() { continue; } + let weight = if *bold { r#" font-weight="bold""# } else { "" }; write!( out, - r##"{}"##, + r##"{}"##, origin_x + x * scale, top_y + y * scale, font, @@ -1097,6 +1115,7 @@ fn render_table( ctx: &mut RenderCtx<'_>, headers: &[Vec], rows: &[Vec>], + aligns: &[crate::ir::ColumnAlign], x: f32, y: f32, width: f32, @@ -1109,6 +1128,15 @@ fn render_table( .max(1); let col_w = width / cols as f32; let row_h = body_size * 1.65; + // (text-anchor, x) for a column's cell text, honouring GFM alignment. + let cell_anchor = |idx: usize| -> (&'static str, f32) { + let left = x + idx as f32 * col_w; + match aligns.get(idx) { + Some(crate::ir::ColumnAlign::Center) => ("middle", left + col_w / 2.0), + Some(crate::ir::ColumnAlign::Right) => ("end", left + col_w - 6.0), + _ => ("start", left + 6.0), + } + }; let mut yy = y; write!( ctx.out, @@ -1116,7 +1144,7 @@ fn render_table( x, yy, width, row_h, theme.accent_soft, theme.divider )?; for (idx, cell) in headers.iter().enumerate() { - let cx = x + idx as f32 * col_w + 6.0; + let (anchor, cx) = cell_anchor(idx); draw_runs_plain( ctx.out, cell, @@ -1130,7 +1158,7 @@ fn render_table( font: &theme.body_font, weight: "700", style: "normal", - anchor: "start", + anchor, }, )?; } @@ -1148,7 +1176,7 @@ fn render_table( x, yy, width, row_h, bg, theme.divider )?; for (idx, cell) in row.iter().enumerate() { - let cx = x + idx as f32 * col_w + 6.0; + let (anchor, cx) = cell_anchor(idx); draw_runs_plain( ctx.out, cell, @@ -1162,7 +1190,7 @@ fn render_table( font: &theme.body_font, weight: "400", style: "normal", - anchor: "start", + anchor, }, )?; } diff --git a/tests/renderers.rs b/tests/renderers.rs index fbded4e..c69cba1 100644 --- a/tests/renderers.rs +++ b/tests/renderers.rs @@ -290,6 +290,142 @@ fn content_page_count(slides: &[md2any::ir::Slide]) -> usize { .count() } +#[test] +fn table_column_alignment_is_captured() { + let md = "---\n---\n## T\n| L | C | R |\n|:--|:-:|--:|\n| a | b | c |\n"; + let (front, body) = md2any::front_matter::extract(md); + let slides = md2any::parser::parse(&body, &front, "test"); + let aligns = slides + .iter() + .flat_map(|s| &s.blocks) + .find_map(|b| match b { + md2any::ir::Block::Table { aligns, .. } => Some(aligns.clone()), + _ => None, + }) + .expect("table present"); + use md2any::ir::ColumnAlign::*; + assert_eq!( + aligns, + vec![Left, Center, Right], + "alignment from delimiter row" + ); +} + +#[test] +fn tabs_in_code_expand_to_spaces() { + let md = "---\n---\n## C\n```c\n\tx;\n```\n"; + let (front, body) = md2any::front_matter::extract(md); + let slides = md2any::parser::parse(&body, &front, "test"); + let line = slides + .iter() + .flat_map(|s| &s.blocks) + .find_map(|b| match b { + md2any::ir::Block::CodeBlock { lines, .. } => lines.first().cloned(), + _ => None, + }) + .expect("code block present"); + assert!(!line.contains('\t'), "tabs should be expanded: {line:?}"); + assert!(line.starts_with(" x"), "tab -> 4 spaces: {line:?}"); +} + +#[test] +fn inline_svg_becomes_an_image_block() { + let md = "---\n---\n## S\n\n"; + let (front, body) = md2any::front_matter::extract(md); + let slides = md2any::parser::parse(&body, &front, "test"); + let has_svg_image = slides.iter().flat_map(|s| &s.blocks).any(|b| { + matches!(b, md2any::ir::Block::Image { src, .. } if src.starts_with("data:image/svg+xml")) + }); + assert!( + has_svg_image, + "inline should become a data-URI image block" + ); +} + +#[test] +fn oversize_image_width_is_clamped_not_leaked() { + // `{width=150%}` must clamp to 100, not fall through and leak the literal + // attribute text into the slide body. + let md = "---\n---\n## Img\n![pic](examples/sample.png){width=150%}\n"; + let (front, body) = md2any::front_matter::extract(md); + let slides = md2any::parser::parse(&body, &front, "test"); + let mut saw_image = false; + for slide in &slides { + for block in &slide.blocks { + match block { + md2any::ir::Block::Image { width_pct, .. } => { + saw_image = true; + assert_eq!(*width_pct, Some(100), "width should clamp to 100"); + } + md2any::ir::Block::Paragraph(runs) => { + let text: String = runs.iter().map(|r| r.text.as_str()).collect(); + assert!( + !text.contains("width="), + "literal width attribute leaked into body: {text:?}" + ); + } + _ => {} + } + } + } + assert!(saw_image, "image block should be present"); +} + +#[test] +fn fence_form_columns_split_left_and_right() { + // The fence form `::: … ::: … :::` (leading + trailing markers) must produce + // a two-column block with content on BOTH sides, not dump everything right. + let md = "---\n---\n## Cols\n\n:::\n\nLeft side.\n\n:::\n\nRight side.\n\n:::\n"; + let (front, body) = md2any::front_matter::extract(md); + let theme = md2any::theme::Theme::resolve("light", "16:9", None).unwrap(); + let layout = md2any::layout::Layout::resolve("clean").unwrap(); + let slides = md2any::parser::parse(&body, &front, "test"); + let slides = md2any::paginate::paginate_for_layout_with_options( + slides, + &theme, + &layout, + md2any::paginate::PaginationOptions::default(), + ); + let has_balanced_columns = slides.iter().flat_map(|s| &s.blocks).any(|b| { + matches!(b, md2any::ir::Block::Columns { left, right } if !left.is_empty() && !right.is_empty()) + }); + assert!( + has_balanced_columns, + "fence-form columns should yield a Columns block with non-empty left and right" + ); +} + +#[test] +fn display_math_equation_stays_on_its_heading_slide() { + // A heading + short caption + one display equation must share a single + // slide. Generated math images scale to the content width and render + // short, so they must not carry the full-photo pagination weight that + // would shove the equation onto a "(cont.)" overflow page. + let md = "---\nmath: svg\n---\n\ +## Bayes' Theorem\n\ +How evidence updates belief.\n\n\ +$$ P(A \\mid B) = \\frac{P(B \\mid A)\\,P(A)}{P(B)} $$\n"; + let (front, body) = md2any::front_matter::extract(md); + let theme = md2any::theme::Theme::resolve("light", "16:9", None).unwrap(); + let layout = md2any::layout::Layout::resolve("clean").unwrap(); + let parse_opts = md2any::parser::ParseOptions { + math_mode: md2any::math::MathMode::Svg, + ..Default::default() + }; + let slides = md2any::parser::parse_with_options(&body, &front, "test", parse_opts); + let slides = md2any::paginate::paginate_for_layout_with_options( + slides, + &theme, + &layout, + md2any::paginate::PaginationOptions::default(), + ); + assert_eq!( + content_page_count(&slides), + 1, + "equation should stay with its heading, not split to a (cont.) page" + ); +} + #[test] fn render_plan_json_captures_layout_and_blocks() { let md = "---\ntitle: plan\n---\n# Deck\n## Diagnostics\nParagraph text for diagnostics.\n\n```rust\nfn main() {}\nprintln!(\"hi\");\nprintln!(\"bye\");\nprintln!(\"ok\");\nprintln!(\"done\");\nprintln!(\"end\");\n```\n"; @@ -857,229 +993,7 @@ $$\n"; } #[test] -fn standard_model_lagrangian_stress_fixture_renders() { - fn count_images(blocks: &[md2any::ir::Block]) -> (usize, usize) { - let mut total = 0; - let mut math = 0; - for block in blocks { - match block { - md2any::ir::Block::Image { src, alt, .. } => { - total += 1; - if md2any::math::math_image_meta(src, alt).is_some() { - math += 1; - } - } - md2any::ir::Block::Columns { left, right } => { - let (left_total, left_math) = count_images(left); - let (right_total, right_math) = count_images(right); - total += left_total + right_total; - math += left_math + right_math; - } - _ => {} - } - } - (total, math) - } - - let deck_path = assets().join("examples/standard-model-lagrangian.md"); - let md = std::fs::read_to_string(&deck_path).unwrap(); - let (front, body) = md2any::front_matter::extract(&md); - let theme = md2any::theme::Theme::resolve("light", "16:9", None).unwrap(); - let layout = md2any::layout::Layout::resolve("clean").unwrap(); - let math_mode = match front.math.as_deref() { - Some("svg") => md2any::math::MathMode::Svg, - Some("source") => md2any::math::MathMode::Source, - _ => md2any::math::MathMode::Unicode, - }; - let math_svg = md2any::math::MathSvgOptions { - scale_percent: (front.math_scale.unwrap_or(1.0) * 100.0).round() as u16, - max_height_px: front.math_max_height.map(|h| h.round() as u16), - block_align: match front.math_block_align.as_deref().unwrap_or("center") { - "left" => md2any::math::MathBlockAlign::Left, - "right" => md2any::math::MathBlockAlign::Right, - _ => md2any::math::MathBlockAlign::Center, - }, - }; - let example_dir = deck_path.parent().unwrap().to_path_buf(); - let slides = md2any::parser::parse_with_options( - &body, - &front, - "Standard Model Lagrangian Stress", - md2any::parser::ParseOptions { - math_mode, - math_svg, - include_base_dir: Some(example_dir.clone()), - ..Default::default() - }, - ); - let slides = md2any::paginate::paginate_for_layout(slides, &theme, &layout); - assert!(slides.len() >= 6, "expected a multi-slide stress deck"); - - let (image_count, math_image_count) = slides - .iter() - .map(|slide| count_images(&slide.blocks)) - .fold((0, 0), |acc, item| (acc.0 + item.0, acc.1 + item.1)); - assert!( - image_count >= 7 && math_image_count >= 6, - "expected one reference image plus several generated math images, got {image_count} total and {math_image_count} math" - ); - - let diagnostics = md2any::math::diagnose(&body); - assert!( - !diagnostics - .iter() - .any(|d| d.kind == "unsupported-math-macro"), - "stress fixture should stay inside the supported command subset: {diagnostics:?}" - ); - assert!( - diagnostics.len() <= 24, - "diagnostics should remain bounded for the stress fixture: {diagnostics:?}" - ); - - let pptx = md2any::pptx::write( - &slides, - &theme, - &layout, - "Standard Model Lagrangian Stress", - "tests", - &example_dir, - None, - None, - 0.4, - None, - ) - .unwrap(); - zip_contains(&pptx, &["ppt/presentation.xml", "ppt/media/image1.png"]).unwrap(); - - let odp = md2any::odp::write( - &slides, - &theme, - &layout, - "Standard Model Lagrangian Stress", - "tests", - &example_dir, - None, - None, - 0.4, - None, - ) - .unwrap(); - zip_contains(&odp, &["content.xml"]).unwrap(); - assert!(zip_read(&odp, "content.xml").contains(">() - .join("\n"); - assert!(!svg.contains("image failed"), "{svg}"); - assert!(svg.contains("overflow=\"visible\""), "{svg}"); - let y_values = xml_attr_numbers(&svg, "y"); - assert!( - y_values.iter().all(|y| *y <= 640.0), - "stress fixture should not push SVG elements far past the slide viewport: {y_values:?}" - ); - - let png_files = md2any::svg::write_files( - &slides, - &theme, - &layout, - "Standard Model Lagrangian Stress", - "tests", - &example_dir, - None, - None, - md2any::svg::ImageFormat::Png, - ) - .unwrap(); - assert_eq!(png_files.len(), slides.len()); - assert!(png_files - .iter() - .all(|file| file.bytes.starts_with(b"\x89PNG"))); - assert!( - png_files.iter().any(|file| file.bytes.len() > 600_000), - "reference-image slide should paint embedded raster data, not a blank page" - ); -} - -#[test] -fn standard_model_lagrangian_a4_source_image_fits_single_page() { +fn standard_model_lagrangian_a4_uses_selectable_math_layout() { let deck_path = assets().join("examples/standard-model-lagrangian-a4.md"); let md = std::fs::read_to_string(&deck_path).unwrap(); let (front, body) = md2any::front_matter::extract(&md); @@ -1092,288 +1006,6 @@ fn standard_model_lagrangian_a4_source_image_fits_single_page() { let layout = md2any::layout::Layout::resolve(front.layout.as_deref().unwrap_or("clean")).unwrap(); let example_dir = deck_path.parent().unwrap().to_path_buf(); - let slides = md2any::parser::parse_with_options( - &body, - &front, - "Standard Model Lagrangian A4", - md2any::parser::ParseOptions { - include_base_dir: Some(example_dir.clone()), - ..Default::default() - }, - ); - let slides = md2any::paginate::paginate_for_layout(slides, &theme, &layout); - - assert_eq!(slides.len(), 1, "A4 source page should stay on one slide"); - let Some((src, alt, _)) = slides[0].full_page_image() else { - panic!( - "expected image-full slide with exactly one image: {:?}", - slides[0] - ); - }; - assert_eq!(src, "assets/standard-model-lagrangian-a4.png"); - assert_eq!(alt, "Full Standard Model Lagrangian"); - - let pdf = md2any::pdf::write( - &slides, - &theme, - &layout, - "Standard Model Lagrangian A4", - "tests", - &example_dir, - None, - None, - None, - 0.4, - None, - false, - md2any::pdf::NotesPageSize::Slide, - md2any::pdf::NotesLayout::Auto, - None, - ) - .unwrap(); - assert_eq!(pdf_media_boxes(&pdf), vec![(595, 842)]); - - let pptx = md2any::pptx::write( - &slides, - &theme, - &layout, - "Standard Model Lagrangian A4", - "tests", - &example_dir, - None, - None, - 0.4, - None, - ) - .unwrap(); - zip_contains(&pptx, &["ppt/slides/slide1.xml", "ppt/media/image1.png"]).unwrap(); - let pptx_slide = zip_read(&pptx, "ppt/slides/slide1.xml"); - assert!(pptx_slide.contains(""), "{pptx_slide}"); - assert!(!pptx_slide.contains("PageNum"), "{pptx_slide}"); - - let odp = md2any::odp::write( - &slides, - &theme, - &layout, - "Standard Model Lagrangian A4", - "tests", - &example_dir, - None, - None, - 0.4, - None, - ) - .unwrap(); - let content = zip_read(&odp, "content.xml"); - assert!(content.contains(" 400_000, - "source page should paint the embedded equation image, not a blank page" - ); -} - -#[test] -fn standard_model_lagrangian_selectable_a4_stays_text() { - let deck_path = assets().join("examples/standard-model-lagrangian-selectable-a4.md"); - let md = std::fs::read_to_string(&deck_path).unwrap(); - let (front, body) = md2any::front_matter::extract(&md); - let theme = md2any::theme::Theme::resolve( - front.theme.as_deref().unwrap_or("light"), - front.aspect.as_deref().unwrap_or("16:9"), - None, - ) - .unwrap(); - let layout = - md2any::layout::Layout::resolve(front.layout.as_deref().unwrap_or("clean")).unwrap(); - let example_dir = deck_path.parent().unwrap().to_path_buf(); - let slides = md2any::parser::parse_with_options( - &body, - &front, - "Standard Model Lagrangian Selectable A4", - md2any::parser::ParseOptions { - include_base_dir: Some(example_dir.clone()), - ..Default::default() - }, - ); - let slides = md2any::paginate::paginate_for_layout_with_options( - slides, - &theme, - &layout, - md2any::paginate::PaginationOptions { - break_mode: md2any::paginate::BreakMode::Off, - ..Default::default() - }, - ); - - assert_eq!( - slides.len(), - 1, - "selectable source page should stay one slide" - ); - let Some((lines, _lang)) = slides[0].full_page_code() else { - panic!( - "expected text-full slide with exactly one code block: {:?}", - slides[0] - ); - }; - assert!( - lines.len() >= 70, - "expected dense formula lines: {}", - lines.len() - ); - assert!(lines[0].starts_with("L_SM ="), "{:?}", lines.first()); - - let pdf = md2any::pdf::write( - &slides, - &theme, - &layout, - "Standard Model Lagrangian Selectable A4", - "tests", - &example_dir, - None, - None, - None, - 0.4, - None, - false, - md2any::pdf::NotesPageSize::Slide, - md2any::pdf::NotesLayout::Auto, - None, - ) - .unwrap(); - assert_eq!(pdf_media_boxes(&pdf), vec![(595, 842)]); - let pdf_text = String::from_utf8_lossy(&pdf); - assert!( - !pdf_text.contains("/Subtype /Image"), - "selectable fixture should not embed an image XObject" - ); - assert!( - pdf_text.contains("/ToUnicode"), - "PDF text should keep copy/paste maps" - ); - let positions = pdf_text_positions(&pdf); - assert!( - positions.len() >= lines.len(), - "expected one or more text positions per formula line, got {} for {} lines", - positions.len(), - lines.len() - ); - - let html = String::from_utf8( - md2any::html::write( - &slides, - &theme, - &layout, - "Standard Model Lagrangian Selectable A4", - "tests", - &example_dir, - None, - None, - ) - .unwrap(), - ) - .unwrap(); - assert!(html.contains("slide-content text-full active"), "{html}"); - assert!(html.contains("full-page-text"), "{html}"); - assert!(!html.contains(" Some((headers, rows)), + md2any::ir::Block::Table { headers, rows, .. } => Some((headers, rows)), _ => None, }) .collect::>(); @@ -2132,7 +1764,7 @@ fn table_fit_auto_transposes_compact_portrait_tables() { .iter() .flat_map(|slide| slide.blocks.iter()) .find_map(|block| match block { - md2any::ir::Block::Table { headers, rows } => Some((headers, rows)), + md2any::ir::Block::Table { headers, rows, .. } => Some((headers, rows)), _ => None, }) .expect("expected transposed table"); @@ -2935,6 +2567,7 @@ fn deck_doctor_reports_accessibility_and_structure_warnings() { Block::Table { headers: Vec::new(), rows: vec![vec![vec![Run::plain("cell")]; 4]; 24], + aligns: Vec::new(), }, Block::List(many_items), ], From aa23cafa0e412605a0b59e24dc17d873b3ef3bcb Mon Sep 17 00:00:00 2001 From: JavaPerformance Date: Sun, 14 Jun 2026 14:27:47 +0200 Subject: [PATCH 2/6] examples: add famous-equations deck; consolidate SM Lagrangian source MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add examples/famous-equations.md — a wall of famous equations (Euler, E=mc^2, Lorentz, Schrodinger, Dirac, field equations, Bayes, Boltzmann, Basel), set for STIX via --pdf-font. - Consolidate the Standard Model Lagrangian onto a single -a4.md source, dropping the older markup/selectable/plain variants. --- examples/famous-equations.md | 78 +++++++++++++ examples/standard-model-lagrangian-a4.md | 89 ++++++++++++++- .../standard-model-lagrangian-markup-a4.md | 94 ---------------- ...standard-model-lagrangian-selectable-a4.md | 85 -------------- examples/standard-model-lagrangian.md | 106 ------------------ 5 files changed, 165 insertions(+), 287 deletions(-) create mode 100644 examples/famous-equations.md delete mode 100644 examples/standard-model-lagrangian-markup-a4.md delete mode 100644 examples/standard-model-lagrangian-selectable-a4.md delete mode 100644 examples/standard-model-lagrangian.md diff --git a/examples/famous-equations.md b/examples/famous-equations.md new file mode 100644 index 0000000..8f5a26d --- /dev/null +++ b/examples/famous-equations.md @@ -0,0 +1,78 @@ +--- +title: A Wall of Famous Equations +subtitle: The greatest hits, set in STIX Two Math +author: md2any +date: auto +theme: light +aspect: 16:9 +layout: clean +math: svg +math_block_align: center +math_scale: 1.2 +math_max_height: 230 +toc: false +--- + +# A Wall of Famous Equations + +A greatest-hits tour — from a patent clerk's β to the geometry of spacetime. + +## Euler's Identity + +The most beautiful equation in mathematics — five constants, one line. + +$$ e^{i\pi} + 1 = 0 $$ + +## Mass–Energy Equivalence + +Einstein's 1905 sequel to *On the Electrodynamics of Moving Bodies*. + +$$ E = mc^2 $$ + +## The Lorentz Factor + +Straight out of §6 of that 1905 paper — the β that warps space and time. + +$$ \gamma = \frac{1}{\sqrt{1 - \dfrac{v^2}{c^2}}} $$ + +## The Schrödinger Equation + +How a quantum state evolves in time. + +$$ i\hbar\frac{\partial}{\partial t}\Psi = \hat{H}\Psi $$ + +## The Dirac Equation + +Relativity meets the quantum — and predicts antimatter. + +$$ \left(i\hbar\gamma^\mu\partial_\mu - mc\right)\psi = 0 $$ + +## Einstein's Field Equations + +Matter tells spacetime how to curve; spacetime tells matter how to move. + +$$ G_{\mu\nu} + \Lambda g_{\mu\nu} = \frac{8\pi G}{c^4}\,T_{\mu\nu} $$ + +## The Gaussian Integral + +The bell curve's deceptively simple area. + +$$ \int_{-\infty}^{\infty} e^{-x^2}\,dx = \sqrt{\pi} $$ + +## Bayes' Theorem + +How evidence updates belief. + +$$ P(A \mid B) = \frac{P(B \mid A)\,P(A)}{P(B)} $$ + +## Boltzmann's Entropy + +Carved on his gravestone in Vienna. + +$$ S = k_B \ln W $$ + +## The Basel Problem + +Euler summed the reciprocal squares — and π showed up. + +$$ \sum_{n=1}^{\infty} \frac{1}{n^2} = \frac{\pi^2}{6} $$ diff --git a/examples/standard-model-lagrangian-a4.md b/examples/standard-model-lagrangian-a4.md index 9af8cd9..608ccb2 100644 --- a/examples/standard-model-lagrangian-a4.md +++ b/examples/standard-model-lagrangian-a4.md @@ -2,8 +2,93 @@ theme: light layout: clean aspect: a4 +break_mode: off --- - + -![Full Standard Model Lagrangian](assets/standard-model-lagrangian-a4.png){width=100%} +```math +\mathcal{L}_{SM} = -\frac{1}{2}\partial_\nu g^a_\mu\partial^\nu g^{a\mu} +-g_s f^{abc}\partial_\mu g^a_\nu g^{b\mu}g^{c\nu} +-\frac{1}{4}g_s^2 f^{abc}f^{ade}g^b_\mu g^c_\nu g^{d\mu}g^{e\nu} +-\partial_\nu W^+_\mu\partial^\nu W^{-\mu}-M^2W^+_\mu W^{-\mu} +-\frac{1}{2}\partial_\nu Z^0_\mu\partial^\nu Z^{0\mu}-\frac{1}{2c_w^2}M^2Z^0_\mu Z^{0\mu} +-\frac{1}{2}\partial_\mu A_\nu\partial^\mu A^\nu +-igc_w(\partial_\nu Z^0_\mu(W^{+\mu}W^{-\nu}-W^{+\nu}W^{-\mu}) +-Z^0_\nu(W^+_\mu\partial^\nu W^{-\mu}-W^-_\mu\partial^\nu W^{+\mu}) ++Z^0_\mu(W^+_\nu\partial^\nu W^{-\mu}-W^-_\nu\partial^\nu W^{+\mu})) +-igs_w(\partial_\nu A_\mu(W^{+\mu}W^{-\nu}-W^{+\nu}W^{-\mu}) +-A_\nu(W^+_\mu\partial^\nu W^{-\mu}-W^-_\mu\partial^\nu W^{+\mu}) ++A_\mu(W^+_\nu\partial^\nu W^{-\mu}-W^-_\nu\partial^\nu W^{+\mu})) +-\frac{1}{2}g^2W^+_\mu W^{-\mu}W^+_\nu W^{-\nu} ++\frac{1}{2}g^2W^+_\mu W^{+\mu}W^-_\nu W^{-\nu} ++g^2c_w^2(Z^0_\mu W^+_\nu Z^{0\mu}W^{-\nu}-Z^0_\mu Z^{0\mu}W^+_\nu W^{-\nu}) ++g^2s_w^2(A_\mu W^+_\nu A^\mu W^{-\nu}-A_\mu A^\mu W^+_\nu W^{-\nu}) ++g^2s_wc_w(A_\mu Z^0_\nu(W^{+\mu}W^{-\nu}+W^{-\mu}W^{+\nu}) +-2A_\mu Z^{0\mu}W^+_\nu W^{-\nu})-\frac{1}{2}\partial_\mu H\partial^\mu H-2M^2\alpha_hH^2 +-\partial_\mu\phi^+\partial^\mu\phi^--\frac{1}{2}\partial_\mu\phi^0\partial^\mu\phi^0 +-\beta_h(\frac{2M^2}{g^2}+\frac{2M}{g}H+\frac{1}{2}(H^2+\phi^0\phi^0+2\phi^+\phi^-)) ++\frac{2M^4}{g^2}\alpha_h-g\alpha_hM(H^3+H\phi^0\phi^0+2H\phi^+\phi^-) +-\frac{1}{8}g^2\alpha_h(H^4+(\phi^0)^4+4(\phi^+\phi^-)^2+4(\phi^0)^2\phi^+\phi^- ++4H^2\phi^+\phi^-+2(\phi^0)^2H^2) +-gMW^+_\mu W^{-\mu}H-\frac{1}{2}g\frac{M}{c_w^2}Z^0_\mu Z^{0\mu}H +-\frac{i}{2}g(W^+_\mu(\phi^0\partial^\mu\phi^- - \phi^-\partial^\mu\phi^0) +-W^-_\mu(\phi^0\partial^\mu\phi^+ - \phi^+\partial^\mu\phi^0)) ++\frac{1}{2}g(W^+_\mu(H\partial^\mu\phi^- - \phi^-\partial^\mu H) ++W^-_\mu(H\partial^\mu\phi^+ - \phi^+\partial^\mu H)) ++\frac{1}{2}g\frac{1}{c_w}Z^0_\mu(H\partial^\mu\phi^0-\phi^0\partial^\mu H) ++M(\frac{1}{c_w}Z^0_\mu\partial^\mu\phi^0+W^+_\mu\partial^\mu\phi^-+W^-_\mu\partial^\mu\phi^+) +-ig\frac{s_w^2}{c_w}MZ^0_\mu(W^{+\mu}\phi^- - W^{-\mu}\phi^+) ++igs_wMA_\mu(W^{+\mu}\phi^- - W^{-\mu}\phi^+) +-ig\frac{1-2c_w^2}{2c_w}Z^0_\mu(\phi^+\partial^\mu\phi^- - \phi^-\partial^\mu\phi^+) ++igs_wA_\mu(\phi^+\partial^\mu\phi^- - \phi^-\partial^\mu\phi^+) +-\frac{1}{4}g^2W^+_\mu W^{-\mu}(H^2+(\phi^0)^2+2\phi^+\phi^-) +-\frac{1}{8}g^2\frac{1}{c_w^2}Z^0_\mu Z^{0\mu}(H^2+(\phi^0)^2+2(2s_w^2-1)^2\phi^+\phi^-) +-\frac{1}{2}g^2\frac{s_w}{c_w}Z^0_\mu\phi^0(W^{+\mu}\phi^-+W^{-\mu}\phi^+) +-\frac{i}{2}g^2\frac{s_w}{c_w}Z^0_\mu H(W^{+\mu}\phi^- - W^{-\mu}\phi^+) ++\frac{1}{2}g^2s_wA_\mu\phi^0(W^{+\mu}\phi^-+W^{-\mu}\phi^+) ++\frac{i}{2}g^2s_wA_\mu H(W^{+\mu}\phi^- - W^{-\mu}\phi^+) +-g^2\frac{s_w}{c_w}(2c_w^2-1)Z^0_\mu A^\mu\phi^+\phi^- - g^2s_w^2A_\mu A^\mu\phi^+\phi^- ++\frac{i}{2}g_s\lambda^a_{ij}(\bar{q}_i\gamma^\mu q_j)g^a_\mu +-\bar{e}^\lambda(\gamma\partial+m_e^\lambda)e^\lambda-\bar{\nu}^\lambda(\gamma\partial+m_\nu^\lambda)\nu^\lambda +-\bar{u}^\lambda_j(\gamma\partial+m_u^\lambda)u^\lambda_j-\bar{d}^\lambda_j(\gamma\partial+m_d^\lambda)d^\lambda_j ++igs_wA_\mu(-(\bar{e}^\lambda\gamma^\mu e^\lambda) ++\frac{2}{3}(\bar{u}^\lambda_j\gamma^\mu u^\lambda_j)-\frac{1}{3}(\bar{d}^\lambda_j\gamma^\mu d^\lambda_j)) ++\frac{ig}{4c_w}Z^0_\mu(\bar{\nu}^\lambda\gamma^\mu(1+\gamma^5)\nu^\lambda ++\bar{e}^\lambda\gamma^\mu(4s_w^2-1-\gamma^5)e^\lambda ++\bar{d}^\lambda_j\gamma^\mu(\frac{4}{3}s_w^2-1-\gamma^5)d^\lambda_j ++\bar{u}^\lambda_j\gamma^\mu(1-\frac{8}{3}s_w^2+\gamma^5)u^\lambda_j) ++\frac{ig}{2\sqrt{2}}W^+_\mu((\bar{\nu}^\lambda\gamma^\mu(1+\gamma^5)U^{lep}_{\lambda\kappa}e^\kappa) ++(\bar{u}^\lambda_j\gamma^\mu(1+\gamma^5)C_{\lambda\kappa}d^\kappa_j)) ++\frac{ig}{2\sqrt{2}}W^-_\mu((\bar{e}^\kappa U^{lep\dagger}_{\kappa\lambda}\gamma^\mu(1+\gamma^5)\nu^\lambda) ++(\bar{d}^\kappa_jC^\dagger_{\kappa\lambda}\gamma^\mu(1+\gamma^5)u^\lambda_j)) ++\frac{ig}{2M\sqrt{2}}\phi^+(-m_e^\kappa\bar{\nu}^\lambda U^{lep}_{\lambda\kappa}(1-\gamma^5)e^\kappa ++m_\nu^\lambda\bar{\nu}^\lambda U^{lep}_{\lambda\kappa}(1+\gamma^5)e^\kappa) ++\frac{ig}{2M\sqrt{2}}\phi^-(m_e^\lambda\bar{e}^\lambda U^{lep\dagger}_{\lambda\kappa}(1+\gamma^5)\nu^\kappa +-m_\nu^\kappa\bar{e}^\lambda U^{lep\dagger}_{\lambda\kappa}(1-\gamma^5)\nu^\kappa) +-\frac{g m_\nu^\lambda}{2M}H(\bar{\nu}^\lambda\nu^\lambda)-\frac{g m_e^\lambda}{2M}H(\bar{e}^\lambda e^\lambda) ++\frac{ig m_\nu^\lambda}{2M}\phi^0(\bar{\nu}^\lambda\gamma^5\nu^\lambda) +-\frac{ig m_e^\lambda}{2M}\phi^0(\bar{e}^\lambda\gamma^5e^\lambda) +-\frac{1}{4}\bar{\nu}_\lambda M^R_{\lambda\kappa}(1-\gamma^5)\hat{\nu}_\kappa +-\frac{1}{4}\bar{\nu}_\lambda M^R_{\lambda\kappa}(1-\gamma^5)\hat{\nu}_\kappa ++\frac{ig}{2M\sqrt{2}}\phi^+(-m_d^\kappa\bar{u}^\lambda_jC_{\lambda\kappa}(1-\gamma^5)d^\kappa_j ++m_u^\lambda\bar{u}^\lambda_jC_{\lambda\kappa}(1+\gamma^5)d^\kappa_j) ++\frac{ig}{2M\sqrt{2}}\phi^-(m_d^\lambda\bar{d}^\lambda_jC^\dagger_{\lambda\kappa}(1+\gamma^5)u^\kappa_j +-m_u^\kappa\bar{d}^\lambda_jC^\dagger_{\lambda\kappa}(1-\gamma^5)u^\kappa_j) +-\frac{g m_u^\lambda}{2M}H(\bar{u}^\lambda_j u^\lambda_j)-\frac{g m_d^\lambda}{2M}H(\bar{d}^\lambda_jd^\lambda_j) ++\frac{ig m_u^\lambda}{2M}\phi^0(\bar{u}^\lambda_j\gamma^5u^\lambda_j) +-\frac{ig m_d^\lambda}{2M}\phi^0(\bar{d}^\lambda_j\gamma^5d^\lambda_j) ++\bar{G}^a\partial^2G^a+g_sf^{abc}\partial_\mu\bar{G}^aG^bg^c_\mu ++X^+(\partial^2-M^2)X^+ + X^-(\partial^2-M^2)X^- + X^0(\partial^2-\frac{M^2}{c_w^2})X^0+\bar{Y}\partial^2Y ++igc_wW^+_\mu(\partial^\mu X^0X^- - \partial^\mu X^+X^0) ++igs_wW^+_\mu(\partial^\mu YX^- - \partial^\mu X^+Y) ++igc_wW^-_\mu(\partial^\mu X^-X^0 - \partial^\mu X^0X^+) ++igs_wW^-_\mu(\partial^\mu X^-Y - \partial^\mu YX^+) ++igc_wZ^0_\mu(\partial^\mu X^+X^+ - \partial^\mu X^-X^-) ++igs_wA_\mu(\partial^\mu X^+X^+ - \partial^\mu X^-X^-) +-\frac{1}{2}gM(\bar{X}^+X^+H+\bar{X}^-X^-H+\frac{1}{c_w^2}\bar{X}^0X^0H) ++\frac{1-2c_w^2}{2c_w}igM(\bar{X}^+X^0\phi^- - \bar{X}^-X^0\phi^+) ++\frac{1}{2c_w}igM(\bar{X}^0X^-\phi^+ - \bar{X}^0X^+\phi^-) ++igMs_w(\bar{X}^0X^-\phi^+ - \bar{X}^0X^+\phi^-) ++\frac{i}{2}gM(\bar{X}^+X^+\phi^0 - \bar{X}^-X^-\phi^0). +``` diff --git a/examples/standard-model-lagrangian-markup-a4.md b/examples/standard-model-lagrangian-markup-a4.md deleted file mode 100644 index 608ccb2..0000000 --- a/examples/standard-model-lagrangian-markup-a4.md +++ /dev/null @@ -1,94 +0,0 @@ ---- -theme: light -layout: clean -aspect: a4 -break_mode: off ---- - - - -```math -\mathcal{L}_{SM} = -\frac{1}{2}\partial_\nu g^a_\mu\partial^\nu g^{a\mu} --g_s f^{abc}\partial_\mu g^a_\nu g^{b\mu}g^{c\nu} --\frac{1}{4}g_s^2 f^{abc}f^{ade}g^b_\mu g^c_\nu g^{d\mu}g^{e\nu} --\partial_\nu W^+_\mu\partial^\nu W^{-\mu}-M^2W^+_\mu W^{-\mu} --\frac{1}{2}\partial_\nu Z^0_\mu\partial^\nu Z^{0\mu}-\frac{1}{2c_w^2}M^2Z^0_\mu Z^{0\mu} --\frac{1}{2}\partial_\mu A_\nu\partial^\mu A^\nu --igc_w(\partial_\nu Z^0_\mu(W^{+\mu}W^{-\nu}-W^{+\nu}W^{-\mu}) --Z^0_\nu(W^+_\mu\partial^\nu W^{-\mu}-W^-_\mu\partial^\nu W^{+\mu}) -+Z^0_\mu(W^+_\nu\partial^\nu W^{-\mu}-W^-_\nu\partial^\nu W^{+\mu})) --igs_w(\partial_\nu A_\mu(W^{+\mu}W^{-\nu}-W^{+\nu}W^{-\mu}) --A_\nu(W^+_\mu\partial^\nu W^{-\mu}-W^-_\mu\partial^\nu W^{+\mu}) -+A_\mu(W^+_\nu\partial^\nu W^{-\mu}-W^-_\nu\partial^\nu W^{+\mu})) --\frac{1}{2}g^2W^+_\mu W^{-\mu}W^+_\nu W^{-\nu} -+\frac{1}{2}g^2W^+_\mu W^{+\mu}W^-_\nu W^{-\nu} -+g^2c_w^2(Z^0_\mu W^+_\nu Z^{0\mu}W^{-\nu}-Z^0_\mu Z^{0\mu}W^+_\nu W^{-\nu}) -+g^2s_w^2(A_\mu W^+_\nu A^\mu W^{-\nu}-A_\mu A^\mu W^+_\nu W^{-\nu}) -+g^2s_wc_w(A_\mu Z^0_\nu(W^{+\mu}W^{-\nu}+W^{-\mu}W^{+\nu}) --2A_\mu Z^{0\mu}W^+_\nu W^{-\nu})-\frac{1}{2}\partial_\mu H\partial^\mu H-2M^2\alpha_hH^2 --\partial_\mu\phi^+\partial^\mu\phi^--\frac{1}{2}\partial_\mu\phi^0\partial^\mu\phi^0 --\beta_h(\frac{2M^2}{g^2}+\frac{2M}{g}H+\frac{1}{2}(H^2+\phi^0\phi^0+2\phi^+\phi^-)) -+\frac{2M^4}{g^2}\alpha_h-g\alpha_hM(H^3+H\phi^0\phi^0+2H\phi^+\phi^-) --\frac{1}{8}g^2\alpha_h(H^4+(\phi^0)^4+4(\phi^+\phi^-)^2+4(\phi^0)^2\phi^+\phi^- -+4H^2\phi^+\phi^-+2(\phi^0)^2H^2) --gMW^+_\mu W^{-\mu}H-\frac{1}{2}g\frac{M}{c_w^2}Z^0_\mu Z^{0\mu}H --\frac{i}{2}g(W^+_\mu(\phi^0\partial^\mu\phi^- - \phi^-\partial^\mu\phi^0) --W^-_\mu(\phi^0\partial^\mu\phi^+ - \phi^+\partial^\mu\phi^0)) -+\frac{1}{2}g(W^+_\mu(H\partial^\mu\phi^- - \phi^-\partial^\mu H) -+W^-_\mu(H\partial^\mu\phi^+ - \phi^+\partial^\mu H)) -+\frac{1}{2}g\frac{1}{c_w}Z^0_\mu(H\partial^\mu\phi^0-\phi^0\partial^\mu H) -+M(\frac{1}{c_w}Z^0_\mu\partial^\mu\phi^0+W^+_\mu\partial^\mu\phi^-+W^-_\mu\partial^\mu\phi^+) --ig\frac{s_w^2}{c_w}MZ^0_\mu(W^{+\mu}\phi^- - W^{-\mu}\phi^+) -+igs_wMA_\mu(W^{+\mu}\phi^- - W^{-\mu}\phi^+) --ig\frac{1-2c_w^2}{2c_w}Z^0_\mu(\phi^+\partial^\mu\phi^- - \phi^-\partial^\mu\phi^+) -+igs_wA_\mu(\phi^+\partial^\mu\phi^- - \phi^-\partial^\mu\phi^+) --\frac{1}{4}g^2W^+_\mu W^{-\mu}(H^2+(\phi^0)^2+2\phi^+\phi^-) --\frac{1}{8}g^2\frac{1}{c_w^2}Z^0_\mu Z^{0\mu}(H^2+(\phi^0)^2+2(2s_w^2-1)^2\phi^+\phi^-) --\frac{1}{2}g^2\frac{s_w}{c_w}Z^0_\mu\phi^0(W^{+\mu}\phi^-+W^{-\mu}\phi^+) --\frac{i}{2}g^2\frac{s_w}{c_w}Z^0_\mu H(W^{+\mu}\phi^- - W^{-\mu}\phi^+) -+\frac{1}{2}g^2s_wA_\mu\phi^0(W^{+\mu}\phi^-+W^{-\mu}\phi^+) -+\frac{i}{2}g^2s_wA_\mu H(W^{+\mu}\phi^- - W^{-\mu}\phi^+) --g^2\frac{s_w}{c_w}(2c_w^2-1)Z^0_\mu A^\mu\phi^+\phi^- - g^2s_w^2A_\mu A^\mu\phi^+\phi^- -+\frac{i}{2}g_s\lambda^a_{ij}(\bar{q}_i\gamma^\mu q_j)g^a_\mu --\bar{e}^\lambda(\gamma\partial+m_e^\lambda)e^\lambda-\bar{\nu}^\lambda(\gamma\partial+m_\nu^\lambda)\nu^\lambda --\bar{u}^\lambda_j(\gamma\partial+m_u^\lambda)u^\lambda_j-\bar{d}^\lambda_j(\gamma\partial+m_d^\lambda)d^\lambda_j -+igs_wA_\mu(-(\bar{e}^\lambda\gamma^\mu e^\lambda) -+\frac{2}{3}(\bar{u}^\lambda_j\gamma^\mu u^\lambda_j)-\frac{1}{3}(\bar{d}^\lambda_j\gamma^\mu d^\lambda_j)) -+\frac{ig}{4c_w}Z^0_\mu(\bar{\nu}^\lambda\gamma^\mu(1+\gamma^5)\nu^\lambda -+\bar{e}^\lambda\gamma^\mu(4s_w^2-1-\gamma^5)e^\lambda -+\bar{d}^\lambda_j\gamma^\mu(\frac{4}{3}s_w^2-1-\gamma^5)d^\lambda_j -+\bar{u}^\lambda_j\gamma^\mu(1-\frac{8}{3}s_w^2+\gamma^5)u^\lambda_j) -+\frac{ig}{2\sqrt{2}}W^+_\mu((\bar{\nu}^\lambda\gamma^\mu(1+\gamma^5)U^{lep}_{\lambda\kappa}e^\kappa) -+(\bar{u}^\lambda_j\gamma^\mu(1+\gamma^5)C_{\lambda\kappa}d^\kappa_j)) -+\frac{ig}{2\sqrt{2}}W^-_\mu((\bar{e}^\kappa U^{lep\dagger}_{\kappa\lambda}\gamma^\mu(1+\gamma^5)\nu^\lambda) -+(\bar{d}^\kappa_jC^\dagger_{\kappa\lambda}\gamma^\mu(1+\gamma^5)u^\lambda_j)) -+\frac{ig}{2M\sqrt{2}}\phi^+(-m_e^\kappa\bar{\nu}^\lambda U^{lep}_{\lambda\kappa}(1-\gamma^5)e^\kappa -+m_\nu^\lambda\bar{\nu}^\lambda U^{lep}_{\lambda\kappa}(1+\gamma^5)e^\kappa) -+\frac{ig}{2M\sqrt{2}}\phi^-(m_e^\lambda\bar{e}^\lambda U^{lep\dagger}_{\lambda\kappa}(1+\gamma^5)\nu^\kappa --m_\nu^\kappa\bar{e}^\lambda U^{lep\dagger}_{\lambda\kappa}(1-\gamma^5)\nu^\kappa) --\frac{g m_\nu^\lambda}{2M}H(\bar{\nu}^\lambda\nu^\lambda)-\frac{g m_e^\lambda}{2M}H(\bar{e}^\lambda e^\lambda) -+\frac{ig m_\nu^\lambda}{2M}\phi^0(\bar{\nu}^\lambda\gamma^5\nu^\lambda) --\frac{ig m_e^\lambda}{2M}\phi^0(\bar{e}^\lambda\gamma^5e^\lambda) --\frac{1}{4}\bar{\nu}_\lambda M^R_{\lambda\kappa}(1-\gamma^5)\hat{\nu}_\kappa --\frac{1}{4}\bar{\nu}_\lambda M^R_{\lambda\kappa}(1-\gamma^5)\hat{\nu}_\kappa -+\frac{ig}{2M\sqrt{2}}\phi^+(-m_d^\kappa\bar{u}^\lambda_jC_{\lambda\kappa}(1-\gamma^5)d^\kappa_j -+m_u^\lambda\bar{u}^\lambda_jC_{\lambda\kappa}(1+\gamma^5)d^\kappa_j) -+\frac{ig}{2M\sqrt{2}}\phi^-(m_d^\lambda\bar{d}^\lambda_jC^\dagger_{\lambda\kappa}(1+\gamma^5)u^\kappa_j --m_u^\kappa\bar{d}^\lambda_jC^\dagger_{\lambda\kappa}(1-\gamma^5)u^\kappa_j) --\frac{g m_u^\lambda}{2M}H(\bar{u}^\lambda_j u^\lambda_j)-\frac{g m_d^\lambda}{2M}H(\bar{d}^\lambda_jd^\lambda_j) -+\frac{ig m_u^\lambda}{2M}\phi^0(\bar{u}^\lambda_j\gamma^5u^\lambda_j) --\frac{ig m_d^\lambda}{2M}\phi^0(\bar{d}^\lambda_j\gamma^5d^\lambda_j) -+\bar{G}^a\partial^2G^a+g_sf^{abc}\partial_\mu\bar{G}^aG^bg^c_\mu -+X^+(\partial^2-M^2)X^+ + X^-(\partial^2-M^2)X^- + X^0(\partial^2-\frac{M^2}{c_w^2})X^0+\bar{Y}\partial^2Y -+igc_wW^+_\mu(\partial^\mu X^0X^- - \partial^\mu X^+X^0) -+igs_wW^+_\mu(\partial^\mu YX^- - \partial^\mu X^+Y) -+igc_wW^-_\mu(\partial^\mu X^-X^0 - \partial^\mu X^0X^+) -+igs_wW^-_\mu(\partial^\mu X^-Y - \partial^\mu YX^+) -+igc_wZ^0_\mu(\partial^\mu X^+X^+ - \partial^\mu X^-X^-) -+igs_wA_\mu(\partial^\mu X^+X^+ - \partial^\mu X^-X^-) --\frac{1}{2}gM(\bar{X}^+X^+H+\bar{X}^-X^-H+\frac{1}{c_w^2}\bar{X}^0X^0H) -+\frac{1-2c_w^2}{2c_w}igM(\bar{X}^+X^0\phi^- - \bar{X}^-X^0\phi^+) -+\frac{1}{2c_w}igM(\bar{X}^0X^-\phi^+ - \bar{X}^0X^+\phi^-) -+igMs_w(\bar{X}^0X^-\phi^+ - \bar{X}^0X^+\phi^-) -+\frac{i}{2}gM(\bar{X}^+X^+\phi^0 - \bar{X}^-X^-\phi^0). -``` diff --git a/examples/standard-model-lagrangian-selectable-a4.md b/examples/standard-model-lagrangian-selectable-a4.md deleted file mode 100644 index a418c74..0000000 --- a/examples/standard-model-lagrangian-selectable-a4.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -theme: light -layout: clean -aspect: a4 -break_mode: off ---- - - - -```text -L_SM = -1/2 ∂_ν g^a_μ ∂^ν g^{aμ} - g_s f^{abc} ∂_μ g^a_ν g^{bμ}g^{cν} - - 1/4 g_s² f^{abc}f^{ade} g^b_μg^c_νg^{dμ}g^{eν} - - ∂_ν W^+_μ∂^ν W^{-μ} - M² W^+_μW^{-μ} - - 1/2 ∂_ν Z^0_μ∂^ν Z^{0μ} - 1/(2c_w²) M² Z^0_μZ^{0μ} - - 1/2 ∂_μA_ν∂^μA^ν - i g c_w(∂_νZ^0_μ(W^{+μ}W^{-ν}-W^{+ν}W^{-μ}) - - Z^0_ν(W^+_μ∂^νW^{-μ}-W^-_μ∂^νW^{+μ}) - + Z^0_μ(W^+_ν∂^νW^{-μ}-W^-_ν∂^νW^{+μ})) - - i g s_w(∂_νA_μ(W^{+μ}W^{-ν}-W^{+ν}W^{-μ}) - - A_ν(W^+_μ∂^νW^{-μ}-W^-_μ∂^νW^{+μ}) - + A_μ(W^+_ν∂^νW^{-μ}-W^-_ν∂^νW^{+μ})) - - 1/2 g² W^+_μW^{-μ}W^+_νW^{-ν} + 1/2 g² W^+_μW^{+μ}W^-_νW^{-ν} - + g² c_w²(Z^0_μW^+_νZ^{0μ}W^{-ν}-Z^0_μZ^{0μ}W^+_νW^{-ν}) - + g² s_w²(A_μW^+_νA^μW^{-ν}-A_μA^μW^+_νW^{-ν}) - + g² s_wc_w(A_μZ^0_ν(W^{+μ}W^{-ν}+W^{-μ}W^{+ν})-2A_μZ^{0μ}W^+_νW^{-ν}) - - 2A_μZ^0_νW^{+μ}W^{-ν} - 1/2 ∂_μH∂^μH - 2M²α_hH² - - ∂_μφ^+∂^μφ^- - 1/2 ∂_μφ^0∂^μφ^0 - - β_h(2M²/g² + 2MH/g + 1/2(H² + φ^0φ^0 + 2φ^+φ^-)) + 2M⁴α_h/g² - - gα_hM(H³ + Hφ^0φ^0 + 2Hφ^+φ^-) - - 1/8 g²α_h(H⁴ + (φ^0)⁴ + 4(φ^+φ^-)² + 4(φ^0)²φ^+φ^- - + 4H²φ^+φ^- + 2(φ^0)²H²) - - gMW^+_μW^{-μ}H - 1/2 gM/c_w² Z^0_μZ^{0μ}H - - 1/2 i g(W^+_μ(φ^0∂^μφ^- - φ^-∂^μφ^0) - - W^-_μ(φ^0∂^μφ^+ - φ^+∂^μφ^0)) - + 1/2 g(W^+_μ(H∂^μφ^- - φ^-∂^μH) + W^-_μ(H∂^μφ^+ - φ^+∂^μH)) - + 1/2 g/c_w Z^0_μ(H∂^μφ^0 - φ^0∂^μH) - + M(1/c_w Z^0_μ∂^μφ^0 + W^+_μ∂^μφ^- + W^-_μ∂^μφ^+) - - i g s_w²/c_w M Z^0_μ(W^{+μ}φ^- - W^{-μ}φ^+) - + i g s_w M A_μ(W^{+μ}φ^- - W^{-μ}φ^+) - - i g(1-2c_w²)/(2c_w) Z^0_μ(φ^+∂^μφ^- - φ^-∂^μφ^+) - + i g s_w A_μ(φ^+∂^μφ^- - φ^-∂^μφ^+) - - 1/4 g²W^+_μW^{-μ}(H² + (φ^0)² + 2φ^+φ^-) - - 1/8 g²/c_w² Z^0_μZ^{0μ}(H² + (φ^0)² + 2(2s_w²-1)²φ^+φ^-) - - 1/2 g²s_w/c_w Z^0_μφ^0(W^{+μ}φ^- + W^{-μ}φ^+) - - 1/2 i g²s_w/c_w Z^0_μH(W^{+μ}φ^- - W^{-μ}φ^+) - + 1/2 g²s_w A_μφ^0(W^{+μ}φ^- + W^{-μ}φ^+) - + 1/2 i g²s_w A_μH(W^{+μ}φ^- - W^{-μ}φ^+) - - g²s_w/c_w(2c_w²-1)Z^0_μA^μφ^+φ^- - g²s_w²A_μA^μφ^+φ^- - + 1/2 i g_sλ^a_{ij}(q̄_iγ^μq_j)g^a_μ - - eλ̄(γ∂ + m_e)λ - ν̄λ(γ∂ + m_ν)νλ - ū^λ_j(γ∂ + m_u^λ)u^λ_j - - d̄^λ_j(γ∂ + m_d^λ)d^λ_j - + i g s_w A_μ(-(ē^λγ^μe^λ) + 2/3(ū^λ_jγ^μu^λ_j) - 1/3(d̄^λ_jγ^μd^λ_j)) - + i g/(4c_w)Z^0_μ(ν̄^λγ^μ(1+γ^5)ν^λ - + ē^λγ^μ(4s_w²-1-γ^5)e^λ + d̄^λ_jγ^μ(4/3s_w²-1-γ^5)d^λ_j - + ū^λ_jγ^μ(1-8/3s_w²+γ^5)u^λ_j) - + i g/(2√2)W^+_μ(ν̄^λγ^μ(1+γ^5)U^lep_{λκ}e^κ - + ū^λ_jγ^μ(1+γ^5)C_{λκ}d^κ_j) - + i g/(2√2)W^-_μ(ē^κU^{lep†}_{κλ}γ^μ(1+γ^5)ν^λ - + d̄^κ_jC†_{κλ}γ^μ(1+γ^5)u^λ_j) - + i g/(2M√2)φ^+(-m_e^κν̄^λU^lep_{λκ}(1-γ^5)e^κ - + m_ν^λν̄^λU^lep_{λκ}(1+γ^5)e^κ) - + i g/(2M√2)φ^- (m_e^λē^λU^{lep†}_{λκ}(1+γ^5)ν^κ - - m_ν^κē^λU^{lep†}_{λκ}(1-γ^5)ν^κ) - - g m_ν^λ/(2M)H(ν̄^λν^λ) - g m_e^λ/(2M)H(ē^λe^λ) - + i g m_ν^λ/(2M)φ^0(ν̄^λγ^5ν^λ) - i g m_e^λ/(2M)φ^0(ē^λγ^5e^λ) - - 1/4 ν̄_λM^R_{λκ}(1-γ^5)ν̂_κ - 1/4 ν̄_λM^R_{λκ}(1-γ^5)ν̂_κ - + i g/(2M√2)φ^+(-m_d^κū^λ_jC_{λκ}(1-γ^5)d^κ_j - + m_u^λū^λ_jC_{λκ}(1+γ^5)d^κ_j) - + i g/(2M√2)φ^-(m_d^λd̄^λ_jC†_{λκ}(1+γ^5)u^κ_j - - m_u^κd̄^λ_jC†_{λκ}(1-γ^5)u^κ_j) - - g m_u^λ/(2M)H(ū^λ_ju^λ_j) - g m_d^λ/(2M)H(d̄^λ_jd^λ_j) - + i g m_u^λ/(2M)φ^0(ū^λ_jγ^5u^λ_j) - i g m_d^λ/(2M)φ^0(d̄^λ_jγ^5d^λ_j) - + Ḡ^a∂²G^a + g_s f^{abc}∂_μḠ^aG^bg^{cμ} - + X^+(∂²-M²)X^+ + X^-(∂²-M²)X^- + X^0(∂²-M²/c_w²)X^0 + Ȳ∂²Y - + i g c_w W^+_μ(∂^μX^0X^- - ∂^μX^+X^0) - + i g s_w W^+_μ(∂^μY X^- - ∂^μX^+Y) - + i g c_w W^-_μ(∂^μX^-X^0 - ∂^μX^0X^+) - + i g s_w W^-_μ(∂^μX^-Y - ∂^μY X^+) - + i g c_w Z^0_μ(∂^μX^+X^+ - ∂^μX^-X^-) - + i g s_w A_μ(∂^μX^+X^+ - ∂^μX^-X^-) - - 1/2 gM(X̄^+X^+H + X̄^-X^-H + 1/c_w² X̄^0X^0H) - + (1-2c_w²)/(2c_w) i gM(X̄^+X^0φ^- - X̄^-X^0φ^+) - + 1/(2c_w) i gM(X̄^0X^-φ^+ - X̄^0X^+φ^-) - + i gM s_w(X̄^0X^-φ^+ - X̄^0X^+φ^-) - + 1/2 i gM(X̄^+X^+φ^0 - X̄^-X^-φ^0). -``` diff --git a/examples/standard-model-lagrangian.md b/examples/standard-model-lagrangian.md deleted file mode 100644 index 559ab56..0000000 --- a/examples/standard-model-lagrangian.md +++ /dev/null @@ -1,106 +0,0 @@ ---- -title: Standard Model Lagrangian Stress -subtitle: Dense native SVG math without a TeX dependency -author: md2any -theme: light -layout: clean -math: svg -math_scale: 0.56 -math_block_align: center -math_max_height: 360 ---- - -# Standard Model Stress - -## Reference Image - -![Reference rendering of the Standard Model Lagrangian](assets/standard-model-lagrangian.png){width=100%} - -## Gauge, Higgs, And Potential - -$$ -\begin{aligned} -\mathcal{L}_{gauge} =& -\frac{1}{4}G_{\mu\nu}^{a}G^{a\mu\nu} --\frac{1}{4}W_{\mu\nu}^{i}W^{i\mu\nu} --\frac{1}{4}B_{\mu\nu}B^{\mu\nu} \\ -&+ (D_{\mu}\Phi)^{\ast}(D^{\mu}\Phi) -+\mu^{2}\Phi^{\ast}\Phi --\lambda(\Phi^{\ast}\Phi)^{2} -\end{aligned} -$$ - -$$ -V(\Phi)= -\left[ -\begin{array}{cc} --\mu^{2}\Phi^{\ast}\Phi & \lambda(\Phi^{\ast}\Phi)^{2} \\ -M_{W}^{2}W_{\mu}^{+}W^{-\mu} & \frac{1}{2}M_{Z}^{2}Z_{\mu}Z^{\mu} -\end{array} -\right] -$$ - -## Fermion Kinetic Terms - -$$ -\begin{aligned} -\mathcal{L}_{fermion} =& -i\bar{q}_{L}\gamma^{\mu}D_{\mu}q_{L} -+i\bar{u}_{R}\gamma^{\mu}D_{\mu}u_{R} -+i\bar{d}_{R}\gamma^{\mu}D_{\mu}d_{R} \\ -&+i\bar{\ell}_{L}\gamma^{\mu}D_{\mu}\ell_{L} -+i\bar{e}_{R}\gamma^{\mu}D_{\mu}e_{R} -+i\bar{\nu}_{L}\gamma^{\mu}D_{\mu}\nu_{L} -\end{aligned} -$$ - -$$ -\begin{aligned} -\mathcal{L}_{Yukawa} =& --y_{u}\bar{q}_{L}\tilde{\Phi}u_{R} --y_{d}\bar{q}_{L}\Phi d_{R} --y_{e}\bar{\ell}_{L}\Phi e_{R} \\ -&-y_{\nu}\bar{\ell}_{L}\tilde{\Phi}\nu_{R} -+h.c. -\end{aligned} -$$ - -## Interaction Pressure - -$$ -\begin{aligned} -\mathcal{L}_{int} =& -g_{s}f^{abc}(\partial_{\mu}G_{\nu}^{a})G^{b\mu}G^{c\nu} -+g\epsilon^{ijk}(\partial_{\mu}W_{\nu}^{i})W^{j\mu}W^{k\nu} \\ -&+\frac{g}{\sqrt{2}}\left(W_{\mu}^{+}J_{W}^{\mu}+W_{\mu}^{-}\bar{J}_{W}^{\mu}\right) -+\frac{g}{c_{w}}Z_{\mu}J_{Z}^{\mu} -+eA_{\mu}J_{em}^{\mu} \\ -&+g^{2}W_{\mu}^{+}W^{-\mu}H^{2} -+\frac{g^{2}}{4c_{w}^{2}}Z_{\mu}Z^{\mu}H^{2} -+\lambda vH^{3} -+\frac{\lambda}{4}H^{4} -\end{aligned} -$$ - -## Mass And Mixing Summary - -$$ -\begin{cases} -M_{W}=\frac{1}{2}gv & charged\ vector \\ -M_{Z}=\frac{1}{2}\sqrt{g^{2}+g'^{2}}v & neutral\ vector \\ -m_{f}=\frac{y_{f}v}{\sqrt{2}} & fermion -\end{cases} -$$ - -$$ -\left[ -\begin{array}{ccc} -G_{\mu}^{1} & G_{\mu}^{2} & G_{\mu}^{3} \\ -W_{\mu}^{+} & Z_{\mu}^{0} & A_{\mu} \\ -\phi^{+} & H & \phi^{0} -\end{array} -\right] -\quad -\binom{\nu_{e}}{e^{-}} -\quad -\left\lVert D_{\mu}\Phi \right\rVert^{2} -$$ From 9752d534de1fbcb470c814fc61d7e96eef0fdfbf Mon Sep 17 00:00:00 2001 From: JavaPerformance Date: Sun, 14 Jun 2026 14:27:47 +0200 Subject: [PATCH 3/6] docs: CHANGELOG 0.3.0, README accuracy, torture-test findings; bump to 0.3.0 - CHANGELOG: new [0.3.0] section (Added / Fixed / Known limitations). - README: correct the RTL/CJK claim (no full bidi; CJK needs --cjk), add task lists, table alignment, inline SVG, math bold/accents, and font-aware/OTF math metrics to the feature table. - docs/torture-test-findings.md: tracked findings from the rendering sweep with per-item status. - Bump version 0.2.0 -> 0.3.0. --- CHANGELOG.md | 56 +++++++++++++++++++++ Cargo.lock | 2 +- Cargo.toml | 2 +- README.md | 6 +-- docs/torture-test-findings.md | 95 +++++++++++++++++++++++++++++++++++ 5 files changed, 156 insertions(+), 5 deletions(-) create mode 100644 docs/torture-test-findings.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 10a1d5d..05cf9e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,62 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.3.0] — 2026-06-14 + +A math-rendering and robustness release. The native math layout engine gained +font-aware metrics, real bold, and properly-centred accents; custom OTF/CFF +fonts now embed correctly in PDF; and a broad rendering sweep fixed several +overflow / silent-drop bugs. + +### Added + +- **Font-aware math metrics.** The math layout engine now measures glyph + advances against the face that will actually render them (the embedded PDF + font, or bundled DejaVu for SVG/PNG) via a `GlyphMetrics` provider, so + reserved width matches drawn glyphs — equations stay aligned under + `--pdf-font`, not just with the default font. +- **Math bold.** `\mathbf`, `\textbf`, `\boldsymbol`, `\bm`, `\pmb`, `\mathbfit` + now render in real bold weight (PDF/SVG/PNG); previously a no-op, and + `\boldsymbol` leaked literal source. +- **`\dfrac` / `\tfrac` / `\cfrac`** and **`\mid` / `\vert` / `\Vert`** are now + recognised (previously leaked literal source). +- **GFM table column alignment** (`:---`, `:---:`, `---:`) is honoured in PDF, + SVG, PNG, and HTML. +- **Inline ``** blocks are now rasterised and embedded instead of + being silently dropped. + +### Fixed + +- **OTF/CFF font embedding.** PDF now emits `CIDFontType0` + `FontFile3` for + CFF/OpenType faces (e.g. STIX Two Math) instead of mislabelling them as + TrueType, which strict readers rejected. +- **Math accents** (`\bar`, `\hat`, `\vec`, `\tilde`, `\dot`, `\ddot`) are drawn + as centred geometry rather than zero-advance combining marks, which had + landed at the glyph's right edge (and differently per font — e.g. `\bar{d}` + rendered as "đ"). +- **Long titles no longer overflow.** Title slides (all layouts) and section + dividers auto-shrink to fit; wrapped content-slide headings push the body and + underline down instead of overprinting them. +- **Tabs in code** expand to 4-column tab stops instead of rendering as + missing-glyph boxes. +- **`{width=N%}` > 100** clamps instead of leaking the literal attribute text. +- **`:::` columns** handle leading/trailing/duplicate dividers (the fence form + `::: … ::: … :::`) instead of dumping all content into the right column. +- **Task-list items** show only their checkbox, not a checkbox *and* a bullet + (PDF/SVG/HTML/PPTX). +- **Display-math pagination** weights generated equation images by their real + aspect ratio, so a one-line equation no longer splits onto a near-empty + continuation slide. + +### Known limitations + +- Right-to-left text uses `direction: rtl` for right-alignment but does not + perform full Unicode bidi reordering of mixed LTR/RTL runs. +- CJK and colour-emoji glyphs require `--cjk ` for PDF (the bundled DejaVu + face does not cover them). +- Table column alignment is not yet applied to the editable Office/ODF outputs + (pptx/odp/odt/docx). + ## [0.2.0] — 2026-05-24 A feature-and-fix-heavy follow-up to the initial release. New CLI surface diff --git a/Cargo.lock b/Cargo.lock index d4ef459..25f41f3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -523,7 +523,7 @@ checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" [[package]] name = "md2any" -version = "0.2.0" +version = "0.3.0" dependencies = [ "anyhow", "clap", diff --git a/Cargo.toml b/Cargo.toml index c597953..bff045e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "md2any" -version = "0.2.0" +version = "0.3.0" edition = "2021" rust-version = "1.74" description = "Markdown → PowerPoint, OpenDocument Impress, PDF, Word, Writer, HTML, SVG, and PNG. One markdown source, one small Rust binary." diff --git a/README.md b/README.md index 2dbb5d1..c9c3475 100644 --- a/README.md +++ b/README.md @@ -138,13 +138,13 @@ md2any hello.md --serve # live preview at http://localhost:8421 | **Themes** | Light + dark built-in, full custom palettes via YAML overlay | | **Layouts** | Clean / studio / frame / bold | | **Aspect ratios** | 16:9, 4:3, 9:16, A3/A4/A5, Letter, Legal, Tabloid + landscape variants + custom `WxH[unit]` | -| **Markdown** | Lists (9 deep nesting), tables, dark-by-default code blocks (40+ tags incl. mainframe/IBM i, Haskell/BCPL, web/API/config, and `bf`), block quotes, footnotes, links (clickable), strike, inline code | +| **Markdown** | Lists (9 deep nesting), task lists, tables with column alignment (`:---:` / `---:`), dark-by-default code blocks (40+ tags incl. mainframe/IBM i, Haskell/BCPL, web/API/config, and `bf`), block quotes, footnotes, links (clickable), strike, inline code, inline `` | | **Layout extras** | Side-by-side columns (`:::`), landscape code two-up (`--code-columns` / `columns=2`), image/text full-page hints, per-slide background (``), TOC injection, hand-tuned pagination with widow/orphan control | -| **Math** | `$inline$` and `$$display$$` LaTeX subset -> Unicode, including accents/text/math alphabets; `--math source` preserves source; `--math svg` uses a built-in box layout for display fractions, radicals, scripts, matrices/cases/arrays, scalable delimiters, and aligned equations | +| **Math** | `$inline$` and `$$display$$` LaTeX subset -> Unicode, including accents/text/math alphabets; `--math source` preserves source; `--math svg` uses a built-in box layout for display fractions, radicals, scripts, matrices/cases/arrays, scalable delimiters, aligned equations, **bold** (`\mathbf`/`\boldsymbol`), and drawn accents (`\bar`/`\hat`/`\vec`). Font-aware metrics keep equations aligned under `--pdf-font` (incl. OTF/CFF math fonts like STIX) | | **Diagrams** | Embedded `dot`, `mermaid`, `plantuml` (shells out if installed) | | **Speaker notes** | `` HTML comments | | **Transitions** | `fade`, `push`, `wipe`, `cover`, `split` (PPTX/ODP/PDF) | -| **RTL / CJK** | `direction: rtl` for Arabic/Hebrew; CJK via the consumer's font | +| **RTL / CJK** | `direction: rtl` right-aligns Arabic/Hebrew (no full bidi reordering of mixed runs yet); CJK & emoji need `--cjk ` for PDF | | **Workflow** | `--watch` for rebuild-on-save, `--serve` for live preview with hot reload, `--check` for lint mode | | **Handouts** | `--handout 2|4|6` for N-up A4 printable PDF | | **Multi-file** | Concat multiple `.md` files; `-` reads stdin | diff --git a/docs/torture-test-findings.md b/docs/torture-test-findings.md new file mode 100644 index 0000000..d08cbad --- /dev/null +++ b/docs/torture-test-findings.md @@ -0,0 +1,95 @@ +# md2any torture-test findings + +Broad stress test of the renderer (2026-06-14). Six domains — tables/lists/columns, +code/syntax, typography/unicode, images/SVG, themes/layouts/aspects, and multi-format +robustness — each rendered to PDF/PNG (and cross-checked in HTML/Office formats) and +visually inspected. + +**Multi-format output is solid:** 72 artifacts across all 8 formats (pptx, odp, pdf, +docx, odt, html, svg, png) — no crashes, no corrupt archives, no dropped content. +All defects below are in the slide layout/render layer. + +Status legend: ☐ open · ☑ fixed · ◐ in progress · ⊘ won't-fix / larger effort + +--- + +## HIGH + +- ☑ **H1 — Long titles overflow & overprint the footer.** Fixed across **all** + title layouts (Clean/Studio/Frame/Bold): `fit_hero_size` shrinks the hero title + to fit above the subtitle/footer; Bold no longer drops the title off the top of + its accent block (`src/pdf.rs`). Subtitle/author stay visible. + +- ☑ **H2 — Wrapped content headings collide with body.** Fixed: `render_content_slide` + measures the wrapped title line count and pushes the underline + body down by the + extra lines (`src/pdf.rs`). Was: fixed-height title band. + +- ☑ **H3 — Section-divider long titles clipped off the bottom.** Fixed: section + divider (Clean/Frame) now auto-shrinks via `fit_hero_size` (`src/pdf.rs`). + +- ☑ **H4 — Inline `` silently dropped.** Fixed: the parser accumulates + inline SVG across HTML events and routes it through the image pipeline as a + base64 `data:image/svg+xml` block, rasterised like external SVG (`src/parser.rs`). + +- ☑ **H5 — Table column alignment ignored** (`:---:`, `---:`). Fixed: added + `ir::ColumnAlign` + `Table.aligns`, captured from the GFM delimiter row; honoured + in **PDF / SVG / PNG / HTML**. (Office formats — pptx/odp/odt/docx — thread the + data but don't yet apply native cell alignment; see L7.) + +- ☑ **H6 — Tabs in code → tofu boxes + broken indentation.** Fixed: code lines + expand tabs to 4-column tab stops at parse time, fixing every backend + (`src/parser.rs`). + +## Known-limitation class (larger efforts) + +- ⊘ **H7 — RTL (Arabic/Hebrew) not reordered.** No bidi; Hebrew reversed, Arabic + left-aligned. Needs a bidi pass — larger effort. + +- ⊘ **H8 — CJK + emoji → tofu in PDF.** Only DejaVu embedded; no CJK/emoji fallback + font. HTML preserves them. Needs a fallback font pipeline — larger effort. + +## MEDIUM + +- ☐ **M1 — Nested blockquotes collapse** — `>`/`>>`/`>>>` renders only the deepest + level; outer levels vanish. + +- ☐ **M2 — Long unbreakable tokens overflow the right edge** — bare long URLs, long + words, long inline `code` (no emergency character break). + +- ☑ **M3 — `{width=N%}` > 100 leaks literal `{width=…}` as body text** (+ spurious + slide). Fixed: `parse_width_pct` now clamps to 1..=100 instead of returning `None` + (`src/parser.rs`). + +- ☑ **M4 — `:::` columns: a leading/extra marker dumps everything into the right + column** (empty left). Fixed: `coalesce_columns` now splits on all dividers and + drops empty segments, so the fence form `::: … ::: … :::` works (`src/paginate.rs`). + +- ☑ **M5 — Task-list items render a bullet AND a checkbox** (`● ☐ task`). Fixed: + added `ListItem::is_task()`; bullet suppressed in pdf/svg/html/pptx render_list. + ODT/DOCX use native list styles and still show both — needs a no-bullet list + style declaration (follow-up, see L7). + +- ☐ **M6 — Pagination over-splits in 16:9** — image+caption and tables split with + slides ~60% empty (a4 fits them). Same family as the math-image weight fix already + landed; the height budget is too conservative for several block types in 16:9. + +## LOW / polish + +- ☐ L1 — Code: leading/trailing blank lines inside a fence kept verbatim. +- ☐ L2 — Rust `'static` lifetime mis-highlighted as a char/string literal. +- ☐ L3 — ` ` not decoded (renders literal `nbsp`). +- ☐ L4 — `₿` (U+20BF) tofu; other currency symbols fine. +- ☐ L5 — Misleading "aspect too small" error for ratios like `16:10`/`1:1` (only + `16:9`/`4:3`/`9:16` presets accepted). +- ☐ L6 — TOC lists only H1 sections. + +--- + +## Fix order + +Cheap/safe first, then the big UX wins: +M3 (width clamp) → M5 (task-list bullet) → M4 (`:::` leading marker) → +H1/H2/H3 (title & heading auto-fit + body push-down) → H4 (inline SVG) → +H5 (table alignment, needs IR field) → M6 (16:9 pagination budget) → +M1 (nested blockquotes) → M2 (token overflow) → low/polish. +H7/H8 (RTL, CJK/emoji) are larger and tracked separately. From 3f81dddff186e426061a1dbee7f5f594d6818f0b Mon Sep 17 00:00:00 2001 From: JavaPerformance Date: Sun, 14 Jun 2026 14:44:33 +0200 Subject: [PATCH 4/6] Fix nested blockquotes and long-token overflow (M1, M2) - Nested blockquotes (`>`/`>>`/`>>>`) keep every level: the quote accumulator now resets only on the outermost quote instead of on every nested open, which had dropped all but the deepest level. - Long unbreakable tokens (URLs, hashes, CamelCase) hard-break to fit the line instead of overflowing the slide edge: PDF (wrap_text_simple / wrap_runs) and SVG (wrap_text) break over-long tokens into character chunks; HTML adds `overflow-wrap: anywhere`. --- src/html.rs | 2 +- src/parser.rs | 7 +++- src/pdf.rs | 89 +++++++++++++++++++++++++++++++++++++++++----- src/svg.rs | 20 +++++++++++ tests/renderers.rs | 23 ++++++++++++ 5 files changed, 130 insertions(+), 11 deletions(-) diff --git a/src/html.rs b/src/html.rs index 7e515ae..5a17add 100644 --- a/src/html.rs +++ b/src/html.rs @@ -633,7 +633,7 @@ fn css(theme: &Theme, layout: &Layout, rtl: bool) -> String { }} * {{ box-sizing: border-box; }} html, body {{ margin: 0; min-height: 100%; background: #111827; color: var(--body); }} -body {{ font-family: var(--body-font); overflow: hidden; }} +body {{ font-family: var(--body-font); overflow: hidden; overflow-wrap: anywhere; }} .deck {{ min-height: 100vh; display: grid; place-items: center; padding: 2.25vh 2.25vw; }} .slide {{ display: none; diff --git a/src/parser.rs b/src/parser.rs index 4456880..212bf61 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -582,8 +582,13 @@ impl<'a> State<'a> { } Tag::BlockQuote => { self.flush_paragraph(); + // Only reset the accumulator when entering the OUTERMOST quote; + // a nested `>>`/`>>>` must keep the outer levels' paragraphs + // (resetting here dropped everything but the deepest level). + if self.in_blockquote == 0 { + self.quote_paragraphs = Vec::new(); + } self.in_blockquote += 1; - self.quote_paragraphs = Vec::new(); } Tag::CodeBlock(kind) => { self.flush_paragraph(); diff --git a/src/pdf.rs b/src/pdf.rs index eefa9df..6d99140 100644 --- a/src/pdf.rs +++ b/src/pdf.rs @@ -4239,6 +4239,37 @@ impl<'a> SlideRenderer<'a> { // Text wrapping // --------------------------------------------------------------------------- +/// Hard-break a single token (no spaces) into chunks that each fit `max_w_pt`, +/// for emergency wrapping of long unbreakable tokens (URLs, hashes, CamelCase) +/// that would otherwise run off the slide edge. +fn break_token_to_width( + fonts: &PdfFonts, + tok: &str, + font_idx: usize, + size_pt: f32, + max_w_pt: f32, +) -> Vec { + let mut out = Vec::new(); + let mut cur = String::new(); + let mut cur_w = 0.0; + for ch in tok.chars() { + let cw = text_width_pt(fonts, ch.encode_utf8(&mut [0u8; 4]), font_idx, size_pt); + if !cur.is_empty() && cur_w + cw > max_w_pt { + out.push(std::mem::take(&mut cur)); + cur_w = 0.0; + } + cur.push(ch); + cur_w += cw; + } + if !cur.is_empty() { + out.push(cur); + } + if out.is_empty() { + out.push(String::new()); + } + out +} + fn wrap_text_simple( fonts: &PdfFonts, text: &str, @@ -4273,6 +4304,25 @@ fn wrap_text_simple( for tok in tokens { let tok_w = text_width_pt(fonts, &tok, font_idx, size_pt); let only_space = tok.chars().all(|c| c == ' ' || c == '\t'); + // A token wider than the whole line can't be placed as-is — hard-break + // it so it wraps instead of overflowing the edge. + if !only_space && tok_w > max_w_pt && max_w_pt > 0.0 { + if !current.is_empty() { + lines.push(std::mem::take(&mut current)); + current_w = 0.0; + } + let chunks = break_token_to_width(fonts, &tok, font_idx, size_pt, max_w_pt); + let n = chunks.len(); + for (i, chunk) in chunks.into_iter().enumerate() { + if i + 1 < n { + lines.push(chunk); + } else { + current_w = text_width_pt(fonts, &chunk, font_idx, size_pt); + current = chunk; + } + } + continue; + } if !current.is_empty() && current_w + tok_w > max_w_pt && !only_space { lines.push(std::mem::take(&mut current)); current_w = 0.0; @@ -4332,6 +4382,35 @@ fn wrap_runs( for tok in tokens { let tok_w = text_width_pt(fonts, &tok, font_idx, size_pt); let only_space = tok.chars().all(|c| c == ' '); + let mk_run = |text: String| Run { + text, + bold: r.bold, + italic: r.italic, + code: r.code, + strike: r.strike, + link: r.link.clone(), + }; + // Hard-break a token wider than the whole line so it wraps instead + // of overflowing the slide edge. + if !only_space && tok_w > max_w_pt && max_w_pt > 0.0 { + if !lines.last().unwrap().is_empty() { + lines.push(Vec::new()); + cur_width = 0.0; + } + let chunks = break_token_to_width(fonts, &tok, font_idx, size_pt, max_w_pt); + let n = chunks.len(); + for (i, chunk) in chunks.into_iter().enumerate() { + let cw = text_width_pt(fonts, &chunk, font_idx, size_pt); + lines.last_mut().unwrap().push(mk_run(chunk)); + if i + 1 < n { + lines.push(Vec::new()); + cur_width = 0.0; + } else { + cur_width = cw; + } + } + continue; + } if cur_width + tok_w > max_w_pt && !lines.last().unwrap().is_empty() && !only_space { lines.push(Vec::new()); cur_width = 0.0; @@ -4340,15 +4419,7 @@ fn wrap_runs( continue; } } - let last = lines.last_mut().unwrap(); - last.push(Run { - text: tok, - bold: r.bold, - italic: r.italic, - code: r.code, - strike: r.strike, - link: r.link.clone(), - }); + lines.last_mut().unwrap().push(mk_run(tok)); cur_width += tok_w; } } diff --git a/src/svg.rs b/src/svg.rs index 3065e97..3f32487 100644 --- a/src/svg.rs +++ b/src/svg.rs @@ -1314,6 +1314,26 @@ fn wrap_text(text: &str, width: f32, font_size: f32) -> Vec { for raw_line in text.lines() { let mut current = String::new(); for word in raw_line.split_whitespace() { + // Hard-break a word longer than a whole line so it wraps instead of + // overflowing the slide edge. + if word.chars().count() > max_chars { + if !current.is_empty() { + lines.push(std::mem::take(&mut current)); + } + let chars: Vec = word.chars().collect(); + let mut i = 0; + while i < chars.len() { + let end = (i + max_chars).min(chars.len()); + let chunk: String = chars[i..end].iter().collect(); + if end < chars.len() { + lines.push(chunk); + } else { + current = chunk; + } + i = end; + } + continue; + } let next_len = current.chars().count() + if current.is_empty() { 0 } else { 1 } + word.chars().count(); diff --git a/tests/renderers.rs b/tests/renderers.rs index c69cba1..f540001 100644 --- a/tests/renderers.rs +++ b/tests/renderers.rs @@ -290,6 +290,29 @@ fn content_page_count(slides: &[md2any::ir::Slide]) -> usize { .count() } +#[test] +fn nested_blockquotes_keep_all_levels() { + // `>`/`>>`/`>>>` must keep every level, not just the deepest. + let md = "---\n---\n## Q\n> Level one\n>> Level two\n>>> Level three\n"; + let (front, body) = md2any::front_matter::extract(md); + let slides = md2any::parser::parse(&body, &front, "test"); + let paras = slides + .iter() + .flat_map(|s| &s.blocks) + .find_map(|b| match b { + md2any::ir::Block::Quote(paras) => Some(paras.clone()), + _ => None, + }) + .expect("quote present"); + let text: String = paras + .iter() + .flat_map(|p| p.iter().map(|r| r.text.clone())) + .collect(); + assert!(text.contains("Level one"), "outer level dropped: {text:?}"); + assert!(text.contains("Level two"), "{text:?}"); + assert!(text.contains("Level three"), "{text:?}"); +} + #[test] fn table_column_alignment_is_captured() { let md = "---\n---\n## T\n| L | C | R |\n|:--|:-:|--:|\n| a | b | c |\n"; From aeda6b9436fbf902dbeb096a9d1e42976f3f5527 Mon Sep 17 00:00:00 2001 From: JavaPerformance Date: Sun, 14 Jun 2026 14:44:33 +0200 Subject: [PATCH 5/6] docs: README gallery + showcase images; CHANGELOG M1/M2 - Add docs/img/{slides,equations,lagrangian}.png and embed a gallery in the README: a content/code/table montage at the top, a "Native math" section with the equation montage (STIX) and the full Standard Model Lagrangian. - Note the RTL (no full bidi) and Office table-alignment limitations honestly. - CHANGELOG: add nested-blockquote and long-token-overflow fixes to [0.3.0]. - Update the torture-test findings tracker (M1/M2 done). --- CHANGELOG.md | 4 ++++ README.md | 26 ++++++++++++++++++++++++++ docs/img/equations.png | Bin 0 -> 58458 bytes docs/img/lagrangian.png | Bin 0 -> 433744 bytes docs/img/slides.png | Bin 0 -> 141470 bytes docs/torture-test-findings.md | 10 ++++++---- 6 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 docs/img/equations.png create mode 100644 docs/img/lagrangian.png create mode 100644 docs/img/slides.png diff --git a/CHANGELOG.md b/CHANGELOG.md index 05cf9e2..46f5020 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,6 +43,10 @@ overflow / silent-drop bugs. - **Long titles no longer overflow.** Title slides (all layouts) and section dividers auto-shrink to fit; wrapped content-slide headings push the body and underline down instead of overprinting them. +- **Nested blockquotes** (`>`/`>>`/`>>>`) keep every level instead of rendering + only the deepest. +- **Long unbreakable tokens** (URLs, hashes, CamelCase) hard-break to wrap + instead of overflowing the slide edge (PDF/SVG); HTML uses `overflow-wrap`. - **Tabs in code** expand to 4-column tab stops instead of rendering as missing-glyph boxes. - **`{width=N%}` > 100** clamps instead of leaking the literal attribute text. diff --git a/README.md b/README.md index c9c3475..d74c9b6 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,10 @@ binary that converts markdown into editable PowerPoint, OpenDocument Impress, PDF, Word, LibreOffice Writer, standalone HTML, and per-slide SVG/PNG files. +

+ Content, code, and table slides rendered by md2any +

+ ```bash md2any talk.md # → talk.pptx (PowerPoint) md2any talk.md -o talk.odp # → talk.odp (LibreOffice Impress) @@ -44,6 +48,24 @@ md2any is the only tool in this list that produces every common Office / OpenDocument format **natively** from a single small binary — no headless browser, no LaTeX stack, no language runtime. +## Native math — no LaTeX, no KaTeX, no browser + +A built-in layout engine renders display math (fractions, radicals, scripts, +matrices, cases, accents, bold) as **selectable text and vector geometry** — +not images, and without a TeX or JavaScript stack. Bring any math font with +`--pdf-font` (here, STIX Two Math); metrics adapt to the face automatically. + +

+ Euler's identity, the Lorentz factor, the Dirac equation, and Bayes' theorem +

+ +It scales all the way up to the full **Standard Model Lagrangian** on a single +A4 page ([source](examples/standard-model-lagrangian-a4.md)): + +

+ The Standard Model Lagrangian rendered on one A4 page +

+ ## Install ### Prebuilt binaries @@ -371,6 +393,10 @@ std::fs::write("talk.pdf", bytes)?; `--font-fallback` - DejaVu does not include CJK glyphs; for PDF Chinese/Japanese/Korean decks, pass `--cjk PATH` or include a CJK face in `--font-fallback` +- `direction: rtl` right-aligns Arabic/Hebrew but does not yet perform full + Unicode bidirectional reordering of mixed LTR/RTL runs +- GFM table column alignment (`:---:`, `---:`) is applied in PDF / SVG / PNG / + HTML; the editable Office/ODF outputs (pptx/odp/odt/docx) don't carry it yet - Speaker notes attach natively in PPTX / ODP, can be emitted as a PDF companion with `--with-notes`, can be appended to DOCX/ODT via `--doc-style speaker-notes`, and can be bundled with deck + handout via diff --git a/docs/img/equations.png b/docs/img/equations.png new file mode 100644 index 0000000000000000000000000000000000000000..40b29f8521c58cee1422ae7943f73d76a960be22 GIT binary patch literal 58458 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%0D?2W|)b}z7SpFajQut(k1JWygq?+5_@ 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 literal 0 HcmV?d00001 diff --git a/docs/img/slides.png b/docs/img/slides.png new file mode 100644 index 0000000000000000000000000000000000000000..e3ee4bd21a6e79e936c8e8a9c386b79d657c9e3e GIT binary patch literal 141470 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

|6>hM=TotPlX~{}x4^ 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

"); + for (col, cell) in headers.iter().enumerate() { + write!(out, "", align_attr(col))?; render_runs(out, cell)?; out.push_str("
"); + for (col, cell) in row.iter().enumerate() { + write!(out, "", align_attr(col))?; render_runs(out, cell)?; out.push_str("EIU3 zA)6c;)BdQ@Eoxy*r9!7cEz>ox7)dg+I6v-iaCQv&J89WsK1V|(pGu_u=aiU37#iM? z%m?lJDa0AubeLqL`_%_4u&kJ5YSvk%9_##CvRh5Kz zd|RV#1{;oiywUGNFCR@-Grox3mn=3YaC{BOc5f<)+5laT?Xw&3Q_#JhR+0(4^60#! z%8Jz!D^cd;#@%v39Va{~@7Jl8-Lsop&T45t{bMp9N|L$-T{IAy zWT><8H%0O}F9{yD$_GJt^EnXz>B^&r8ll6Mc%xT?b(uwcuasRh64**?SP7=^SkX=L9RPbJ z53mBKSw6W^LjHRB0=+>`WfwS33>)jB+QZrKRRV<|qt~G!FMyK`{W-Zj){pvv>EVBD z970Z4zg}X88=h35nsmiHgO09(#a{3nOrb-{1nHBK(LQI_ zwAMkG@ZcVvy|CpVumIZUEaqTOArd~bv7}=YHgr))_`?IG)G(r$^>i}^%wPY-8|;6R zBEAKh+bDr+_TjO@lzW=4m=~$8Ho3rKgNhzh&2>(Ki40U2pCms8OH(}@Y}%D2V}E$epk#8)Ll;Q_b8S#frhAy(*Bi?!@MsUm2$}93}nDH<>eWIK8{Kj zzR#ec-Q}MJINb^)N-F<}wwbQZ?ADZw?^?!Db05z1u%gRg?`1Cgiy=(mQ-{}kd18{V zqd-S@kxqGo8SSj-nS;688D8RXw|G3X@}8Tj!x*{q{n>-abcKHN5Z^9+Z5G1c?Iq zQjX<2JJ!Ez&(js(1GG(jyp(u5PiBk9!AZZ3S4?DZAd9ej$YX5#-ZZ`3)FgKK-_iMy z{b?RnPHM(d3-vXMRmH?+UZB=)&MPsx`}+k16LMbuhumLNuL|~N4S3e^{u@ExKin5~ z7bOSC0*4Tg3;~hR8pypGUt~OhHtV615wJ$|7u&49mzvVn(Fe|(jaY?%JWG;p%g~9P zvo0KJ+#`WZ3Y0AWL33nToafIxgT(SjkLyU#VbkzC&Ymb)%5C`1uOQ%*p$O)LmCZ&- z!e2N7&&Hza9~^GgI)f+{zRfhf~`9KNInk?N(r@o^9M7& zZ-K}^njc==g0)RC^|5{cw%{r!Bldpps}aa^1ckk{;2lUdPp8S-+$v?UBx~1B7u!%t zAbXyz2^GW(>xy1NBzq6Rp@JlkErpV}OyK6w`1MlLGjw$5L?HB2vN zuhZruvMo`vB;Q(F*lIA0g9M)XaA6RrMPf*}=|CzCl$;5l`w@8d)^`bUGT9xcegM(^ zT;RySrMU0H0WdXKS$xJry#~^s3}WH}^@8>N9@LyLRa^~CeNv*4NQJQNFX60MC0A=v zIr*hU(@lrxZ%(K5-680k@=%E?V0r>LDwcRec9c{e9mCMz?p;DE?DZcYc}-y8l8FOe z^sbgOTq(j)9%bAx3D5e*FH+glYTfVUMy}Wli_`5RF6K)a~a)CKjahtT$PK$zg?FCdglA&P< z|7qcU*K|ENmspbYF*!}I+7r9?TKuAL;^^jDRXc9sLdf?Fm^wgZ2IywO&%K$m)wYPra4{ESw z#|<7bWSx8blp)4^pUOvB zbU2S`;FPa4)v)kAr=GJOkQNelY>{ianQ_0GMMn1F&WAUr5t~qjct0`jz8WcW(lRDiesVZ~y z1$H>tASK>4*iM3o_-{3=QfB(Y$9I_9kN1ZoSBQLOva?nIQJk&D5 z3&$8O0h7)bNpaUZz^<;$NtdREpf6J5v|c(;+idCEsj~Z_ZbnA}B;ZFGNEJ5fJ;-6G z4$a$=Sq+_?`jFO4K$`g91fTz#_*#&Hnmbt$2Os5Y%mQQO*vyFcbY!Kb&753ZU2Q(2 z0Q^mV-CDbm53r5l#B&VjHng*{)+G+kZR0@D_Vjf=%iI=8n`2e2DRK?V+mad%I*G-zme%pjj;@<{3^H1G z+vwrD0f*RJfmCj^sxk6)BK35rEKy`A3&QHG$H6x9Q(`qReoV$)nPg#;Yn1wk26I3 zcd^b2C97T3h!+X+M_;p-HlaBW6=`I2ox!)zVn7Wv#6g7i1Uv^|;|_oQTVC)xU>QQ) ztPs@C>i*t#{rMXi>@M3RtJ(u{QogCh?wr#a{&fBP$6cJC7Fqy6cej8u_BO%yqJL+c zF;NZIX2vqsB_f+sTW?d`#kRIn-%J-Xzt=HY*XT19Ta9M(Wy6S*G&aWd*Sp7`|A*!X z{v7oy>F4Bv{s5)QlayfXm_zw2ubS~a2Jz99+5xb;tCVQ03XX{Y^Vgb;KZHV2$7|YwGPq-gp%v+#+*!I#8>tCO9z)@flaFm@4z7c^v{5Y z*(94S8uWqHOEpoYkQIG(!Oeb3-gUq{-{=0L{6rtn@$h25s&iXo&sMVqF70$Jod)}f zdwK$nqb;1V^`uJaK+r>mIn0eo4)K9*>zfsk(o^OD+EvpDQ-B$i+0>i!(sL0?0C|EX zpzYSwWJp}h@jqRMY11FS!ur|nzy6_o{lmo~7YLGc{p?9z-P z=-|^sUYJx$15bZ<2BQ;B{GfW8)9?5AQIAi~eWt8C_WB5Ng1V#;u~8@yV*}h^{OF$$b=%Y0PxCJ_ zqgQ$Na7+H!Q&|i-2d+t&ko+!3o zq>(Ulu0*}uj!Rq5R_vdNOnu{j-?g|nYn)Axet+KCB_`v#-dNO9)?HvoxbKyWkYk+v z^gPsv-RU_-sMm}eE^Z>@Ou{2OaJ3VJmets5Z=jqh+AYn7WlV5@Cm6@Vxqc*tt^nu1jED-gv68@0 zTa;H`vVQHw$DvNl!@zdZ(OMMKZ9##d`Wq>5U1Q*R)C@FJ`~+r02?T%C&J8T~OD%77 z2?v1j?!blt)szHro%hQyTEkRlBLXCF9GnwGW5~b0y7vca>FJem+7blOrDO=(V8d9g z=VU3CbaZqoP7B5VvT|~m+)$f9kwyf~?SNb^_Q0tASpnF%_gXBA=^_s9g33x-{!Nio z7fAh{a2`BjehdW`7M(>4@7bZTk$P^>bI2+X@Cy)Oj_NP&3S>neof@0DR%>2R)>-`Y zgD$!0{-a>{yXtd=u1559#l?}CiEFiLZ6IGpq_noQ*>$`4 zs(jY?4g@($HOl60PY6;8DPAI$&0v(N$`}+4?=ugN{jx}YXn&Cg3{4wvuYn5l4{T)E z!Ue=pKSv*O?b%P8r5$(uDB8e?1DaCPliMG!3kd5Ug%Lni8ccI2E&9#jJf{eX4_bE9 zlX_y!z-)}_HuCszqh;Fxn$g=8tjzR6t-tmHcFFl2%Cj2|GB*#G9Zw<$^`p%U^366j z@E%SnmViC4R*ijnlE>IqOMU#Iw`rfx8^}qL%#ud&?JTM;)vIPNNEqo0ZxXj(qljZk ziupeD?@rQ3z+Ymh%X3uagpAIvF8I+qh8Gt!5BzW{vv+qnOJxaeg~h%O=Ed4WMFC|9bI{81oG-~SH% zm-Bw{FJUGoL377z!(aOOC(nuaj5o}4%>1_ZaLk4Zib=e?gdQb2{<}nu^6KwdXgoX$ zi6--bWqQqb{mW$EDt^l}Hk2T*Qi$;#CAx<@yGG9c^t^ zbP1LJGD|OY?B0gVU+tlQz*!E;&Ue$j!;LS}8+>nIDEkk7}3lAo4H zko~nM$t{9X{-j&|u(DNE7oCV#O#jF(2B@fm?4zMjY&UA^XY>03{rZ=!rk5%a*^IwG z+jYIEG&!v_?O@&e>@2P)p;r6p(1Fi&qvxN~q@qEc@7mfMNL2Qnt(h(5?KjPQKyet~ zY5FrFH))Lbd_AO)Z9aL@FCzOFNU054$Z8*_>aBQi;2;&Y@NpN6z5KoD|LFe%3Wo51 z$q8KN<>7jVH5sT8uH(Q$U(!9d0QRY#n!?c1SuQbAR83jk-R&Yb@W4HT{;ur{q1(*4u=}1a+9rAs4xF@wZQOu`|#( zIIkI!bOS93a`w9NmU@oWZS5Epvf-a>$irLdnf{BaW5OO&dePP%{BG(SC_qWu%-gEI~W5Ce2{K7y_DKr%NOtn5_* zI>L{<5|v!dunWvJM?PFBJlsT3ZUfcXi<9%8mK&~)X4;w=@j1<@kucyz--@1LZv9nM zP|r2AI6LwOUHpU2A~n{L~H-yp%$7p>}ZQpdbMZDcTyGbo~yYkMEq&hiv z24b^4FxH83Vg6WpbH}UxRr#!ss=w=dt(AzRalkPuox-x+PRBjv3C=Tx}uRyJb zsjea;<)KlW)2zT^phVJ5oT_sg*+a5#4g6qmkV3y|95txSo+C*-3I{+i?061PYfay? znb#$OAz#4Qz6#C2!-?>;PIb-1H6#7DA})H{|I9l>vDD7i(#f%G+@h-f*&6`8uzR7! zgO8l9@5dqhk!}eXw4VA&t6{0K9Z$&&xK><5Hir}<-;@nml|f{tmRZC5e&g8y-hk^s zlWMNwV9(?>21w-3~p{2eJ3QdM1lPFA0F_3mJCEw%T%-qTBIoU_Dxz;`vl&< zF@6bw8-ud-mpmO-Fyd82=bx~<0!kD|{OHv+iH(w6g3sQE;q<0%w)nK(Je#yA$;k*C zV^x~-^v(BONp7mWs@YE2X-vA>2~1k-ERO$5IDTOx(sFsSh@ITTxEIvdNE@3W1I}+J zl^UZzT=P4R(=isfds^gRg#x-STD7(MA~*AG$ECMtgsF}`_!GxIilgd>Up%y{1vf7W zmPbV#?9mFC6=|duyYrFoGXp+L$vKW;HtWOilMpd79PX!HcxPEoB_%SVVb^*XDG&O8_yd*4L93Pwcknv2jX zP$w#$SXihjRzL!E-iA{q!Y2UNfT#-aPCpH0(3nir1fc)1_n~3w%_KssoIkT0F4~Sy zIs1V=;A5ULnUKpzyB`}0tRB|uqc5^%b?1O@m0Zp+Cg zbj^3tvo}2g7cA+%4N;0VQK}9AS5OA{D%F48mmLS`;NXHm&*pK>p}@EA$yypZt$#sytgQ;~Tfcain9EmY4N-csc_jgV#dkKz2pPOG~kU$+js za%D40?@u!Apq|%i&f(!tv-Ae6^WB+rK=+;C(T`NLu&`bLXeY2tK~V1cc&2Y918u82 zu#f{mn;x(}FAg<%p6UaJVJ{D`I-Y2XgGEQBwP+TVvdGT5-tl!yR=Fu?bH7*A3xp;n zc&h*5{tC^ z0_N-hxUrkC>vR&?`sm}NE}#7_r?|xCSFxRJf1fEiGNBQHroP7Qu~w`38m{%clQn1# zL;k;#I(UR1md)nU(X>p!hmQaajm_Nv$0`sR#bh=&?9G=J@^je+Vm*{Q41xk6h^ZwD z(myO1_%8-(TWx#(u{>;SM)9o1!$F`KuJf?}d#taizcGeH&^I6}`TImoLuekrm^>+7 zDAzZ~XXSbdfo;zIc!mkw8#c(TS4K9U%?|R?!Mu%TSrz9(dCkSCw3Ki8>IG4a!j3z} zbNif78|~s<`RCCEpcl6DU5HId&R73EJF6jOnm{;x&8c8FG%l18sZ+L6G@7maUwGMEO z1Kw4x&53{|pK9`*s`}em=Dkz{?uRN*uXnEPF@DyjiFYkVZXcz%pdTeImirU;kpEqF z#Z*TXc!z*j@l{DSpRPfQ0ZiYMl^N8q;%vms=;>n$#(JnSyA7|@T8$qOxw)z3P8Kh* z@Y{_icij_6{-$@dU0c}0X!SLD^0Nyd-q15KmI48?@V2cJH%a$760CIBwSenM=k?y; zF(X6I{%S0@>5nRA*iTE(_1`u?7Gbvj%IA8OA4tkd%l2*;Yr*}P`*ZU@4b8{SMdCn; zbR^$~)?sEajH~UZm}aRmV+vjrqGC!UlXd@I*v$);U%iuC<1tBkWH9?;*$HMV^%|}v z#IU6!icbWgq38&NNU$SUk9fu6*lKlDNi$x>zbS>z+PT@)nxBjTiJ$c=DH)ofsP*U9 z?B!>NJmtA9k~#kwr~8J-k?5Pvy=+z#GJAO5+OmoohXyIrr{In7$E|%MAwwz)?IDSh zl~ucm9N7N;tI_*vfPtZauJ{)-9lZ%77jSPMcHg+)fWSSMMhZc?%-!l# zB_%c>Wu^WXn)iwazZ(eHWcooR`E8+d%s9dP0?h`NGD&--#s*OQZFnuK)2(6_v}_!lO7G3EpY zabT=jKJZ`{WnjRbNDVqfb|)T9N{c>((9uoUVy@X5zytjl-+@Dt6c1Q11XC2QZ{j>S zVQ+mlcY)uQT&Xq}&0JG+GF=X{8T4^%ZR&a_qudKA=;J4mvaWyZnI-Mj92?yYpbj^KL0@m3WCd}ZYw(?UsgETHy zPF~v9t4j>8cNoODY`-!!^Hcde`kK3u5I|(`cv@Zqr{mWmF0@3hTsPL(Vgta&(2mJx z!SKiT=3AFWRUdi=W>69ZSeLD{o3kSChEW?G06x&P9iGr&teb0m{S%0Z9{O_!FHukA z6bGkkHr;_~5LXK0#fwxP6LB$z>lCKjjlr}j+9?CNrT$d5Z+XcqzPgQ{+P?w`0Pre+ zU`i^&5SYCUQ#XV-U=PrAx`VW1>b*rQFK*=Bp1b5;Wy@ zwFeGN^Oa0nZ?^1iRs;B~f6y_s4el1_4$950fv8FxOyR9;5a9o~lRXXjCtZCqK>{Bm z*vee>oL>=_%Ya77!lGrKoiqzR?d{ABP4j|1=sp6G#2Mxp2Ty!o20tbwN=O$-5z+fw zw)b~!>HRBM8TsQB0C~*?55Gi*z4b6^NRJu^7X@s7=k?O35N9=ZW*WMHKh)RnRv!bK>J7Qq(EuYj|q$T(F&P3=|N^d6nX$a8wx~FziU@>VUBiO|Z-zR}4XxA& zXRC)MrWe~Ql{A)Z&}pkahg9dpmDTvx(t z@_hB%UpvMRY`J`XKd9U?B$*ROct(Uy3xF4_B!&e31XA0bc{LM?!uu8PinXV~w3N-$ z5b-SW;e*xv>8UZ2%vesl0cUg=Ww3bGm%&Y*F`i{!MHO{X|Hoh7U=wyzNXqDFpz?

HPR{?G{ePeN(zIzW8`ppW9W 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 literal 0 HcmV?d00001 diff --git a/docs/torture-test-findings.md b/docs/torture-test-findings.md index d08cbad..9cbb395 100644 --- a/docs/torture-test-findings.md +++ b/docs/torture-test-findings.md @@ -50,11 +50,13 @@ Status legend: ☐ open · ☑ fixed · ◐ in progress · ⊘ won't-fix / large ## MEDIUM -- ☐ **M1 — Nested blockquotes collapse** — `>`/`>>`/`>>>` renders only the deepest - level; outer levels vanish. +- ☑ **M1 — Nested blockquotes collapse.** Fixed: the quote accumulator only + resets on the outermost `>`, so nested levels keep the outer paragraphs + (`src/parser.rs`). -- ☐ **M2 — Long unbreakable tokens overflow the right edge** — bare long URLs, long - words, long inline `code` (no emergency character break). +- ☑ **M2 — Long unbreakable tokens overflow the right edge.** Fixed: PDF/SVG + wrappers hard-break a token wider than the line into character chunks; HTML + uses `overflow-wrap: anywhere` (`src/pdf.rs`, `src/svg.rs`, `src/html.rs`). - ☑ **M3 — `{width=N%}` > 100 leaks literal `{width=…}` as body text** (+ spurious slide). Fixed: `parse_width_pct` now clamps to 1..=100 instead of returning `None` From 73962689d87bc77e6b55de7e82f9ff170b11d1b4 Mon Sep 17 00:00:00 2001 From: JavaPerformance Date: Sun, 14 Jun 2026 14:55:04 +0200 Subject: [PATCH 6/6] Trim the published crate and tidy ignores MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Exclude the binary manual formats (docs/manual, ~1.2 MB — HELP.md already carries the text) and orphan pre-rendered sample PNGs from the published package: the crate drops from ~8.9 MB to ~5 MB while keeping the embedded fonts, README gallery, examples, and licenses. - Tidy the .gitignore editor-dir list. --- .gitignore | 1 - Cargo.toml | 5 +++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 78efe6a..4e46006 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,6 @@ Cargo.lock.bak # IDE .idea/ .vscode/ -.claude/ *.iml # LibreOffice lock files (created when opening a doc for testing) diff --git a/Cargo.toml b/Cargo.toml index bff045e..d687a42 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,6 +22,11 @@ exclude = [ "/examples/*.odp", "/examples/*.docx", "/examples/*.odt", + # The manual in binary office formats (~1.2 MB) is redundant with HELP.md + # for a source crate; keep it in the repo, out of the published package. + "/docs/manual", + # Large pre-rendered sample images not referenced by any shipped example. + "/examples/assets/*.png", ] [[bin]]