PDF → HTML Converter

Fast, client-side conversion with a modern, responsive UI. Choose selectable text or pixel-perfect image mode.

Drag & drop your PDF here

or click to choose a file

Conversion Mode
1.5×

Preview

Show generated HTML (read-only)

All processing happens in your browser. Scanned PDFs without embedded text work best in Image Mode (no OCR).

${styleComment}

Converted: ${escapeHTML(file.name || 'PDF')}

Mode: ${getMode()==='image'?'Image (PNG)':'Text Layer'} • Scale: ${scale.toFixed(2)}× • Generated by in-browser converter

${pageHTMLSnippets.join('\n')}
`; output.value = generatedHTML; htmlDetails.open = false; downloadBtn.disabled = false; setProgress(100, 'Done'); }); // Download downloadBtn.addEventListener('click', () => { if (!generatedHTML) return; const blob = new Blob([generatedHTML], { type: 'text/html;charset=utf-8' }); const url = URL.createObjectURL(blob); safeDownload(url, (getMode()==='image' ? 'pdf-to-html-image' : 'pdf-to-html-text') + '.html'); }); // Utilities function safeDownload(url, filename) { const a = document.createElement('a'); a.href = url; a.download = filename; document.body.appendChild(a); a.click(); setTimeout(() => { URL.revokeObjectURL(url); a.remove(); }, 800); } function escapeHTML(s='') { return s.replace(/[&<>"']/g, m => ({'&':'&','<':'<','>':'>','"':'"',"'":'''}[m])); }