08|論文轉學術海報(Skill2Poster)
🎯 一句話:兩個 Codex Skill 一組——生圖只當設計草稿,最終海報用真實素材在 HTML 重建,因為圖像模型會把公式和數字畫錯。
- Repo:https://github.com/LEON-gittech/Skill2Poster
- Project page:leon-gittech.github.io/Skill2Poster
- 授權:未指定(repo 沒有 LICENSE 檔,要沿用前請先向作者確認)
- 建立於 2026-06,46 stars,README 中英雙語

README 中英雙語並附 project page。第一段就把主張講完:AI 生圖只當視覺設計參考,最終海報用經過查證的論文內容、圖表、公式、logo、QR code 與尺寸重新建構。
作者背景
LEON,南京大學(NJU)資工博士生,任職於 Tongyi Lab(通義實驗室)實習,也是 claude-history、oh-my-codex 的貢獻者。
這個 repo 的來歷看得出是自己投稿要用才做的:示範對象是一篇真實的 arXiv 論文(From Off-Policy to On-Policy: Enhancing GUI Agents via Bi-level Expert-to-Policy Assimilation, arXiv:2601.05787),連 BibTeX 都放進 references/。設計預設值也很誠實地寫著 ACL/EMNLP/NeurIPS 風格——這是實際要貼在那些會場上的東西。
核心主張:生成圖不是事實來源
這是整個專案唯一、也最重要的判斷:
圖像模型很適合探索版式、視覺層級、密度、配色與整體風格,但會扭曲文字、公式、表格、二維碼與具體數值。
所以它把生圖鎖在「設計參考層」,最終產物必須在 HTML 裡用論文原始素材重建。SKILL.md 裡寫得很直白:Do not trust text, numbers, or equations from the generated image.
兩個 Skill 的分工
| Skill | 職責 | 隨附參考檔 |
|---|---|---|
| paper-poster-imagegen | 產生、批評、迭代生圖 prompt,做出「結構上已經接近成品」的 A0 直式 mockup | references/prompt-template.md |
| academic-poster-builder | 把概念圖重建成事實正確的 A0 HTML/PDF/PPTX:source audit、真實素材、尺寸、字級、對齊、overflow 檢查 | references/poster-qa-checklist.md |
第一個 Skill 的目標寫得很有意思:第一張 mockup 就要表達出正確的閱讀順序、真實的 A0 資訊密度、以及「真圖表的占位區」——不要讓模型憑空捏造圖表,缺數值時一律用清楚的 placeholder,別編假值。
六階段 pipeline
- 審計論文與素材——先確認中心論點、必要 figure、核心公式、主結果表格與會議資訊,避免海報變成「視覺漂亮但細節虛構」的裝飾性摘要
- 建 poster brief——標題/作者/單位/logo、四張 metric card、一句 thesis sentence、section 順序與各自目的、必須出現的圖表與建議位置、QR code,以及來自舊稿或使用者回饋的 negative constraints
- 生設計參考圖——A0 直式 mockup:三欄主體、清楚的 header、metric strip、thesis strip、真圖表占位區
- 評審與迭代——出現「小到看不清的字、虛構圖表、重複表格、被裁壞的 figure、隨機 section、裝飾性 footer、大塊意外留白」就繼續改 prompt;只有當參考圖足以指導實作時才進下一步
- 重建 HTML——用真實文本、figure、table、logo、QR、公式落地
- 渲染與驗證——尺寸、panel overflow、字體可讀性、圖表有沒有被裁、各欄底部對齊,最後人工看一次 PNG/PDF
規格寫死在 Skill 裡
這是它比一般「AI 做海報」教學紮實的地方——尺寸不是講原則,是給數字:
| 項目 | 值 |
|---|---|
| 實體尺寸 | 841mm × 1189mm(A0 直式) |
| CSS canvas(96 dpi) | 3179px × 4494px |
| 150 dpi PNG 匯出 | 約 4967px × 7022px(用 deviceScaleFactor: 150/96) |
| PDF 匯出 | Playwright page.pdf({ width:"841mm", height:"1189mm", printBackground:true, margin:0 }) |
版面預設同樣寫死:header(左會議標/中標題作者/右 QR 與單位標記)→ metric strip 四張卡 → thesis strip 一句話 → 三欄主體(中欄較寬放方法與機制圖)→ 一個結論區。並且明確規定:總結區只能有一個,Conclusion/Takeaways/Key Takeaways 三選一,不准並存。
Source audit 的紀律
academic-poster-builder 對「素材從哪來」管得很嚴:
- 先用
rg --files搜本地資產、論文res/、figure PDF、截圖、表格、logo、QR、舊海報輸出 - 優先用論文原圖,必要時裁切,但不准用近似的手繪示意圖取代,除非真的沒有素材
- 結果語意要回論文查證——「不能因為看起來像就推論某個 baseline 是用 off-policy trace 訓練的,除非論文這樣寫」
- 已有的參考海報只能用來辨識「該有哪些內容與層級」,不能當版面照抄
它對海報的定位也寫在第一段:海報是一個被壓縮的論證,不是加了裝飾的論文摘要,邏輯流固定為「為什麼這個問題重要 → 方法改變了什麼 → 為什麼有效 → 結果多強力支持這個主張」。
與 Paper2Poster 的差異
README 直接點名 Paper2Poster 做對照:

關鍵差別在第四列「圖像生成角色」:Paper2Poster 把生圖當成 workflow 的一部分,Skill2Poster 只做設計探索、不做事實權威。
一句話總結:Paper2Poster 是端到端自動化,Skill2Poster 是把流程拆成可複用的 skill,並且刻意在生圖與事實之間畫一條線。
值得學的兩件事
- 把不可信的環節降級成草稿。這是很值得複製到其他領域的模式:模型某項能力不可靠(生圖的文字、LLM 的數字),就別讓它產出交付物,只讓它產出下一步的參考,交付物由可驗證的路徑重建。
- 驗收清單跟流程寫在一起。
poster-qa-checklist.md讓「做完了沒」有客觀判準——這正是 Anthropic 官方那套「確定性交給腳本、判斷交給模型」的另一種形式。