Công cụ chuyển đổi

Chuyển Markdown sang HTML

Chuyển Markdown sang HTML là công cụ chuyển đổi trên trình duyệt, biến CommonMark và GitHub Flavored Markdown thành HTML đã khử trùng — gồm tiêu đề, bảng, danh sách công việc và khối mã có hàng rào. Không có gì được tải lên; cùng renderer chạy phía sau POST /v1/convert/markdown/html.

# markitdown-ai

Convert documents to clean Markdown.

## Features

- PDF, Word, and slides
- [x] Tables stay tables
- [ ] Mermaid coming later

## Install

```bash
pnpm add @markitdown-ai/sdk
```

## API

| Method | Path |
| --- | --- |
| POST | /v1/convert/{name} |
| GET | /v1/conversions/{id} |

Cách thực hiện

Cách chuyển Markdown sang HTML

Bạn có thể dán gì

  • Mọi Markdown: CommonMark cùng bảng, danh sách công việc và gạch ngang của GitHub Flavored Markdown
  • Kết xuất chạy trong trình duyệt — không có gì được tải lên khi bạn gõ
  • Không cần tài khoản để xem trước, sao chép hoặc tải xuống
  • Không có giới hạn kích thước cố định; một tài liệu rất lớn bị giới hạn bởi bộ nhớ trình duyệt
Chuyển Markdown sang HTML: trình soạn thảo Markdown bên trái thành trang HTML kết xuất bên phải

Vì sao nên dùng

Vì sao nên dùng công cụ chuyển Markdown sang HTML này

Một trường trong CMS, một site tĩnh và một trình soạn email đều cần markup, không phải mã nguồn Markdown. Công cụ này giữ những phần mang ý nghĩa và loại bỏ những gì khiến HTML thô trở nên không an toàn.

Chạy trong trình duyệt của bạn

Dán Markdown và bản xem trước HTML cập nhật cục bộ. Không có gì được tải lên, và không cần tài khoản để xem trước, sao chép hay tải xuống.

CommonMark cùng GFM

Tiêu đề, danh sách, liên kết, trích dẫn và khối mã có hàng rào theo CommonMark; bảng, danh sách công việc và gạch ngang theo GitHub Flavored Markdown.

Khử trùng theo mặc định

Thẻ script, trình xử lý sự kiện nội tuyến và scheme href hay src không an toàn đều bị loại, nên HTML an toàn để dán vào một trang bạn không kiểm soát hoàn toàn.

Đoạn mã hoặc cả tài liệu

Chỉ sao chép phần markup đã kết xuất cho một trang đã có bố cục riêng, hoặc tải một tài liệu HTML hoàn chỉnh kèm định kiểu đã xem trước.

Neo cho tiêu đề

Mỗi tiêu đề nhận một id ổn định, an toàn với URL, được tạo giống như API, nên mục lục hay liên kết sâu vẫn hoạt động sau khi bạn xuất bản.

Cùng engine như API

Bản xem trước này và POST /v1/convert/markdown/html chạy cùng renderer, nên HTML bạn sao chép ở đây khớp từng byte với một lệnh gọi tự động.

Vấn đề

Vì sao Markdown thô không thể vào thẳng một trang web

Cú pháp Markdown không phải HTML

Một trường CMS, một mẫu email hay một chủ đề site tĩnh cần markup, không phải mã nguồn Markdown, nên văn bản thô phải được chuyển đổi trước khi có thể định kiểu hay nhúng.

Bộ phân tích thường bỏ sót GFM

Bảng, danh sách công việc và gạch ngang là các phần mở rộng của GitHub Flavored Markdown; bộ phân tích chỉ theo CommonMark kết xuất chúng thành ký tự sổ và dấu ngã thay vì cấu trúc.

Markdown không đáng tin có thể mang script

Markdown có thể nhúng HTML thô, gồm thẻ <script> và trình xử lý sự kiện nội tuyến, phải bị loại bỏ trước khi đầu ra an toàn để chèn vào một trang bạn không kiểm soát hoàn toàn.

Markdown sang HTML: văn bản sao chép lộn xộn bên cạnh cấu trúc Markdown gọn gàng

Những gì được giữ lại

Những gì công cụ chuyển Markdown sang HTML này giữ lại

Tiêu đề và văn bản nội tuyến
Tiêu đề ATX và setext, nhấn mạnh, liên kết và trích dẫn theo CommonMark; mỗi tiêu đề cũng nhận một id an toàn với URL được tạo từ văn bản của nó.Source: CommonMark Spec
Bảng, danh sách công việc và gạch ngang
Bảng của GitHub Flavored Markdown trở thành phần tử <table>, mục [ ] và [x] trở thành ô chọn, và ~~text~~ trở thành <del>.Source: GitHub Flavored Markdown Spec
Markup đã khử trùng
Thẻ <script> thô, trình xử lý sự kiện nội tuyến, và giá trị href hay src ngoài http, https và mailto đều bị loại trước khi HTML được trả về.Source: HTML Living Standard
Mã có hàng rào
Khối mã có hàng rào giữ nội dung và nhãn ngôn ngữ; bản xem trước trên trình duyệt không tự áp dụng chủ đề tô sáng cú pháp nào.Source: CommonMark Spec
HTML thô trong nguồn
Markdown nhúng các thẻ HTML thô khác đi qua cùng bộ khử trùng, nên một thẻ được nhúng không bao giờ được coi là markup đáng tin.Source: HTML Living Standard

Trích đoạn Markdown sang HTML đã kiểm chứng· https://markitdown.ai/blog/why-pdfs-break-llms

<h2 id="what-actually-goes-wrong">What actually goes wrong</h2><p>When teams pipe documents straight into an LLM or a retrieval index, a few failure modes show up again and again:</p><ul><li><strong>Reading order breaks.</strong> Multi-column layouts interleave. A two-column page becomes "line 1 left, line 1 right, line 2 left, line 2 right…", so a sentence a human reads top-to-bottom arrives at the model scrambled.</li><li><strong>Tables collapse.</strong> Copy-paste turns a table into a loose run of numbers. The relationship between a header and its cell — the entire point of a table — is gone.</li><li><strong>Headings disappear.</strong> The visual hierarchy (this is a section, this is a subsection) is encoded as font size and weight, not structure. Strip the styling and you get one undifferentiated wall of text.</li><li><strong>Noise creeps in.</strong> Page numbers, running headers, hyphenated line breaks, and stray ligatures end up inline, polluting prompts and embeddings alike.</li></ul><p>Read more in the <a href="https://markitdown.ai/blog/why-pdfs-break-llms">full article</a>.</p>

Trường hợp sử dụng

Trường hợp sử dụng chuyển Markdown sang HTML

Ở bất cứ đâu đích đến cần markup trong khi nguồn vẫn là Markdown, công cụ này là bước trung gian.

Tài liệu và site tĩnh

Biến một README hay một bài trong cơ sở tri thức Markdown thành HTML mà trình tạo site tĩnh hoặc trường CMS mong đợi.

Bản nháp email và bản tin

Soạn một thông điệp bằng Markdown, chuyển nó sang HTML, rồi dán đoạn mã vào trình soạn email bạn thực sự dùng để gửi.

Dọn dẹp câu trả lời của LLM

ChatGPT, Claude và Gemini trả về Markdown; hãy chuyển sang HTML khi đích đến — một ticket, một trang wiki — kết xuất markup thay vì dấu sao thô.

Nhà phát triển tự động hóa kết xuất

Gọi endpoint render từ một pipeline lưu Markdown nhưng phục vụ HTML, mà không phải thêm thư viện Markdown vào mọi dịch vụ.

Markdown sang HTML online: trang HTML kết xuất dùng cho website, email và tài liệu

API

API Markdown sang HTML cho nhà phát triển

Kết xuất chạy đồng bộ và tốn 0 tín dụng — nó vẫn tính vào giới hạn tốc độ mỗi phút của gói bạn. Gửi Markdown dưới dạng văn bản, hoặc tham chiếu một file .md đã lưu, tới POST /v1/convert/markdown/html kèm khóa API; HTML đã khử trùng trả về nội tuyến.

Đọc hướng dẫn API
curl -X POST https://api.markitdown.ai/v1/convert/markdown/html \  -H "x-api-key: mdai_…" \  -H "Content-Type: application/json" \  -d '{ "text": "# Notes\n\nHello **world**." }'

Tài liệu và site tĩnh

Hầu hết công cụ tài liệu giữ Markdown làm nguồn có thể chỉnh sửa và chỉ tạo HTML ở bước dựng hoặc xem trước. Công cụ này cho bạn kiểm tra riêng bước tạo đó: dán đúng Markdown mà trình tạo site sẽ đọc, và xác nhận tiêu đề, bảng cùng khối mã xuất ra theo cách chủ đề của bạn mong đợi trước khi bạn commit một thay đổi. Nó cũng hữu ích khi một trường CMS nhận HTML nhưng người viết của bạn làm việc bằng Markdown — chuyển một lần, dán đoạn mã, và tiếp tục chỉnh sửa nguồn Markdown cho lần sửa tiếp theo thay vì sửa tay phần markup đã tạo.

  • Giữ file Markdown làm nguồn chân lý; coi HTML là sản phẩm của quá trình dựng.
  • So sánh đầu ra đã kết xuất với chủ đề thật của site bạn, không chỉ với định kiểu xem trước của trang này.
  • Chạy lại chuyển đổi sau mỗi lần sửa nguồn thay vì vá tay HTML đã tạo.

Khử trùng

Markdown có thể nhúng HTML thô, và HTML thô đó có thể chứa thẻ <script> hoặc một trình xử lý sự kiện nội tuyến như onclick. Trước khi công cụ này trả về kết quả, markup đó đi qua một bộ khử trùng loại bỏ phần tử script, tước mọi thuộc tính bắt đầu bằng "on", và chỉ cho phép liên kết cùng nguồn ảnh http, https và mailto. Những gì còn lại là cấu trúc ngữ nghĩa — tiêu đề, đoạn văn, danh sách, bảng, liên kết, hình ảnh và mã — chứ không phải định kiểu trang trí. Công cụ không chèn class hay file CSS vào đoạn mã đầu ra; bản tải cả tài liệu thêm chủ đề bạn thấy trong bản xem trước để file tự mở đúng cách.

Đoạn mã hay cả trang

Một đoạn mã là phần markup bên trong — tiêu đề, đoạn văn và bảng — không có <html> hay <head> bao quanh. Nó thuộc về bên trong một trang đã tự định nghĩa cấu trúc tài liệu và định kiểu, ví dụ một trường nội dung CMS hay một component kết xuất các phần con. Một tài liệu đầy đủ thêm doctype, tiêu đề và một stylesheet nhỏ để file có thể mở trực tiếp trong trình duyệt hoặc lưu riêng. Dán cả tài liệu vào một trường nội dung vốn mong đợi một đoạn mã là lỗi phổ biến: trình duyệt có thể vẫn kết xuất, nhưng các thẻ <html> và <head> lồng nhau không hợp lệ ở đó và có thể gây nhầm lẫn cho công cụ hạ nguồn vốn mong đợi một đoạn mã.

FAQ

Câu hỏi về Markdown sang HTML

Chuyển Markdown sang HTML hoạt động thế nào?

Dán hoặc gõ Markdown và công cụ kết xuất HTML đã khử trùng cục bộ trong trình duyệt, dùng cùng renderer như POST /v1/convert/markdown/html. Không có gì được tải lên trong khi bạn gõ.

Chuyển Markdown sang HTML có hỗ trợ GitHub Flavored Markdown không?

Có. Bảng, danh sách công việc và gạch ngang theo đặc tả GitHub Flavored Markdown, cùng với tiêu đề, danh sách, liên kết và mã của CommonMark.

Đầu ra HTML có được khử trùng không?

Có. Thẻ script, trình xử lý sự kiện nội tuyến và scheme href hay src không an toàn đều bị loại, nên HTML an toàn để dán vào một trang bạn không kiểm soát hoàn toàn.

Tôi có thể nhận cả tài liệu HTML thay vì một đoạn mã không?

Có. Chọn một tài liệu hoàn chỉnh kèm định kiểu đã xem trước, hoặc chỉ sao chép đoạn mã cho một trang đã có bố cục riêng.

Tôi có cần tài khoản để chuyển Markdown sang HTML không?

Không. Xem trước, sao chép và tải xuống đều hoạt động mà không cần đăng nhập, vì kết xuất chạy cục bộ trong trình duyệt của bạn.

Công cụ này có gọi API trong khi tôi gõ không?

Không. Việc gõ vẫn cục bộ. API chỉ chạy khi bạn gọi trực tiếp POST /v1/convert/markdown/html, ví dụ từ một script.

Có giới hạn kích thước cho Markdown tôi chuyển đổi không?

Không có giới hạn tải lên cố định vì không có gì được tải lên; giới hạn thực tế phụ thuộc vào bộ nhớ trình duyệt của bạn với các tài liệu rất lớn.

Tôi có thể chuyển Markdown sang HTML từ mã không?

Có. POST Markdown của bạn dưới dạng văn bản, hoặc một file .md đã lưu, tới /v1/convert/markdown/html kèm khóa API. Tốn 0 tín dụng. Xem /developers.

Chuyển Markdown sang HTML ở mọi nơi.

Dùng thử miễn phí — không cần đăng ký.