Ano ang HTML to Markdown conversion?
HTML ang rendered markup na ipinapakita ng browser — <h1>, <ul>, <table>, <a> at ang iba pa. Markdown ay isang magaan na plain-text format na gumagamit ng minimal na bantas (# para sa heading, * para sa diin, - para sa mga aytem ng listahan) para i-encode ang parehong istraktura. GitHub Flavored Markdown (GFM) ay nagpapalawak ng orihinal na CommonMark spec gamit ang mga table, strikethrough, task list, at autolink. Ang pag-convert ng HTML sa Markdown ay nagbabalik ng rendered o na-export na HTML sa editable na plain-text Markdown — eksakto ang kailangan ng content migration mula sa CMS, o ng README cleanup.
Aling GitHub Flavored Markdown feature ang sinusuportahan ng output?
Ang bundled na turndown@7.2.0 engine na may turndown-plugin-gfm extension ay nag-eemit ng buong GFM superset mula sa iyong HTML: ATX-style heading mula # hanggang ###### mula sa <h1>–<h6>, ordered at unordered list na may nesting, bold **text** at italic *text*, strikethrough ~~text~~ mula sa <del>, inline link [text](url) at image , fenced code block na may language hint (```js), inline code span `code`, pipe table mula sa <table>, GFM task list - [ ] / - [x] mula sa checkbox input, blockquote >, at horizontal rule ---. Ang preview pane ay muling nagre-render ng na-emit na Markdown gamit ang marked@12.0.2 para makumpirma mo ang conversion nang biswal.
Paano gumagana ang HTML to Markdown conversion?
Ang bawat conversion ay tumatakbo nang lokal sa iyong browser gamit ang tatlong bundled na library — walang CDN, walang fetch, walang telemetry. Ang mga pangunahing hakbang ay:
- Sanitize: ang naka-paste na HTML ay unang dinadaan sa
DOMPurify.sanitize(html, { USE_PROFILES: { html: true } })para alisin ang mga<script>element, bawaton*event handler, atjavascript:URI bago ang anumang bagay ay maglakad sa markup. Ang DOMPurify ang parehong XSS sanitizer na ginagamit ng Mozilla MDN, Atlassian, at Microsoft 365. - Convert: ang
turndownService.turndownay naglalakad sa cleaned DOM at nag-eemit ng GitHub Flavored Markdown — ang mga heading ay nagiging#prefix, ang mga listahan ay nagiging-/1.na aytem, ang<table>ay nagiging pipe table, at iba pa. Ang Markdown ay isinusulat sa read-only na<textarea>viavalue(hindiinnerHTML), kaya ito ay likas na ligtas. - Render: ang na-emit na Markdown ay muling ina-parse ng
marked.parse, muling nisa-sanitize ngDOMPurify, at itinalaga sainnerHTMLng preview pane para makakuha ka ng visual na kumpirmasyon na ang Markdown ay nag-ro-round-trip sa inaasahang istraktura. Ang live mode ay nagde-debounce ng input ng 150 ms para ma-update ang output habang nagpe-paste ka nang hindi na-thrash ang parser.
Bakit gamitin ang tool na ito para mag-convert ng HTML sa Markdown?
- Privacy: ang bawat sanitize, convert, at render pass ay nangyayari sa iyong browser. Ang HTML — kasama na ang mga na-export na CMS post, internal documentation, at confidential na page source — ay hindi kailanman umaabot sa aming mga server.
- XSS-safe bilang default: ang naka-paste na HTML ay dinadaan sa DOMPurify bago ito nilakad ng turndown, at ang preview pane ay muling nagpapatakbo ng re-rendered na HTML sa DOMPurify bago ang
innerHTML, kaya ang pag-paste ng markup na naglalaman ng<script>tag oonerror=handler ay gumagawa ng inert na preview at malinis na Markdown. - GFM-kumpleto: ang mga
<table>element ay nag-co-convert sa Markdown pipe table, ang<del>sa strikethrough, at ang mga checkbox list sa GFM task list. Iniiwan ng karamihang online converter ang mga table sa HTML → Markdown path — ang bundled naturndown-plugin-gfmextension ay nagpapanatili ng mga ito.
Ano ang mga karaniwang gamit ng HTML to Markdown conversion?
Ang pag-convert ng HTML sa Markdown ay lumalabas sa content migration, dokumentasyon, at pag-archive:
- CMS migration: pag-export ng WordPress o Ghost post bilang HTML at pag-convert sa Markdown para sa Hugo / Jekyll / 11ty / Astro static-site rebuild. Pinapanatili ng conversion ang mga heading level, link, listahan, at inline emphasis.
- README cleanup: pag-paste ng rendered HTML ng wiki page o web article at pag-pull nito pabalik sa editable na Markdown para sa project README o docs site, sa halip na i-type muli ang istraktura nang mano-mano.
- Pag-archive at mga tala: pagkuha ng HTML email o web clipping at pag-convert sa Markdown para sa storage sa Obsidian, Notion, o plain-text knowledge base — nananatiling diff-friendly ang Markdown at nakakaligtas sa format churn.
Ano ang hitsura ng isang HTML to Markdown na halimbawa?
Ang pag-paste ng <h2>Heading</h2><ul><li>a</li><li>b<ul><li>nested</li></ul></li></ul> ay gumagawa ng Markdown na may ## Heading, nested bullet list, at preview pane na nag-re-render pabalik sa parehong nested structure. Ang pag-paste ng <table> na may header row at dalawang data row ay gumagawa ng katumbas na | col | col | pipe table — kumpirmahin na pinapanatili ng conversion ang mga heading, listahan, at table.
Tumatakbo ba nang buo ang HTML to Markdown converter na ito sa aking browser?
Oo. Ang bawat sanitize, convert, at render pass ay tumatakbo nang lokal bilang JavaScript sa loob ng iyong browser tab. Ang tatlong bundled na library — turndown@7.2.0 (na may turndown-plugin-gfm@1.0.2), marked@12.0.2, at DOMPurify@3.1.7 — ay ipinapadala mula sa parehong origin ng page, kaya walang CDN dependency, walang fetch, walang XMLHttpRequest, walang navigator.sendBeacon sa input. Gumagana rin ang tool offline kapag na-load na ang page, dahil ito ay isang static HTML/CSS/JS bundle na may vendor library na nakakopya sa tabi nito. Ang mga na-export na post, internal doc, at confidential na page source ay nananatili sa iyong device.
XSS-safe ba ang rendered preview pane?
Oo. Ang naka-paste na HTML ay dinadaan sa DOMPurify.sanitize bago ito nilakad ng turndown, at ang bawat HTML string na itinalaga sa innerHTML ng preview ay dinadaan din sa DOMPurify.sanitize(html, { USE_PROFILES: { html: true } }). Ang DOMPurify ay ang open-source XSS sanitizer na pinapanatili ng Cure53; ito ang parehong library na ginagamit ng Mozilla MDN, Atlassian, at Microsoft 365 para palakasin ang user-supplied HTML. Ang default na html profile ay nag-aalis ng <script> element, bawat on* event-handler attribute (onerror, onclick, atbp.), at javascript: URI scheme. Ang pag-paste ng <img src=x onerror=alert(1)> ay gumagawa ng preview kung saan ang document.querySelector('#output-preview img[onerror]') ay nagbabalik ng null at walang alert na nagpapaputok.
Naco-convert ba ang mga GFM table mula sa HTML?
Oo. Ang HTML → Markdown direction ay gumagamit ng turndown-plugin-gfm, na nagdaragdag ng custom turndown rule na naglalakad sa <table> node at nag-eemit ng katumbas na pipe-table Markdown — isang header row, isang |---|---| alignment row, tapos ang mga data row. Iniiwan ng karamihang online converter ang mga table sa path na ito; pinapanatili ng tool na ito ang mga ito. Ang strikethrough (<del>text</del> → ~~text~~) at task list (<input type="checkbox"> → - [ ] / - [x]) ay nag-co-convert sa parehong paraan.
Maco-convert ba nang maayos ang aking HTML?
Para sa canonical GFM feature set — heading h1 hanggang h6, ordered at unordered list na may nesting, bold / italic / strikethrough, inline link, inline image, fenced code block na may language tag, inline code span, pipe table, task list, blockquote, horizontal rule, at autolink — ang conversion ay malinis at predictable. Mga edge case: ang mga HTML comment (<!-- ... -->) ay inaalis (wala sa Markdown ang comment syntax); ang inline styling at class attribute ay itinatanggal dahil wala itong katumbas sa Markdown; at ang mga hindi karaniwang inline tag tulad ng <sub> / <sup> ay niko-convert sa plain text. Ito ay mga dokumentadong gawi ng turndown, hindi bug.
Sinusuportahan ba ang syntax highlighting sa mga fenced code block?
Hindi sa v1. Ang mga fenced code block ay nire-render sa preview na may monospaced font at banayad na background pero walang per-language token highlighting. Ang pagdaragdag ng syntax highlighting ay mangangailangan ng pag-bundle ng Prism o highlight.js, ang bawat isa ay nagdadagdag ng 15–40 KB kasama ang per-language grammar file at theme matrix na kailangang iayon sa Workshop Terminal palette. Sa ngayon, nakatuon ang renderer sa kawastuhan at XSS-safety; kung may demand ng gumagamit para sa inline highlighting, ang opt-in toggle ay isang magagawang follow-up.
Ang HTML to Markdown Converter na ito ay may kasamang turndown@7.2.0 (+ turndown-plugin-gfm@1.0.2), marked@12.0.2, at DOMPurify@3.1.7 na naka-bundle sa parehong origin, nag-eemit ng buong GFM feature set, at nagsa-sanitize ng bawat rendered HTML string bago ito humipo ng DOM. Walang upload, walang CDN, walang telemetry — ang bawat byte ay nananatili sa iyong browser.