跳至主要內容
PPDF123

把 HTML 轉成 PDF

HTML 轉 PDF 用 WeasyPrint 把上傳的 .html 或 .htm 檔案,或含 HTML 的 ZIP 轉成 PDF。JavaScript 不會執行,所以靠腳本產生的頁面輸出會不完整。

把檔案拖到這裡,或點一下選擇

支援 HTML, HTM, ZIP · 每個檔案上限 500.0 MB · 一次最多 20 個檔案

也可以按 Ctrl/Cmd+V 或從剪貼簿選單貼上檔案。

HTML 轉 PDF 用 WeasyPrint 轉換。上傳 `.html` / `.htm`,或一個至少含一份 `.html` 的 ZIP(封存檔根目錄有 `index.html` 就用它,否則用第一個 `.html` 項目)。產出 PDF 依上傳檔案命名。

`zoom` 欄位會被忽略。沒有無頭 Chrome,不執行 JavaScript。外部圖片、樣式表和字型會從公開網址取得(最多 500 個資源,每個不超過 64 MiB,每次請求 15 秒逾時),指向私有網路或內部網路的位址會被攔截。ZIP 裡的相對資源從解出的檔案中解析。

WeasyPrint 支援的 CSS 會印出來。重度指令碼應用、永遠下不來的網路字型、現代 JS 版面常常塌掉。輸入不是加密 PDF。本工具從 HTML 起步。

來源已經是 URL 時,用網址轉 PDF。來源是 Markdown 時,用 Markdown 轉 PDF(先 CommonMark,再同一套 WeasyPrint)。

上傳是暫時的。我們不會保存你的 HTML 文庫。

功能

  • WeasyPrint,不是 Chromium
  • 接受 HTML 或 ZIP(轉換 index.html,沒有則轉換第一個 .html)
  • zoom 忽略;無 JavaScript
  • 匿名 API:/api/v1/convert/html/pdf

適用情境

  • 把靜態發票 HTML 印成 PDF
  • 算繪不需要 JS 的 CSS 報表
  • 把一小包 HTML 加資源的 ZIP 變成 PDF

如何把 HTML 轉成 PDF?

  1. 上傳 HTML,或含 HTML 的 ZIP。
  2. zoom 可以不管。它不改變算繪。
  3. 點選處理,下載 PDF。
  4. 檢查字型與分頁。只靠 JS 的頁面會空白或錯亂。

限制與邊界

  • 沒有 JavaScript,沒有 Chrome,沒有縮放
  • 只支援 WeasyPrint 那套 CSS
  • 遠端資源只從公開網址載入;私有和內部位址會被攔截
  • 轉換預設在 180 秒後停止
  • 本網站的上傳上限:每個檔案 500 MB,超過約 95 MB 時分塊上傳。直接呼叫 API 時,單一請求本文上限為 100 MB。

示例

  • 帶本機 CSS 的語意化 HTML 信函常常印得乾淨
  • 沒有建置產物的 create-react-app index.html 通常印出來是空白

本工具的隱私說明

檔案經 HTTPS 上傳,在伺服器記憶體或短期暫存目錄中處理,結果就緒後即刪除。我們不會為日後瀏覽、訓練或廣告輪廓保留副本。留存期限與 AdSense Cookie 說明見隱私權政策。

常見問題

為什麼我的 React 應用是空白 PDF?
WeasyPrint 不跑 JavaScript。請送靜態 HTML,而不是空的 SPA 殼。
zoom 有效嗎?
無效。轉換函式不接收參數。
ZIP 怎麼處理?
封存檔根目錄有 index.html 就轉換它;否則轉換第一個 .html 項目。
這是 Chrome 的列印成 PDF 嗎?
不是。這是 WeasyPrint 的 HTML/CSS 引擎。

最後更新:

用程式碼呼叫

本站每個工具都是普通 REST 介面。匿名使用不需要帳號或 API Key,給瀏覽器、開發者與 AI 代理同樣可用。

curl -X POST "https://pdf123.xyz/api/v1/convert/html/pdf" \
  -F "[email protected]" \
  -o output.pdf

也提供 MCP 工具,供說 Model Context Protocol 的用戶端呼叫(JSON-RPC 2.0,POST /mcp)。 完整 API 文件

在 AI 代理中使用

Skill

裝上這個 Skill,Claude Code、Codex、Cursor 等 AI 代理就能替你完成「HTML 轉 PDF」: /skills/pdf123-html-to-pdf.md

全部 Agent Skill

檔案只用於本次處理,完成後自動刪除。