PosterCraft
[ICLR2026] Rethinking High-Quality Aesthetic Poster Generation in a Unified Framework
Install / Use
/learn @MeiGen-AI/PosterCraftREADME
🌐 Website | 🎯 Demo | 📄 Paper | 🤗 Models | 📚 Datasets | 🎥 Video | 🤗 HF Demo
</div>News & Updates
- 🧩 [2025.06] Community user @AIFSH has successfully integrated PosterCraft into ComfyUI!
You can check out the full workflow here: PosterCraft-ComfyUI Example
Big thanks to the contributor — this will be helpful for many users! See Issue #6 for details. - 📖 [2025.06] Our Chinese article providing a detailed introduction and technical walkthrough of PosterCraft is now available!
Read it here: 中文解读|高质量美学海报生成框架 PosterCraft - 🔥 [2025.06] We have deployed a demo on Hugging Face Space, feel free to give it a try!
- 🚀 [2025.06] Our gradio demo and inference code are now available!
- 📊 [2025.06] We have released partial datasets and model weights on HuggingFace.
👥 Authors
Sixiang Chen<sup>1,2</sup>*, Jianyu Lai<sup>1</sup>*, Jialin Gao<sup>2</sup>*, Tian Ye<sup>1</sup>, Haoyu Chen<sup>1</sup>, Hengyu Shi<sup>2</sup>, Shitong Shao<sup>1</sup>, Yunlong Lin<sup>3</sup>, Song Fei<sup>1</sup>, Zhaohu Xing<sup>1</sup>, Yeying Jin<sup>4</sup>, Junfeng Luo<sup>2</sup>, Xiaoming Wei<sup>2</sup>, Lei Zhu<sup>1,5</sup>†
<sup>1</sup>The Hong Kong University of Science and Technology (Guangzhou)
<sup>2</sup>Meituan
<sup>3</sup>Xiamen University
<sup>4</sup>National University of Singapore
<sup>5</sup>The Hong Kong University of Science and Technology*Equal Contribution, †Corresponding Author
🌟 What is PosterCraft?
<div align="center"> <img src="images/demo/demo2.png" alt="What is PosterCraft - Quick Prompt Demo" width="1000"/> <br> </div>PosterCraft is a unified framework for high-quality aesthetic poster generation that excels in precise text rendering, seamless integration of abstract art, striking layouts, and stylistic harmony.
🚀 Quick Start
🔧 Installation
# Clone the repository
git clone https://github.com/ephemeral182/PosterCraft.git
cd PosterCraft
# Create conda environment
conda create -n postercraft python=3.11
conda activate postercraft
# Install dependencies
pip install -r requirements.txt
🚀 Quick Generation
Generate high-quality aesthetic posters from your prompt with BF16 precision:
python inference.py \
--prompt "Urban Canvas Street Art Expo poster with bold graffiti-style lettering and dynamic colorful splashes" \
--enable_recap \
--num_inference_steps 28 \
--guidance_scale 3.5 \
--seed 42 \
--pipeline_path "black-forest-labs/FLUX.1-dev" \
--custom_transformer_path "PosterCraft/PosterCraft-v1_RL" \
--qwen_model_path "Qwen/Qwen3-8B"
If you are running on a GPU with limited memory, you can use inference_offload.py to offload some components to the CPU:
python inference_offload.py \
--prompt "Urban Canvas Street Art Expo poster with bold graffiti-style lettering and dynamic colorful splashes" \
--enable_recap \
--num_inference_steps 28 \
--guidance_scale 3.5 \
--seed 42 \
--pipeline_path "black-forest-labs/FLUX.1-dev" \
--custom_transformer_path "PosterCraft/PosterCraft-v1_RL" \
--qwen_model_path "Qwen/Qwen3-8B"
💻 Gradio Web UI
We provide a Gradio web UI for PosterCraft.
python demo_gradio.py
📊 Performance Benchmarks
<div align="center">📈 Quantitative Results
<table> <thead> <tr> <th>Method</th> <th>Text Recall ↑</th> <th>Text F-score ↑</th> <th>Text Accuracy ↑</th> </tr> </thead> <tbody> <tr> <td style="white-space: nowrap;">OpenCOLE (Open)</td> <td>0.082</td> <td>0.076</td> <td>0.061</td> </tr> <tr> <td style="white-space: nowrap;">Playground-v2.5 (Open)</td> <td>0.157</td> <td>0.146</td> <td>0.132</td> </tr> <tr> <td style="white-space: nowrap;">SD3.5 (Open)</td> <td>0.565</td> <td>0.542</td> <td>0.497</td> </tr> <tr> <td style="white-space: nowrap;">Flux1.dev (Open)</td> <td>0.723</td> <td>0.707</td> <td>0.667</td> </tr> <tr> <td style="white-space: nowrap;">Ideogram-v2 (Close)</td> <td>0.711</td> <td>0.685</td> <td>0.680</td> </tr> <tr> <td style="white-space: nowrap;">BAGEL (Open)</td> <td>0.543</td> <td>0.536</td> <td>0.463</td> </tr> <tr> <td style="white-space: nowrap;">Gemini2.0-Flash-Gen (Close)</td> <td>0.798</td> <td>0.786</td> <td>0.746</td> </tr> <tr> <td style="white-space: nowrap;"><b>PosterCraft (ours)</b></td> <td><b>0.787</b></td> <td><b>0.774</b></td> <td><b>0.735</b></td> </tr> </tbody> </table> <img src="images/user_study/hpc.png" alt="User Study Results" width="1000"/> </div>🎭 Gallery & Examples
<div align="center">🎨 PosterCraft Gallery
<table> <tr> <td align="center"><img src="images/gallery/gallery_demo1.png" width="250"><br><b>Adventure Travel</b></td> <td align="center"><img src="images/gallery/gallery_demo2.png" width="250"><br><b>Post-Apocalyptic</b></td> <td align="center"><img src="images/gallery/gallery_demo3.png" width="250"><br><b>Sci-Fi Drama</b></td> </tr> <tr> <td align="center"><img src="images/gallery/gallery_demo4.png" width="250"><br><b>Space Thriller</b></td> <td align="center"><img src="images/gallery/gallery_demo5.png" width="250"><br><b>Cultural Event</b></td> <td align="center"><img src="images/gallery/gallery_demo6.png" width="250"><br><b>Luxury Product</b></td> </tr> <tr> <td align="center"><img src="images/gallery/gallery_demo7.png" width="250"><br><b>Concert Show</b></td> <td align="center"><img src="images/gallery/gallery_demo8.png" width="250"><br><b>Children's Book</b></td> <td align="center"><img src="images/gallery/gallery_demo9.png" width="250"><br><b>Movie Poster</b></td> </tr> </table> </div>🏗️ Model Architecture
<div align="center"> <img src="images/overview/framework_fig.png" alt="PosterCraft Framework Overview" width="1000"/> <br> <em><strong>A unified framework for high-quality aesthetic poster generation</strong></em> </div>Our unified framework consists of four critical optimization stages in the training workflow:
🔤 Stage 1: Text Rendering Optimization
Addresses accurate text generation by precisely rendering diverse text on high-quality backgrounds, also ensuring faithful background representation and establishing foundational fidelity and robustness for poster generation.
🎨 Stage 2: High-quality Poster Fine-tuning
Shifts focus to overall poster style and text-background harmony using Region-aware Calibration. This fine-tuning stage preserves text accuracy while strengthening the artistic integrity of the aesthetic poster.
🎯 Stage 3: Aesthetic-Text RL
Employs Aesthetic-Text Preference Optimization to capture higher-order aesthetic trade-offs. This reinforcement learning stage prioritizes outputs that satisfy holistic aesthetic criteria and mitigates defects in font rendering.
🔄 Stage 4: Vision-Language Feedback
Introduces a Joint Vision-Language Conditioning mechanism. This iterative feedback combines visual information with targeted text suggestions for multi-modal corrections, progressively refining aesthetic content and background harmony.
💾 Model Zoo
We provide the weights for our core models, fine-tuned at different stages of the PosterCraft pipeline.
<div align="center"> <table> <tr> <th>Model</th> <th>Stage</th> <th>Description</th> <th>Download</th> </tr> <tr> <td>🎯 <b>PosterCraft-v1_RL</b></td> <td>Stage 3: Aesthetic-Text RL</td> <td>Optimized via Aesthetic-Text Preference Optimization for higher-order aesthetic trade-offs.</td> <td><a href="https://huggingface.co/PosterCraft/PosterCraft-v1_RL">🤗 HF</a></td> </tr> <tr> <td>🔄 <b>PosterCraft-v1_Reflect</b></td> <td>Stage 4: Vision-Language Feedback</td> <td>Iteratively refined using vision-language feedback for further harmony and content accuracy.</td>Related Skills
node-connect
339.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.9kCommit, push, and open a PR
