轉換器

Markdown 轉 PDF 轉換器

Markdown 轉 PDF 是一款瀏覽器列印轉換器:貼上 Markdown,選好紙張大小和主題,然後用列印 / 另存為 PDF。文件在本機列印,不上傳任何內容。

# Quarterly Research Report

中文摘要 · 日本語要約 · 한국어 요약

This note mixes Latin, CJK, a table, math, and a code sample.

## Results

| Region | Revenue |
| --- | --- |
| 東京 | ¥12.4M |
| 서울 | ₩980M |
| 上海 | ¥9.1M |

The growth rate is $r = \frac{\Delta x}{x}$.

```python
def growth(previous: float, current: float) -> float:
    return (current - previous) / previous
```

如何操作

如何把 Markdown 轉 PDF

可以貼上什麼

  • 支援任意 Markdown:CommonMark,外加 GitHub Flavored Markdown 的表格、任務列表和刪除線
  • 渲染在你的瀏覽器中進行 —— 輸入時不會上傳任何內容
  • 預覽、複製或下載都無需帳號
  • 沒有固定大小上限;超大的文件受瀏覽器記憶體限制
Markdown 轉 PDF:把 Markdown 渲染成 PDF 頁面

為什麼使用

為什麼用這款 Markdown 轉 PDF 轉換器

一個 Markdown 檔案本身沒有頁面幾何資訊。這款轉換器加上紙張大小、頁邊距和分頁規則,再把結果交給你瀏覽器的列印引擎。

本機列印,不上傳任何內容

PDF 來自你瀏覽器的列印引擎。Markdown 永遠不會離開你的裝置。

紙張大小與頁邊距

列印前選擇 A4 或 Letter、縱向或橫向,以及普通、窄或寬的頁邊距。

適用於不同文件的主題

Github、document 和 compact 主題會改變字型、間距和程式碼塊配色,而不改變 Markdown 本身。

頁碼

在每一列印頁的角落或居中加上頁碼,樣式與目前主題匹配。

感知 CJK 的字型棧

列印樣式表把中文、日文和韓文系統字型排在拉丁回退字型之前,適用於混排文字的報告。

與 API 相同的 HTML 渲染器

文件由與 POST /v1/convert/markdown/html 相同的淨化 HTML 建構,再包進你的瀏覽器會轉成 PDF 的列印 CSS。

問題所在

為什麼 Markdown 列印前需要分頁規則

Markdown 沒有頁面幾何資訊

一個 Markdown 檔案描述的是標題和段落,不是紙張大小、頁邊距,或頁面應該在哪裡斷開。

長表格和程式碼塊斷得很糟

沒有分頁規則,一行表格或一個圍欄程式碼塊可能在列印頁底部被切成兩半。

CJK 與混排文字需要合適的字型

中文、日文和韓文文字在不同瀏覽器和作業系統之間,可能回退成缺失字形或不同的斷行行為。

轉換 Markdown 為 PDF:複製貼上後的錯亂文字與乾淨的 Markdown 結構對比

保留什麼

這款 Markdown 轉 PDF 轉換器保留什麼

頁面大小與頁邊距
一個 @page 規則會在你的瀏覽器開啟列印對話方塊之前設定紙張大小(A4 或 Letter)、方向和頁邊距。Source: CSS Paged Media Module
標題可以另起一頁
一級標題預設可以分頁到新的一頁,所以每個頂層章節都乾淨地開始;文件的第一個標題不會。Source: CSS Paged Media Module
表格與程式碼避免頁面中斷開
表格和圍欄程式碼被標記為不在內部斷開,所以瀏覽器會把整塊移到下一頁,而不是把它切開。Source: CSS Paged Media Module
用 CSS 計數器做頁碼
可選的頁碼由一個 CSS 頁面計數器生成,定位在頁面頁尾的左、中或右。Source: CSS Paged Media Module
與 API 相同的淨化 HTML
可列印文件由 POST /v1/convert/markdown/html 所用的同一套淨化 CommonMark 與 GFM HTML 建構。Source: CommonMark Spec

這款 Markdown 轉 PDF 轉換器背後的列印 CSS· markitdown.ai 列印樣式表:github 主題、A4、開啟頁碼

@page { size: A4 portrait; margin: 25mm; }@page { @bottom-center { content: counter(page); font-size: 10pt; color: var(--md-muted); } }h1 { break-before: page; }article.md-document > h1:first-child { break-before: auto; }table, pre { break-inside: avoid; }

使用場景

Markdown 轉 PDF 的使用場景

凡是 Markdown 筆記需要變成一份別人不用 Markdown 閱讀器就能開啟的分頁檔案的地方。

報告與研究筆記

把一份 Markdown 報告變成分頁 PDF,發給沒有 Markdown 閱讀器的人。

多語言文件

用感知 CJK 的字型棧,列印混有中文、日文或韓文文字的拉丁文字筆記。

從 README 做快速講義

為文件或 README 生成一份可列印版本,無需安裝單獨的 PDF 工具。

歸檔一條 Markdown 筆記

在筆記進一步變化之前,存下一份帶日期、分頁的快照,不必把它上傳到任何地方。

線上 Markdown 轉 PDF:把 PDF 用於報告、列印與歸檔

瀏覽器列印

這款工具在你的瀏覽器裡建構一份可列印文件,並交給瀏覽器自己的列印 / 另存為 PDF 對話方塊。服務端 PDF 生成已在規劃中但尚未上線,所以 API 目前沒有 PDF 端點。如果你今天就需要從自動化流水線得到 PDF,用 POST /v1/convert/markdown/html 渲染淨化 HTML,再用你自己掌控的工具列印那段 HTML,或者互動式地使用本頁處理一次性文件。如果服務端端點將來上線,這一節會更新;在那之前,請把瀏覽器列印路徑當作本產品 Markdown 轉 PDF 唯一受支援的途徑。

紙張、頁邊距、主題

紙張大小和頁邊距決定段落、表格和程式碼在每一頁上有多少空間:更窄的頁邊距每頁裝得更多,卻可能讓一張密集的表格顯得擁擠;更寬的頁邊距讀起來更舒服,代價是頁數增加。三個主題會改變字型、間距和程式碼塊背景,而不觸碰 Markdown 本身,所以切換主題是一種安全的方式,用來對比一份緊湊的內部筆記和一份適合外部讀者的文件。每次改動後都要檢查分頁預覽,因為在短筆記裡看起來沒問題的設定,放到更長的報告裡可能就把一張表推到分頁處。

  • A4 適合大多數非美國讀者;Letter 適合以美國為中心的文件。
  • 窄頁邊距每頁裝更多內容;寬頁邊距讀起來更舒服。
  • 頁碼能讓一份列印裝訂的報告保持順序。

多語言與程式碼

混有中文、日文或韓文字元的 Markdown,取決於實際列印它的那臺機器上裝了哪些字型,所以同一份檔案在兩臺電腦上可能分頁略有不同,即便 Markdown 源完全一樣。在你將要列印的裝置上檢查預覽,尤其是長報告,一個缺失的字形可能把標題推到錯誤的頁面上。程式碼塊和又長又不斷開的 URL 表現類似:它們被標記為避免在行中間斷開,所以瀏覽器會把整塊移到下一頁,而不是把一個讀者可能複製的命令從中間切開。

FAQ

Markdown 轉 PDF 常見問題

Markdown 轉 PDF 會上傳我的文字嗎?

不會。在本機列印——生成 PDF 不上傳任何內容;它完全來自你瀏覽器的列印引擎。

有服務端的 Markdown 轉 PDF API 嗎?

目前沒有。POST /v1/convert/markdown/pdf 不存在,呼叫它會返回 404。用 POST /v1/convert/markdown/html 渲染 HTML 再列印它,或使用本頁的瀏覽器工具。

可以選擇 A4 或 Letter 嗎?

可以。紙張大小、方向、頁邊距和頁碼都是編輯器裡的本機選項。

它能處理中文、日文或韓文文字嗎?

列印樣式表把 CJK 系統字型排在拉丁回退字型之前。列印前先檢查分頁預覽,因為字型可用性因裝置而異。

標題總是另起一頁嗎?

預設情況下,一級標題會分頁到新的一頁,文件裡的第一個標題除外;這一行為可以關閉。

把 Markdown 列印成 PDF 需要帳號嗎?

不需要。貼上、預覽和列印都不需要登入。

以後會有服務端生成的 PDF 檔案嗎?

服務端 PDF 生成已在規劃中。今天本頁使用你瀏覽器的列印對話方塊,沒有服務端 PDF 端點。

隨時將 Markdown 轉換為 PDF。

免費試用——無需註冊。