Đi tới trình soạn thảo
mdprint

Miễn phí · Riêng tư · Không đăng ký

In Markdown đẹp mắt

Dán, gõ hoặc kéo thả tệp. Xem trước cập nhật tức thì. In hoặc tải PDF - tất cả ngay trong trình duyệt.

100% local No sign-up 18 languages
Mã nguồn Markdown
Xem trước

Bắt đầu gõ trong trình soạn thảo phía dưới

Bảng Tô màu mã Công thức (KaTeX) Sơ đồ Mermaid Danh sách công việc Chú thích Mục lục tự động Sẵn sàng để in Xử lý cục bộ Không đăng ký 18 ngôn ngữ Chế độ tối Bảng Tô màu mã Công thức (KaTeX) Sơ đồ Mermaid Danh sách công việc Chú thích Mục lục tự động Sẵn sàng để in Xử lý cục bộ Không đăng ký 18 ngôn ngữ Chế độ tối

Xử lý cục bộ

Local processing. Your files never leave your device. Không tải lên, không máy chủ, không theo dõi nội dung.

Xem trước theo thời gian thực

Thấy sao in vậy. Bản xem trước trùng khớp với bản in.

Dùng được khắp thế giới

18 ngôn ngữ. Hỗ trợ viết phải-sang-trái. Phông CJK tích hợp sẵn. Hoạt động ngoại tuyến sau khi tải lần đầu.

Cách hoạt động

Ba bước. Không tài khoản.

Mở trình soạn thảo
01

Dán hoặc tải lên

Gõ Markdown trực tiếp, dán từ clipboard, hoặc thả tệp .md vào trình soạn thảo.

02

Xem trước ngay

Bản xem trước cập nhật theo từng ký tự. Tiêu đề, bảng, mã, công thức, sơ đồ - tất cả đều hiện ra.

03

In hoặc tải về

Bấm In để mở hộp thoại trình duyệt, hoặc tải PDF gọn gàng với ngắt trang đúng chỗ.

GitHub Flavored Markdown, cùng những phần mở rộng bạn thực sự dùng.

Tất cả những gì Markdown làm được, đều in được

Bảng GFM

Cột được canh, có tiêu đề, hỗ trợ đầy đủ cú pháp kiểu GitHub.

Tô màu mã

highlight.js tự nhận diện hơn 190 ngôn ngữ.

Công thức (KaTeX)

Công thức nội dòng $x^2$ và khối $$...$$ hiển thị nhanh.

Sơ đồ Mermaid

Sơ đồ luồng, tuần tự, gantt, lớp - kết xuất SVG sắc nét.

Danh sách công việc

Cú pháp ô tích, in ra đúng chuẩn.

Chú thích

Chú thích kiểu tham chiếu, vẫn nguyên vẹn qua các trang.

Mục lục tự động

Mục lục tùy chọn, sinh ra từ các tiêu đề của bạn.

Kiểu in chỉn chu

Ngắt trang, lặp tiêu đề bảng, kiểu chữ gọn gàng.

Trình soạn thảo nền tối

Mặc định nền sáng. Đổi sang tối cho những đêm viết khuya.

Nhập tệp

.md, .markdown, .txt. Kéo thả hoặc bấm nút.

18 ngôn ngữ

Giao diện gốc bằng tiếng Anh, Hà Lan, Pháp, Ả Rập, Trung và nhiều hơn nữa.

Không theo dõi

Chúng tôi không thấy nội dung của bạn. Plausible chỉ đếm lượt xem trang.

Tính năng

Tất cả những gì mdprint hỗ trợ, kèm ví dụ.

Phân tích Markdown

CommonMark đầy đủ cộng với GitHub Flavored Markdown.

Bên dưới, mdprint dùng markdown-it - một bộ phân tích Markdown nhanh, tuân thủ đặc tả, viết bằng JavaScript. Nó triển khai CommonMark chính xác, rồi đắp thêm GitHub Flavored Markdown lên trên. Gạch ngang với hai dấu ngã, tự động liên kết URL trần, khối mã rào với nhãn ngôn ngữ, và bảng cú pháp gạch dọc đều hoạt động như trên github.com. Nếu Markdown của bạn kết xuất tốt trong một README của GitHub, ở đây cũng vậy.

Bảng

Cú pháp gạch dọc và gạch ngang của GFM, có canh chỉnh.

Bảng dùng cú pháp gạch dọc và gạch ngang chuẩn. Dòng tiêu đề, dòng phân cách với --- cho mỗi cột, rồi tới các dòng dữ liệu. Thêm dấu hai chấm ở đầu, cuối hoặc cả hai đầu của dòng phân cách để điều khiển canh: :-- canh trái, --: canh phải, :-: căn giữa. Bảng dài kéo qua nhiều trang sẽ tự lặp tiêu đề ở đầu mỗi trang in.

Danh sách công việc

Cú pháp ô tích, hiển thị thân thiện khi in.

Viết - [ ] cho công việc chưa làm, - [x] cho công việc đã làm. Chúng hiện ra dưới dạng ô tích thực trong bản xem trước và in ra dưới dạng ô vuông đầy hoặc rỗng, đảm bảo tài liệu vẫn dễ đọc trên giấy. Danh sách công việc hoạt động bên trong danh sách gạch đầu dòng lồng nhau, bạn có thể dựng to-do phân cấp.

Chú thích

Chú thích kiểu tham chiếu, không bị vỡ qua các trang.

Đặt một dấu chú thích bằng [^1] trong văn bản, rồi định nghĩa nội dung ở chỗ khác bằng [^1]: nội dung chú thích. Các chú thích được gom ở cuối tài liệu với liên kết ngược về vị trí xuất hiện. Khu chú thích có kiểu chữ riêng, cỡ nhỏ hơn, giống như bạn mong đợi trong một bài báo in.

Tô màu mã

Hơn 190 ngôn ngữ qua highlight.js, có tự nhận diện.

Các khối mã rào được tô màu tự động. Ghi ngôn ngữ ngay sau ba dấu huyền mở (```python, ```typescript, ```rust) để phân tích chính xác, hoặc bỏ trống và để highlight.js đoán từ nội dung. Mã nội dòng với một dấu huyền có nền đơn cách nhẹ. Khối mã được định dạng để không bị ngắt giữa khi in.

Công thức (KaTeX)

Công thức nội dòng và hiển thị, dàn chữ chất lượng in.

Công thức nội dòng dùng dấu đô la đơn ($E = mc^2$). Công thức khối dùng hai dấu đô la trên dòng riêng. mdprint kết xuất cả hai bằng KaTeX, nhanh hơn MathJax và cho ra chất lượng in, vẫn sắc nét tối đa khi xuất PDF. Mọi lệnh toán LaTeX tiêu chuẩn đều được hỗ trợ: phân số, tích phân, tổng, ma trận, chữ Hy Lạp, và toàn bộ bộ ký hiệu AMS-math.

Thử trong trình soạn thảo →

Sơ đồ Mermaid

Sơ đồ luồng, tuần tự, gantt, lớp và trạng thái.

Viết một khối mã rào với nhãn ngôn ngữ mermaid và mdprint sẽ kết xuất nó thành sơ đồ SVG sắc nét. Sơ đồ luồng với graph LR hoặc graph TD, sơ đồ tuần tự giữa các diễn viên, gantt có ngày tháng, sơ đồ lớp có quan hệ, máy trạng thái - mọi loại sơ đồ Mermaid hỗ trợ đều dùng được. Kết xuất SVG nghĩa là sơ đồ vẫn nét ở mọi độ phân giải in.

Mục lục tự động

Sinh ra từ cấu trúc tiêu đề của bạn.

Chèn ${toc} (hoặc [[toc]]) bất kỳ đâu trong tài liệu để có một mục lục tự động sinh từ các H2 và H3 phía sau. Trong xem trước, đó là một danh sách liên kết; trong bản PDF in ra, đó là dàn ý lồng nhau. Hữu ích cho tài liệu dài khi người đọc muốn nhảy thẳng tới một mục.

Kiểu in chỉn chu

Ngắt trang, lặp tiêu đề, kiểu chữ gọn gàng.

Bảng kiểu in được làm có chủ đích. Tránh ngắt trang giữa khối mã, bảng và sơ đồ. Tiêu đề bảng lặp lại ở đầu mỗi trang in. Trang giấy theo đúng cài đặt của bạn - A4 hoặc Letter, dọc hoặc ngang, lề bình thường/hẹp/rộng. Khung giao diện biến mất: không thanh công cụ, không trình soạn thảo, chỉ còn tài liệu đã kết xuất.

Trình soạn thảo nền tối

Mặc định sáng. Tối khi bạn cần.

Các trang giới thiệu giữ nền sáng vì đọc văn dài trên nền trắng nhẹ nhàng hơn. Trình soạn thảo là nơi được dùng nhiều sau hoàng hôn, nên nó có công tắc sáng/tối riêng, không phụ thuộc chủ đề trang. Lựa chọn của bạn được ghi nhớ cục bộ.

Nhập tệp

Kéo thả hoặc bấm nút. .md, .markdown, .txt.

Thả tệp Markdown vào bất cứ chỗ nào trong trình soạn thảo và mdprint sẽ nạp nó. Nút Nhập làm điều tương tự qua hộp chọn tệp. Tệp được đọc bằng API FileReader của trình duyệt - không có gì được tải lên. Tên tệp được dùng làm gợi ý cho tên PDF nếu tài liệu không bắt đầu bằng H1.

Giao diện đa ngôn ngữ

18 ngôn ngữ, hỗ trợ RTL, phông CJK.

Giao diện được dịch sang 18 ngôn ngữ: tiếng Anh, Hà Lan, Pháp, Đức, Tây Ban Nha, Bồ Đào Nha, Trung giản thể, Trung phồn thể, Nga, Ả Rập, Việt, Nhật, Hàn, Ý, Thái, Indonesia, Thổ Nhĩ Kỳ và Hindi. Tiếng Ả Rập lật bố cục cho đọc phải-sang-trái. Các chữ viết CJK và Ấn có phông dự phòng phù hợp để hiển thị đúng trên mọi thiết bị.

Cách dùng mdprint

Một hướng dẫn thực dụng. Đọc tuần tự, hoặc nhảy tới mục bạn cần.

Bắt đầu

Cách nhanh nhất để thử mdprint là bắt đầu gõ ngay trong trình soạn thảo ở trang chủ. Nó tải sẵn một tài liệu mẫu sử dụng đủ mọi tính năng - bảng, mã, công thức, sơ đồ - để bạn thấy ngay một trang hoàn chỉnh trông thế nào. Xóa mẫu và gõ nội dung của bạn, hoặc dán từ nơi bạn đã viết.

Nếu trên máy đã có tệp Markdown, bạn có hai cách để nạp. Cách thứ nhất là kéo nó từ trình quản lý tệp và thả lên khung soạn thảo. Một viền sáng sẽ xuất hiện quanh vùng thả khi bạn đang kéo. Thả tệp xuống, trình soạn thảo sẽ được điền đầy nội dung. Cách thứ hai là bấm nút Nhập trên thanh công cụ và chọn tệp từ hộp chọn. Cả hai cách đều đọc tệp cục bộ - không có gì bị tải lên.

mdprint chấp nhận tệp .md, .markdown và .txt. Phần mở rộng .txt hữu ích cho tài liệu được viết theo Markdown nhưng lại được công cụ khác lưu bằng phần mở rộng chung. Nếu bạn cố nhập một tệp có phần mở rộng khác, mdprint sẽ báo lỗi và giữ nguyên nội dung hiện tại.

Viết Markdown

Nếu bạn chưa từng viết Markdown, các luật lệ ít đến mức học trong năm phút là xong. Bạn gõ văn bản thuần, và bốn ký tự đảm nhận phần lớn công việc. Ký hiệu # ở đầu dòng tạo tiêu đề - một # là tiêu đề lớn nhất, sáu ##### là nhỏ nhất. Các dấu * và _ quanh một từ cho in nghiêng khi mỗi bên một dấu, và in đậm khi mỗi bên hai dấu. Dấu - hoặc * ở đầu dòng tạo gạch đầu dòng. Thụt vào hai dấu cách để lồng một gạch đầu dòng dưới một gạch khác.

Mã được xử lý bằng dấu huyền. Một dấu huyền mỗi bên một cụm sẽ định dạng nó thành `inline code`. Ba dấu huyền trên một dòng riêng mở khối mã, và ba dấu nữa kết thúc. Nếu bạn đặt tên ngôn ngữ ngay sau ba dấu huyền mở (```python, ```typescript, ```sql), khối mã sẽ được tô màu theo ngôn ngữ đó. Không có chỉ dẫn ngôn ngữ, bộ tô màu sẽ đoán từ nội dung và thường đoán đúng với các ngôn ngữ phổ biến.

Liên kết và ảnh đều dùng dấu ngoặc vuông và ngoặc tròn. Liên kết là [văn bản bạn thấy](URL). Ảnh giống y nhưng có dấu chấm than đứng trước: ![văn bản mô tả ảnh](URL của ảnh). Khi in ra PDF, các URL ảnh trỏ tới máy chủ truy cập công khai sẽ được tải về và nhúng vào. Ảnh trên máy bạn hoặc sau xác thực sẽ không hiển thị - hãy thả trực tiếp vào trình soạn thảo dưới dạng URL dữ liệu base64 nếu cần.

Bảng là phần Markdown trông cầu kỳ ở mã nguồn nhưng kết xuất rất sạch. Một dòng tiêu đề, một dòng phân cách bằng các gạch ngang, và một hoặc nhiều dòng dữ liệu, tất cả tách bằng dấu gạch dọc. Các cột không cần thẳng hàng trong mã - bộ kết xuất sẽ lo phần khoảng cách. Thêm một dấu hai chấm ở một hoặc cả hai đầu các gạch ngang trong dòng phân cách để điều khiển canh: :--- trái, ---: phải, :---: giữa.

Dùng các tính năng nâng cao

Công thức toán dùng cú pháp TeX bọc trong dấu đô la. Một dấu đô la ở mỗi bên cho công thức nội dòng: $a^2 + b^2 = c^2$. Hai dấu đô la trên dòng riêng cho công thức hiển thị, căn giữa và cỡ lớn hơn. Tất cả lệnh toán LaTeX bạn quen - \frac, \int, \sum, \sqrt, chữ Hy Lạp, ma trận, bộ ký hiệu AMS - đều dùng được vì mdprint dùng KaTeX, vốn triển khai cùng cú pháp.

Sơ đồ dùng cú pháp Mermaid bên trong một khối mã rào gắn nhãn ngôn ngữ mermaid. Sơ đồ đơn giản nhất là lưu đồ: mở bằng graph LR (trái-sang-phải) hoặc graph TD (trên-xuống-dưới), rồi viết các nút nối với nhau bằng mũi tên. Mermaid cũng hỗ trợ sơ đồ tuần tự (thể hiện luồng tin nhắn giữa các diễn viên theo thời gian), gantt (dòng thời gian dự án có phụ thuộc), sơ đồ lớp (quan hệ đối tượng), và sơ đồ trạng thái (máy trạng thái). Tài liệu Mermaid có ví dụ cho mọi loại.

Chú thích giúp văn xuôi dễ đọc trong khi vẫn đính kèm nguồn dẫn hoặc giải thích phụ. Đánh dấu chú thích trong văn bản bằng [^1] (con số có thể bất kỳ - chúng được đánh lại khi xuất). Ở chỗ khác trong tài liệu, định nghĩa chú thích bằng [^1]: nội dung chú thích. mdprint gom mọi chú thích ở cuối tài liệu in và thêm liên kết ngược nối mỗi chú thích về nơi nó xuất hiện trong văn bản.

Nếu tài liệu dài, hãy gõ chuỗi nguyên văn [[toc]] vào nơi bạn muốn có mục lục. mdprint sẽ thay nó bằng một danh sách liên kết lồng nhau tới mọi H2 và H3 trong tài liệu. Trong bản PDF in ra, cùng mục lục đó trở thành dàn ý điều hướng mà các trình đọc PDF có thể dùng.

Tùy chỉnh đầu ra

Mở bảng Cài đặt từ thanh công cụ để điều khiển cách PDF được tạo. Khổ giấy có hai lựa chọn: A4 (chuẩn ngoài Bắc Mỹ) hoặc Letter (chuẩn trong Bắc Mỹ). Hướng giấy chuyển giữa dọc và ngang - ngang hữu ích cho tài liệu có bảng hoặc sơ đồ rộng. Lề có ba mức: hẹp cho nhiều không gian khả dụng hơn với nội dung dày, bình thường là mức quen thuộc, rộng chừa chỗ cho ghi chú viết tay trên bản in.

Trình soạn thảo có chủ đề sáng và tối riêng, độc lập với phần còn lại của trang. Công tắc trên thanh công cụ chuyển đổi giữa hai chế độ. Bản xem trước và bản in luôn ở chế độ sáng, vì nền sáng in ra giấy đẹp hơn.

Nếu bạn thường dùng cùng một bộ tùy chọn, lựa chọn gần nhất được nhớ cục bộ và áp dụng tự động lần sau khi bạn mở mdprint trên cùng trình duyệt.

In so với tải PDF

Nút In mở hộp thoại in bản địa của trình duyệt. Từ đó, mọi hệ điều hành hiện đại đều cung cấp Lưu dưới dạng PDF làm đích đến - Chrome, Firefox, Safari và Edge đều hỗ trợ trên macOS, Windows và Linux. Đi qua hộp thoại in cho bạn nhiều quyền kiểm soát nhất: chọn máy in bất kỳ, xem trước từng trang, đổi hướng theo trang nếu trình điều khiển hỗ trợ, và ở một số máy in có thể đổi khay giấy hoặc bấm ghim.

Nút Tải PDF bỏ qua hộp thoại in và tạo trực tiếp tệp PDF trong trình duyệt, rồi kích hoạt tải xuống. Nó dùng Cài đặt hiện tại của bạn (khổ giấy, hướng, lề) để định dạng đầu ra. Cách này nhanh hơn khi bạn đã biết chính xác mình muốn gì và không cần sự linh hoạt của hộp thoại in. Nó hoạt động bằng cách kết xuất trang thành một ảnh độ phân giải cao rồi đặt ảnh đó vào PDF, nên kết quả luôn khớp với những gì bạn thấy trên màn hình. Đánh đổi là: vì trang trở thành một ảnh, văn bản trong PDF này không thể chọn hay tìm kiếm.

Hai cách khác nhau ở chỗ cuối cùng thứ gì nằm trong tệp. Lưu dưới dạng PDF, qua nút In, giữ văn bản là văn bản: vẫn chọn và tìm kiếm được, sắc nét ở mọi mức thu phóng, và sơ đồ vẫn ở dạng vector. Ngược lại, Tải PDF là ảnh chụp nhanh chỉ với một nhấp, nên nhanh và chính xác đến từng điểm ảnh, nhưng văn bản không thể chọn. Dùng Lưu dưới dạng PDF khi bạn muốn văn bản chọn được hoặc kết quả sắc nét nhất ở mọi mức thu phóng; dùng Tải PDF khi bạn chỉ muốn một bản sao nhanh, đúng y những gì trên màn hình mà không mở hộp thoại in.

Xử lý sự cố

Ngắt trang ở chỗ kỳ cục. mdprint tránh ngắt giữa khối mã, bảng và sơ đồ, nhưng không can thiệp vào văn xuôi. Nếu một tiêu đề rơi xuống cuối trang trong khi phần nội dung lại sang trang sau, cách sửa đơn giản là thêm vài câu phía trên hoặc phía dưới để đẩy tiêu đề đi. V1 chưa có cú pháp ngắt trang thủ công - đã nằm trong danh sách V2.

Ảnh không hiện trong PDF. Nguyên nhân hay gặp nhất là URL ảnh trỏ tới hệ thống tệp cục bộ (file://) hoặc một máy chủ không cho phép truy cập chéo nguồn. Hoặc nhúng ảnh dưới dạng URL dữ liệu trực tiếp trong mã Markdown, hoặc tải nó lên một dịch vụ lưu trữ ảnh cho phép đọc công khai. Imgur, các máy chủ nội dung người dùng của GitHub, và phần lớn CDN đều ổn.

Công thức không hiện. Kiểm tra mã nguồn xem có dấu đô la chưa thoát trong văn bản thường không - một dấu $ lẻ có thể mở một vùng toán và nuốt phần còn lại của đoạn. Nếu cần một dấu đô la thực sự trong văn xuôi, hãy thoát: \$. Nếu cú pháp đúng mà vẫn không hiện, có thể lệnh LaTeX đó không nằm trong danh sách KaTeX hỗ trợ - tài liệu KaTeX có tham chiếu đầy đủ.

Sơ đồ trống trơn. Mermaid khá nghiêm về cú pháp. Lỗi thường gặp là thiếu dấu cách sau graph LR, ID nút có dấu cách (hãy dùng camelCase hoặc gạch dưới), hoặc một mũi tên trỏ tới nút chưa định nghĩa. Mở bảng điều khiển của trình duyệt - Mermaid sẽ in thông báo lỗi cụ thể khi phân tích thất bại.

Bảng xuống dòng lạ. Nếu bảng rộng hơn trang, mdprint sẽ thu nhỏ để vừa. Với bảng rất rộng, hãy chuyển sang hướng ngang trong Cài đặt, hoặc tái cấu trúc bảng thành danh sách. PDF không xử lý cuộn ngang như web.

Mẹo và thủ thuật

Tận dụng phím tắt. Cmd+P (hoặc Ctrl+P trên Windows và Linux) mở hộp thoại in. Cmd+S (Ctrl+S) kích hoạt Tải PDF. Các phím tắt riêng của trình duyệt cho tìm (Cmd+F), tải lại (Cmd+R), và phóng to (Cmd+cộng/trừ) vẫn hoạt động bình thường - chúng không xung đột với mdprint.

Bắt đầu mọi tài liệu bằng một H1. H1 đầu tiên trở thành gợi ý tên tệp PDF, tiêu đề tài liệu cho khả năng truy cập, và tiêu đề nổi bật trên đầu trang in. Nếu bạn bắt đầu bằng H2 hoặc thấp hơn, tên tệp sẽ về "document.pdf" và bạn phải đổi tên thủ công sau khi tải.

Nhúng ảnh thành URL dữ liệu khi cần riêng tư. Nếu không muốn một trình đọc PDF tải ảnh từ máy chủ từ xa khi mở tệp, hãy chuyển ảnh sang URL dữ liệu base64 và nhúng trực tiếp. Phần lớn hệ điều hành đều có công cụ tích hợp hoặc đơn-mục-đích cho việc này. Tệp kết quả lớn hơn nhưng hoàn toàn tự chứa.

Dùng danh sách công việc cho bản kiểm in. Nếu bạn đang làm một danh sách giấy - danh sách hành lý, danh sách giao nhận, quy trình từng bước - hãy dùng cú pháp danh sách công việc Markdown với - [ ]. Các ô sẽ in ra dưới dạng vuông để bạn đánh dấu bằng bút.

Kết hợp mermaid và mã trong tài liệu kỹ thuật. Một khuôn mẫu phổ biến là cho thấy lưu đồ của một quy trình, rồi đến phần mã thực thi nó. Markdown cho bạn làm cả hai trong cùng một tệp, và mdprint kết xuất chúng sao cho in ra cạnh nhau gọn gàng.

Phím tắt bàn phím

Cmd+P hoặc Ctrl+P - mở hộp thoại in.

Cmd+S hoặc Ctrl+S - tải về dưới dạng PDF.

Cmd+B hoặc Ctrl+B trong trình soạn thảo - in đậm văn bản được chọn.

Cmd+I hoặc Ctrl+I trong trình soạn thảo - in nghiêng văn bản được chọn.

Cmd+/ hoặc Ctrl+/ trong trình soạn thảo - bật/tắt chú thích cho dòng hiện tại (chú thích HTML trong ngữ cảnh Markdown).

Esc trong trình soạn thảo khi ở toàn màn hình - thoát toàn màn hình.

Tìm hiểu thêm về Markdown và in ấn

Markdown là gì?

Markdown là một cú pháp định dạng văn bản nhẹ, do John Gruber tạo ra năm 2004. Bạn viết đúng ý mình - # cho tiêu đề, ** cho in đậm, - cho gạch đầu dòng - rồi bộ kết xuất biến nó thành HTML, PDF hay bản in gọn gàng. Markdown trở thành định dạng viết mặc định trên GitHub, Reddit, Discord và phần lớn công cụ cho lập trình viên hiện nay vì nó dẹp gánh nặng định dạng: bạn cứ gõ, cấu trúc tự xuất hiện.

GitHub Flavored Markdown (GFM) bổ sung cho đặc tả gốc các bảng, danh sách công việc, khối mã rào, tự động liên kết và gạch ngang. Phần lớn công cụ hôm nay đều triển khai GFM, kèm vài phần mở rộng phổ biến: chú thích, công thức qua KaTeX, sơ đồ qua Mermaid và danh sách định nghĩa. mdprint hỗ trợ tất cả ngay từ đầu.

So với gõ trên trình xử lý văn bản, Markdown mang lại hai lợi thế quan trọng khi cần in. Thứ nhất, mã nguồn là tệp văn bản thuần bạn sở hữu - không định dạng độc quyền, không khóa nhà cung cấp, không bị xáo trộn bất ngờ khi mở trên máy khác. Thứ hai, cùng một mã nguồn luôn cho ra cùng một kết quả: cùng tiêu đề cùng kiểu, cùng khối mã cùng phông đơn cách, cùng bảng cùng đường kẻ. Sự nhất quán đó chính là điều bạn cần khi in ghi chú, tài liệu, luận văn hay báo cáo.

Cách chuyển Markdown sang PDF

Có ba hướng phổ biến. Thứ nhất là các công cụ dòng lệnh như Pandoc - mạnh mẽ, nhưng cần cài đặt, cần môi trường LaTeX hoạt động nếu muốn dàn trang nghiêm túc, và phải thử-sai khá nhiều trước khi đầu ra ưng mắt. Thứ hai là các bộ chuyển trực tuyến yêu cầu bạn tải tệp lên một máy chủ bạn không kiểm soát. Cách này tạm ổn với bản nháp, nhưng không phù hợp cho bất cứ thứ gì cần bảo mật, và đa số chèn watermark hoặc tường phí sau trang đầu.

Hướng thứ ba là cách mdprint làm: xử lý mọi thứ trong trình duyệt của bạn. Bạn dán hoặc thả tệp Markdown vào trình soạn thảo, một bộ phân tích Markdown bằng JavaScript biến nó thành HTML, trình duyệt kết xuất với CSS hướng-in, rồi bạn hoặc mở hộp thoại In bản địa (mọi hệ điều hành hiện đại đều có Lưu dưới dạng PDF), hoặc tạo PDF trực tiếp bằng thư viện phía máy khách. Không tải lên, không gọi vòng qua máy chủ, không phải chờ.

Ba lý do nên chọn xử lý ngay trong trình duyệt. Một, riêng tư: một tài liệu về quyết định tuyển dụng, tờ khai thuế hay hợp đồng nháp không nên đi qua máy chủ của ai khác chỉ để biến thành PDF. Hai, tốc độ: một khi trang đã tải, việc chuyển đổi là tức thì và bạn có thể lặp đi lặp lại - chỉnh tiêu đề, in, chỉnh tiếp. Ba, ngoại tuyến: sau khi mdprint đã tải một lần, bạn vẫn có thể dùng trên máy bay hoặc sau tường lửa công ty mà không gặp trục trặc.

Cẩm nang cú pháp Markdown

Tiêu đề: # H1, ## H2, ### H3 cho tới ###### H6. Mỗi tài liệu chỉ nên có đúng một H1 - nó sẽ thành tiêu đề trong bản in và gợi ý tên tệp khi tải PDF.

Nhấn mạnh: *nghiêng* hoặc _nghiêng_, **đậm** hoặc __đậm__, ~~gạch ngang~~. Có thể kết hợp **_đậm nghiêng_** nếu thật sự cần.

Danh sách: không thứ tự dùng -, * hoặc +; có thứ tự dùng 1., 2., 3. (các số không cần liên tục - Markdown sẽ đánh lại). Thụt vào hai hoặc bốn dấu cách để lồng. Danh sách công việc dùng - [ ] cho chưa hoàn thành và - [x] cho đã hoàn thành.

Liên kết và ảnh: [văn bản](https://example.com) là liên kết, ![mô tả](image.jpg) là ảnh. Liên kết kiểu tham chiếu [văn bản][id] kèm dòng riêng [id]: https://example.com giúp văn xuôi dễ đọc.

Mã: dấu huyền (backtick) bao quanh cho mã `inline`, ba dấu huyền cùng nhãn ngôn ngữ tùy chọn cho khối. Ghi rõ ngôn ngữ (```python, ```typescript) để bộ tô màu chọn đúng văn phạm.

Bảng: cú pháp gạch dọc và gạch ngang. Một dòng | Cột | Cột |, dòng tiếp |---|---|, rồi đến các dòng dữ liệu. Dấu canh (:--, --:, :-:) quyết định canh cột khi in.

Công thức: nội dòng với $E = mc^2$, khối với $$ \int_0^\infty e^{-x} dx = 1 $$. mdprint dùng KaTeX, kết xuất nhanh và in sắc nét.

Sơ đồ: một khối mã rào với nhãn ngôn ngữ mermaid sẽ thành sơ đồ SVG. Lưu đồ, tuần tự, gantt, máy trạng thái, lớp - đều được hỗ trợ.

Vì sao xử lý cục bộ lại quan trọng

Mỗi lần một tài liệu rời khỏi thiết bị của bạn, bạn lại cộng thêm một loại rủi ro mà bạn không thể tự kiểm tra trọn vẹn. Máy chủ nhận có thể ghi lại nội dung yêu cầu. Proxy TLS ở rìa có thể đệm. Tập lệnh phân tích bên thứ ba trên trang tải lên có thể nắm tên tệp. Dịch vụ giám sát lỗi có thể bắt được dấu vết bao gồm một đoạn nội dung. Đa số lần thì không có gì xảy ra - nhưng bạn không biết được lần nào sẽ là lần xấu, và đã xảy ra thì không thể quay đầu.

Xử lý cục bộ xóa bỏ cả loại lỗi này. mdprint tải về JavaScript cần dùng đúng một lần, rồi chạy mọi thứ trong hộp cát của trình duyệt: bộ phân tích Markdown, bộ tô màu cú pháp, bộ kết xuất công thức, bộ vẽ sơ đồ, bộ tạo PDF. Tệp của bạn không hề di chuyển. Chúng tôi không vận hành một máy chủ nào có thể nhìn thấy nó, kể cả khi muốn.

Bảo đảm riêng tư ở đây mang tính cấu trúc, không phải lời hứa. Không có điểm cuối tải lên nào để cấu hình sai, không cơ sở dữ liệu nào có thể vô tình giữ bản nháp của bạn, không nhân viên hỗ trợ nào có thể bị lừa bằng kỹ thuật xã hội để xem tệp. Thứ không thể rò rỉ, chính là thứ chưa bao giờ được gửi đi.

mdprint so với các công cụ khác

Pandoc là chuẩn mực vàng cho chuyển đổi tài liệu nếu bạn thoải mái với dòng lệnh và đang xuất bản nội dung khoa học hoặc tầm cỡ sách. Đó là công cụ phù hợp cho một tác giả giao bản thảo 300 trang với mẫu LaTeX tùy chỉnh. Nó quá mức cho việc in một biên bản họp hay README của một dự án.

Typora và Obsidian là những trình soạn thảo Markdown xuất sắc với khả năng xuất PDF tích hợp. Đáng cài nếu Markdown là bề mặt viết hằng ngày của bạn. mdprint dành cho trường hợp khác: bạn có một tệp cần in hoặc chia sẻ một lần và không muốn cài thêm gì để làm việc đó.

Các tiện ích trình duyệt chuyển Markdown sang PDF nhìn chung hoạt động bằng cách gửi nội dung lên một dịch vụ từ xa. Điều đó đưa lại đúng vấn đề riêng tư mà mdprint sinh ra để né. Nếu bạn cần việc chuyển đổi diễn ra trên máy của người khác, bạn không cần mdprint - bạn cần một dịch vụ lưu trữ. Nếu không, thì cũng không cần.

Google Docs, Microsoft Word và Pages mở được Markdown nhưng kết xuất không đồng nhất và không giữ mã nguồn. Đầu ra PDF tạm ổn, nhưng mỗi lần mở tệp bạn lại bị kéo trở lại trình soạn thảo độc quyền. mdprint giữ mã nguồn ở dạng văn bản thuần. Tệp của bạn vẫn dễ chuyển sang mọi nơi, mãi mãi.

FAQ

Hỏi đáp thường gặp

Nếu câu hỏi của bạn không có ở đây, hãy viết tới anton@fokuus.be.

Có. Hoàn toàn miễn phí, không cần đăng ký, không tường phí, không quảng cáo. Được Fokuus xây dựng và duy trì như một tiện ích công cộng.

Về mdprint

mdprint là một công cụ miễn phí, ưu tiên quyền riêng tư, để chuyển Markdown sang PDF. Toàn bộ chạy trong trình duyệt của bạn - không tải lên, không tài khoản, không theo dõi nội dung.

Vì sao nó tồn tại

Phần lớn bộ chuyển Markdown sang PDF trực tuyến hoạt động bằng cách tải tệp của bạn lên máy chủ. Với một README công khai, đó là sự đánh đổi hợp lý; với một hợp đồng nháp, một tờ khai thuế, hay bất kỳ tệp công việc nào, thì không. mdprint là phiên bản của những công cụ đó, nhưng xử lý tất cả tại chỗ, để sự đánh đổi tan biến.

Ai làm ra

Fokuus là một xưởng web nhỏ đặt tại Bỉ. mdprint do Anton Pycarelle xây dựng như một tiện ích công cộng - một công cụ chúng tôi muốn cho chính mình, và đem ra dùng miễn phí. Liên hệ: anton@fokuus.be.

Vì sao vẫn miễn phí

V1 không quảng cáo, không bán chéo, không gói cao cấp. Lưu trữ gần như không tốn (tệp tĩnh trên Netlify), nên không có gì để thu hồi. Nếu sau này có thêm tính năng trả phí, chúng sẽ là bổ sung - phần lõi vẫn miễn phí.

Lộ trình

V1 bao quát toàn bộ luồng Markdown sang PDF ở 18 ngôn ngữ. Danh sách V2 gồm xuất HTML, xuất DOCX, thư viện mẫu, và một trình tùy biến chủ đề. Mở mã nguồn cũng nằm trong V2.

Mở trình soạn thảo

Không tài khoản, không cài đặt, không tải lên. Cuộn lên đầu trang và bắt đầu gõ.

mdprint