/** * html2pptx v4 — Convert HTML slide to pptxgenjs slide with positioned elements * * v4 Changes (2026-05-07) — broader & more faithful HTML coverage: * ── NEW ELEMENT SUPPORT ───────────────────────────────────────── * - : full table extraction with cells, header row, alignment & basic styling * -
: extracted as a horizontal line shape * - : inline SVG serialized & rasterized to PNG, then placed as image * - : hyperlink preserved on text runs (url + tooltip) * - /: rendered with PptxGenJS subscript/superscript run option * ── COLOR / FILL ──────────────────────────────────────────────── * - HSL / HSLA color parsing in addition to RGB / RGBA / hex / named * - Linear gradients now emit real PptxGenJS gradient fill on shapes (best-effort) * - background-image: url() on containers preserved as a layered image (under text) * ── SHAPE / IMAGE ─────────────────────────────────────────────── * - border-radius: 50% on square boxes → ellipse (oval) shape * - object-fit: cover/contain/fill respected via sizing & cropping * - border-radius now produces a rounded image clip (approximation) * - opacity / box-shadow forwarded to the inserted picture * ── TEXT ──────────────────────────────────────────────────────── * - text-shadow → run-level glow / shadow approximation * - text-align: justify mapped to PptxGenJS 'justify' * - per-run text-decoration: line-through preserved as strike * ── ROBUSTNESS ────────────────────────────────────────────────── * - z-index 'auto' no longer collapses to 0 incorrectly * - placeholders carry z-index so chart insertions layer correctly * - color parsing falls back gracefully on unknown values * - non-finite numeric CSS values default safely * -