Create professional research posters in LaTeX using beamerposter, tikzposter, or baposter. Support for conference presentations, academic posters, and scientific communication. Includes layout design, color schemes, multi-column formats, figure integration, and poster-specific best practices for visual communication.
71
58%
Does it follow best practices?
Impact
92%
1.95xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./scientific-skills/latex-posters/SKILL.mdResearch posters are a critical medium for scientific communication at conferences, symposia, and academic events. This skill provides comprehensive guidance for creating professional, visually appealing research posters using LaTeX packages. Generate publication-quality posters with proper layout, typography, color schemes, and visual hierarchy.
This skill should be used when:
STANDARD WORKFLOW: Generate ALL major visual elements using AI before creating the LaTeX poster.
This is the recommended approach for creating visually compelling posters:
Target: 60-70% of poster area should be AI-generated visuals, 30-40% text.
⚠️ POSTERS MUST NOT HAVE TEXT OR CONTENT CUT OFF AT EDGES.
Common Overflow Problems:
Prevention Rules:
1. Limit Content Sections (MAXIMUM 5-6 sections for A0):
✅ GOOD - 5 sections with room to breathe:
- Title/Header
- Introduction/Problem
- Methods
- Results (1-2 key findings)
- Conclusions
❌ BAD - 8+ sections crammed together:
- Overview, Introduction, Background, Methods,
- Results 1, Results 2, Discussion, Conclusions, Future Work2. Set Safe Margins in LaTeX:
% tikzposter - add generous margins
\documentclass[25pt, a0paper, portrait, margin=25mm]{tikzposter}
% baposter - ensure content doesn't touch edges
\begin{poster}{
columns=3,
colspacing=2em, % Space between columns
headerheight=0.1\textheight, % Smaller header
% Leave space at bottom
}3. Figure Sizing - Never 100% Width:
% Leave margins around figures
\includegraphics[width=0.85\linewidth]{figure.png} % NOT 1.0\linewidth4. Check for Overflow Before Printing:
# Compile and check PDF at 100% zoom
pdflatex poster.tex
# Look for:
# - Text cut off at any edge
# - Content touching page boundaries
# - Overfull hbox warnings in .log file
grep -i "overfull" poster.log5. Word Count Limits:
⚠️ ALL text within AI-generated visualizations MUST be poster-readable.
When generating graphics for posters, you MUST include font size specifications in EVERY prompt. Poster graphics are viewed from 4-6 feet away, so text must be LARGE.
⚠️ COMMON PROBLEM: Content Overflow and Density
The #1 issue with AI-generated poster graphics is TOO MUCH CONTENT. This causes:
SOLUTION: Generate SIMPLE graphics with MINIMAL content.
MANDATORY prompt requirements for EVERY poster graphic:
POSTER FORMAT REQUIREMENTS (STRICTLY ENFORCE):
- ABSOLUTE MAXIMUM 3-4 elements per graphic (3 is ideal)
- ABSOLUTE MAXIMUM 10 words total in the entire graphic
- NO complex workflows with 5+ steps (split into 2-3 simple graphics instead)
- NO multi-level nested diagrams (flatten to single level)
- NO case studies with multiple sub-sections (one key point per case)
- ALL text GIANT BOLD (80pt+ for labels, 120pt+ for key numbers)
- High contrast ONLY (dark on white OR white on dark, NO gradients with text)
- MANDATORY 50% white space minimum (half the graphic should be empty)
- Thick lines only (5px+ minimum), large icons (200px+ minimum)
- ONE SINGLE MESSAGE per graphic (not 3 related messages)⚠️ BEFORE GENERATING: Review your prompt and count elements
Content limits per graphic type (STRICT):
| Graphic Type | Max Elements | Max Words | Reject If | Good Example |
|---|---|---|---|---|
| Flowchart | 3-4 boxes MAX | 8 words | 5+ stages, nested steps | "DISCOVER → VALIDATE → APPROVE" (3 words) |
| Key findings | 3 items MAX | 9 words | 4+ metrics, paragraphs | "95% ACCURATE" "2X FASTER" "FDA READY" (6 words) |
| Comparison chart | 3 bars MAX | 6 words | 4+ methods, legend text | "OURS: 95%" "BEST: 85%" (4 words) |
| Case study | 1 case, 3 elements | 6 words | Multiple cases, substories | Logo + "18 MONTHS" + "to discovery" (2 words) |
| Timeline | 3-4 points MAX | 8 words | Year-by-year detail | "2020 START" "2022 TRIAL" "2024 APPROVED" (6 words) |
Example - WRONG (7-stage workflow - TOO COMPLEX):
# ❌ BAD - This creates tiny unreadable text like the drug discovery poster
python scripts/generate_schematic.py "Drug discovery workflow showing: Stage 1 Target Identification, Stage 2 Molecular Synthesis, Stage 3 Virtual Screening, Stage 4 AI Lead Optimization, Stage 5 Clinical Trial Design, Stage 6 FDA Approval. Include success metrics, timelines, and validation steps for each stage." -o figures/workflow.png
# Result: 7+ stages with tiny text, unreadable from 6 feet - POSTER FAILUREExample - CORRECT (simplified to 3 key stages):
# ✅ GOOD - Same content, split into ONE simple high-level graphic
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-box workflow: 'DISCOVER' → 'VALIDATE' → 'APPROVE'. Each word in GIANT bold (120pt+). Thick arrows (10px). 60% white space. NO substeps, NO details. 3 words total. Readable from 10 feet." -o figures/workflow_overview.png
# Result: Clean, impactful, readable - can add detail graphics separately if neededExample - WRONG (complex case studies with multiple sections):
# ❌ BAD - Creates cramped unreadable sections
python scripts/generate_schematic.py "Case studies: Insilico Medicine (drug candidate, discovery time, clinical trials), Recursion Pharma (platform, methodology, results), Exscientia (drug candidates, FDA status, timeline). Include company logos, metrics, and outcomes." -o figures/cases.png
# Result: 3 case studies with 4+ elements each = 12+ total elements, tiny textExample - CORRECT (one case study, one key metric):
# ✅ GOOD - Show ONE case with ONE key number
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case study card: Company logo (large), '18 MONTHS' in GIANT text (150pt), 'to discovery' below (60pt). 3 elements total: logo + number + caption. 50% white space. Readable from 10 feet." -o figures/case_single.png
# Result: Clear, readable, impactful. Make 3 separate graphics if you need 3 cases.Example - WRONG (key findings too complex):
# BAD - too many items, too much detail
python scripts/generate_schematic.py "Key findings showing 8 metrics: accuracy 95%, precision 92%, recall 94%, F1 0.93, AUC 0.97, training time 2.3 hours, inference 50ms, model size 145MB with comparison to 5 baseline methods" -o figures/findings.png
# Result: Cramped graphic with tiny numbersExample - CORRECT (key findings simple):
# GOOD - only 3 key items, giant numbers
python scripts/generate_schematic.py "POSTER FORMAT for A0. KEY FINDINGS with ONLY 3 large cards. Card 1: '95%' in GIANT text (120pt) with 'ACCURACY' below (48pt). Card 2: '2X' in GIANT text with 'FASTER' below. Card 3: checkmark icon with 'VALIDATED' in large text. 50% white space. High contrast colors. NO other text or details." -o figures/findings.png
# Result: Bold, readable impact statementFont size reference for poster prompts:
| Element | Minimum Size | Prompt Keywords |
|---|---|---|
| Main numbers/metrics | 72pt+ | "huge", "very large", "giant", "poster-size" |
| Section titles | 60pt+ | "large bold", "prominent" |
| Labels/captions | 36pt+ | "readable from 6 feet", "clear labels" |
| Body text | 24pt+ | "poster-readable", "large text" |
Always include in prompts:
⚠️ Each AI-generated graphic should focus on ONE concept with MINIMAL content.
Problem: Generating complex diagrams with many elements leads to small text.
Solution: Generate SIMPLE graphics with FEW elements and LARGE text.
Example - WRONG (too complex, text will be small):
# BAD - too many elements in one graphic
python scripts/generate_schematic.py "Complete ML pipeline showing data collection,
preprocessing with 5 steps, feature engineering with 8 techniques, model training
with hyperparameter tuning, validation with cross-validation, and deployment with
monitoring. Include all labels and descriptions." -o figures/pipeline.pngExample - CORRECT (simple, focused, large text):
# GOOD - split into multiple simple graphics with large text
# Graphic 1: High-level overview (3-4 elements max)
python scripts/generate_schematic.py "POSTER FORMAT for A0: Simple 4-step pipeline.
Four large boxes: DATA → PROCESS → MODEL → RESULTS.
GIANT labels (80pt+), thick arrows, lots of white space.
Only 4 words total. Readable from 8 feet." -o figures/overview.png
# Graphic 2: Key result (1 metric highlighted)
python scripts/generate_schematic.py "POSTER FORMAT for A0: Single key metric display.
Giant '95%' text (150pt+) with 'ACCURACY' below (60pt+).
Checkmark icon. Minimal design, high contrast.
Readable from 10 feet." -o figures/accuracy.pngRules for AI-generated poster graphics:
| Rule | Limit | Reason |
|---|---|---|
| Elements per graphic | 3-5 maximum | More elements = smaller text |
| Words per graphic | 10-15 maximum | Minimal text = larger fonts |
| Flowchart steps | 4-5 maximum | Keeps labels readable |
| Chart categories | 3-4 maximum | Prevents crowding |
| Nested levels | 1-2 maximum | Avoids complexity |
Split complex content into multiple simple graphics:
Instead of 1 complex diagram with 12 elements:
→ Create 3 simple diagrams with 4 elements each
→ Each graphic can have LARGER text
→ Arrange in poster with clear visual flow⚠️ BEFORE generating ANY graphics, review your content plan:
For EACH planned graphic, ask these questions:
Element count: Can I describe this in 3-4 items or less?
Complexity check: Is this a multi-stage workflow (5+ steps) or nested diagram?
Word count: Can I describe all text in 10 words or less?
Message clarity: Does this graphic convey ONE clear message?
Common patterns that ALWAYS fail (reject these):
After passing the pre-generation review, identify visual elements needed:
⚠️ CRITICAL: Review Step 0 checklist before proceeding.
Use the appropriate tool for each element type:
For Schematics and Diagrams (scientific-schematics):
# Create figures directory
mkdir -p figures
# Drug discovery workflow - HIGH-LEVEL ONLY, 3 stages
# BAD: "Stage 1: Target ID, Stage 2: Molecular Synthesis, Stage 3: Virtual Screening, Stage 4: AI Lead Opt..."
# GOOD: Collapse to 3 mega-stages
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-box workflow: 'DISCOVER' (120pt bold) → 'VALIDATE' (120pt bold) → 'APPROVE' (120pt bold). Thick arrows (10px). 60% white space. ONLY these 3 words. NO substeps. Readable from 12 feet." -o figures/workflow_simple.png
# System architecture - MAXIMUM 3 components
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-component stack: 'DATA' box (120pt) → 'AI MODEL' box (120pt) → 'PREDICTION' box (120pt). Thick vertical arrows. 60% white space. 3 words only. Readable from 12 feet." -o figures/architecture.png
# Timeline - ONLY 3 key milestones (not year-by-year)
# BAD: "2018, 2019, 2020, 2021, 2022, 2023, 2024 with events"
# GOOD: Only 3 breakthrough moments
python scripts/generate_schematic.py "POSTER FORMAT for A0. Timeline with ONLY 3 points: '2018' + icon, '2021' + icon, '2024' + icon. GIANT years (120pt). Large icons. 60% white space. NO connecting lines or details. Readable from 12 feet." -o figures/timeline.png
# Case study - ONE case, ONE key metric
# BAD: "3 case studies: Insilico (details), Recursion (details), Exscientia (details)"
# GOOD: ONE case with ONE number
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case study: Large logo + '18 MONTHS' (150pt bold) + 'to discovery' (60pt). 3 elements total. 60% white space. Readable from 12 feet." -o figures/case1.png
# If you need 3 cases → make 3 separate simple graphics (not one complex graphic)For Stylized Blocks and Graphics (Nano Banana Pro):
# Title block - SIMPLE
python scripts/generate_schematic.py "POSTER FORMAT for A0. Title block: 'ML FOR DRUG DISCOVERY' in HUGE bold text (120pt+). Dark blue background. ONE subtle icon. NO other text. 40% white space. Readable from 15 feet." -o figures/title_block.png
# Introduction visual - SIMPLE, 3 elements only
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE problem visual with ONLY 3 icons: drug icon, arrow, target icon. ONE label per icon (80pt+). 50% white space. NO detailed text. Readable from 8 feet." -o figures/intro_visual.png
# Conclusion/summary - ONLY 3 items, GIANT numbers
python scripts/generate_schematic.py "POSTER FORMAT for A0. KEY FINDINGS with EXACTLY 3 cards only. Card 1: '95%' (150pt font) with 'ACCURACY' (60pt). Card 2: '2X' (150pt) with 'FASTER' (60pt). Card 3: checkmark icon with 'READY' (60pt). 50% white space. NO other text. Readable from 10 feet." -o figures/conclusions_graphic.png
# Background visual - SIMPLE, 3 icons only
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE visual with ONLY 3 large icons in a row: problem icon → challenge icon → impact icon. ONE word label each (80pt+). 50% white space. NO detailed text. Readable from 8 feet." -o figures/background_visual.pngFor Data Visualizations - SIMPLE, 3 bars max:
# SIMPLE chart with ONLY 3 bars, GIANT labels
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE bar chart with ONLY 3 bars: BASELINE (70%), EXISTING (85%), OURS (95%). GIANT percentage labels ON the bars (100pt+). NO axis labels, NO legend, NO gridlines. Our bar highlighted in different color. 40% white space. Readable from 8 feet." -o figures/comparison_chart.png⚠️ CRITICAL: Review EVERY generated graphic before adding to poster.
For each generated figure, open at 25% zoom and check:
✅ PASS criteria (all must be true):
❌ FAIL criteria (regenerate if ANY are true):
Common failures and fixes:
DO NOT PROCEED to assembly if ANY graphic fails the checks above.
After all figures pass the post-generation review, include them in your poster template:
tikzposter example:
\documentclass[25pt, a0paper, portrait]{tikzposter}
\begin{document}
\maketitle
\begin{columns}
\column{0.5}
\block{Introduction}{
\centering
\includegraphics[width=0.85\linewidth]{figures/intro_visual.png}
\vspace{0.5em}
Brief context text here (2-3 sentences max).
}
\block{Methods}{
\centering
\includegraphics[width=0.9\linewidth]{figures/methods_flowchart.png}
}
\column{0.5}
\block{Results}{
\begin{minipage}{0.48\linewidth}
\centering
\includegraphics[width=\linewidth]{figures/result_1.png}
\end{minipage}
\hfill
\begin{minipage}{0.48\linewidth}
\centering
\includegraphics[width=\linewidth]{figures/result_2.png}
\end{minipage}
\vspace{0.5em}
Key findings in 3-4 bullet points.
}
\block{Conclusions}{
\centering
\includegraphics[width=0.8\linewidth]{figures/conclusions_graphic.png}
}
\end{columns}
\end{document}baposter example:
\headerbox{Methods}{name=methods,column=0,row=0}{
\centering
\includegraphics[width=0.95\linewidth]{figures/methods_flowchart.png}
}
\headerbox{Results}{name=results,column=1,row=0}{
\includegraphics[width=\linewidth]{figures/comparison_chart.png}
\vspace{0.3em}
Key finding: Our method achieves 92% accuracy.
}Full workflow with ALL quality checks:
# STEP 0: Pre-Generation Review (MANDATORY)
# Content plan: Drug discovery poster
# - Workflow: 7 stages → ❌ TOO MANY → Reduce to 3 mega-stages ✅
# - 3 case studies → ❌ TOO MANY → One case per graphic (make 3 graphics) ✅
# - Timeline 2018-2024 → ❌ TOO DETAILED → Only 3 key years ✅
# STEP 1: Create figures directory
mkdir -p figures
# STEP 2: Generate ULTRA-SIMPLE graphics with strict limits
# Workflow - HIGH-LEVEL ONLY (collapsed from 7 stages to 3)
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-box workflow: 'DISCOVER' → 'VALIDATE' → 'APPROVE'. Each word 120pt+ bold. Thick arrows (10px). 60% white space. ONLY 3 words total. Readable from 12 feet." -o figures/workflow.png
# Case study 1 - ONE case, ONE metric (will make 3 separate graphics)
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case: Company logo + '18 MONTHS' (150pt bold) + 'to drug discovery' (60pt). 3 elements only. 60% white space. Readable from 12 feet." -o figures/case1.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case: Company logo + '95% SUCCESS' (150pt bold) + 'in trials' (60pt). 3 elements only. 60% white space." -o figures/case2.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case: Company logo + 'FDA APPROVED' (150pt bold) + '2024' (60pt). 3 elements only. 60% white space." -o figures/case3.png
# Timeline - ONLY 3 key years (not 7 years)
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONLY 3 years: '2018' (150pt) + icon, '2021' (150pt) + icon, '2024' (150pt) + icon. Large icons. 60% white space. NO lines or details. Readable from 12 feet." -o figures/timeline.png
# Results - ONLY 2 bars (our method vs best baseline, not 5 methods)
python scripts/generate_schematic.py "POSTER FORMAT for A0. TWO bars only: 'BASELINE 70%' and 'OURS 95%' (highlighted). GIANT percentages (150pt) ON bars. NO axis, NO legend. 60% white space. Readable from 12 feet." -o figures/results.png
# STEP 2b: Post-Generation Review (MANDATORY)
# Open each figure at 25% zoom:
# ✅ workflow.png: 3 elements, text readable, 60% white - PASS
# ✅ case1.png: 3 elements, giant numbers, clean - PASS
# ✅ case2.png: 3 elements, giant numbers, clean - PASS
# ✅ case3.png: 3 elements, giant numbers, clean - PASS
# ✅ timeline.png: 3 elements, readable, simple - PASS
# ✅ results.png: 2 bars, giant percentages, clear - PASS
# ALL PASS → Proceed to assembly
# STEP 3: Compile LaTeX poster
pdflatex poster.tex
# STEP 4: PDF Overflow Check (see Section 11)
grep "Overfull" poster.log
# Open at 100% and check all 4 edgesIf ANY graphic fails Step 2b review:
⚠️ CRITICAL: Each graphic must have ONE message and MAXIMUM 3-4 elements.
ABSOLUTE LIMITS - These are NOT guidelines, these are HARD LIMITS:
For each poster section - STRICT requirements:
| Section | Max Elements | Max Words | Example Prompt (REQUIRED PATTERN) |
|---|---|---|---|
| Introduction | 3 icons | 6 words | "POSTER FORMAT for A0: ULTRA-SIMPLE 3 icons: [icon1] [icon2] [icon3]. ONE WORD labels (100pt bold). 60% white space. 3 words total." |
| Methods | 3 boxes | 6 words | "POSTER FORMAT for A0: ULTRA-SIMPLE 3-box workflow: 'STEP1' → 'STEP2' → 'STEP3'. GIANT labels (120pt+). 60% white space. 3 words only." |
| Results | 2-3 bars | 6 words | "POSTER FORMAT for A0: TWO bars: 'BASELINE 70%' 'OURS 95%'. GIANT percentages (150pt+) ON bars. NO axis. 60% white space." |
| Conclusions | 3 cards | 9 words | "POSTER FORMAT for A0: THREE cards: '95%' (150pt) 'ACCURATE', '2X' (150pt) 'FASTER', checkmark 'READY'. 60% white space." |
| Case Study | 3 elements | 5 words | "POSTER FORMAT for A0: ONE case: logo + '18 MONTHS' (150pt) + 'to discovery' (60pt). 60% white space." |
| Timeline | 3 points | 3 words | "POSTER FORMAT for A0: THREE years only: '2018' '2021' '2024' (150pt each). Large icons. 60% white space. NO details." |
MANDATORY prompt elements (ALL required, NO exceptions):
PATTERNS THAT ALWAYS FAIL (REJECT IMMEDIATELY):
PATTERNS THAT WORK:
For detailed guidance on creating schematics, refer to the scientific-schematics skill documentation.
Key capabilities:
Support for three major LaTeX poster packages, each with distinct advantages. For detailed comparison and package-specific guidance, refer to references/latex_poster_packages.md.
beamerposter:
tikzposter:
baposter:
Create effective poster layouts following visual communication principles. For comprehensive layout guidance, refer to references/poster_layout_design.md.
Common Poster Sections:
Layout Strategies:
Apply evidence-based design principles for maximum impact. For detailed design guidance, refer to references/poster_design_principles.md.
Typography:
Color and Contrast:
Visual Elements:
Content Guidelines:
Support for international and conference-specific poster dimensions:
International Standards:
North American Standards:
Orientation:
Provide ready-to-use templates for each major package. Templates available in assets/ directory.
beamerposter Templates:
beamerposter_classic.tex - Traditional academic stylebeamerposter_modern.tex - Clean, minimal designbeamerposter_colorful.tex - Vibrant theme with blockstikzposter Templates:
tikzposter_default.tex - Standard tikzposter layouttikzposter_rays.tex - Modern design with ray themetikzposter_wave.tex - Professional wave-style themebaposter Templates:
baposter_portrait.tex - Classic portrait layoutbaposter_landscape.tex - Landscape multi-columnbaposter_minimal.tex - Minimalist designOptimize visual content for poster presentations:
Best Practices:
LaTeX Figure Commands:
% Include graphics package
\usepackage{graphicx}
% Simple figure
\includegraphics[width=0.8\linewidth]{figure.pdf}
% Figure with caption in tikzposter
\block{Results}{
\begin{tikzfigure}
\includegraphics[width=0.9\linewidth]{results.png}
\end{tikzfigure}
}
% Multiple subfigures
\usepackage{subcaption}
\begin{figure}
\begin{subfigure}{0.48\linewidth}
\includegraphics[width=\linewidth]{fig1.pdf}
\caption{Condition A}
\end{subfigure}
\begin{subfigure}{0.48\linewidth}
\includegraphics[width=\linewidth]{fig2.pdf}
\caption{Condition B}
\end{subfigure}
\end{figure}Provide professional color palettes for various contexts:
Academic Institution Colors:
Scientific Color Palettes (color-blind friendly):
Package-Specific Theme Selection:
beamerposter:
\usetheme{Berlin}
\usecolortheme{beaver}tikzposter:
\usetheme{Rays}
\usecolorstyle{Denmark}baposter:
\begin{poster}{
background=plain,
bgColorOne=white,
headerColorOne=blue!70,
textborder=rounded
}Ensure readability and visual appeal:
Font Selection:
% Sans-serif fonts recommended for posters
\usepackage{helvet} % Helvetica
\usepackage{avant} % Avant Garde
\usepackage{sfmath} % Sans-serif math fonts
% Set default to sans-serif
\renewcommand{\familydefault}{\sfdefault}Text Sizing:
% Adjust text sizes for visibility
\setbeamerfont{title}{size=\VeryHuge}
\setbeamerfont{author}{size=\Large}
\setbeamerfont{institute}{size=\normalsize}Emphasis and Highlighting:
\textbf{important}\textcolor{blue}{highlight}Enhance poster interactivity for modern conferences:
QR Code Integration:
\usepackage{qrcode}
% Link to paper, code repository, or supplementary materials
\qrcode[height=2cm]{https://github.com/username/project}
% QR code with caption
\begin{center}
\qrcode[height=3cm]{https://doi.org/10.1234/paper}\\
\small Scan for full paper
\end{center}Digital Enhancements:
Generate high-quality PDF output for printing or digital display:
Compilation Commands:
# Basic compilation
pdflatex poster.tex
# With bibliography
pdflatex poster.tex
bibtex poster
pdflatex poster.tex
pdflatex poster.tex
# For beamer-based posters
lualatex poster.tex # Better font support
xelatex poster.tex # Unicode and modern fontsEnsuring Full Page Coverage:
Posters should use the entire page without excessive margins. Configure packages correctly:
beamerposter - Full Page Setup:
\documentclass[final,t]{beamer}
\usepackage[size=a0,scale=1.4,orientation=portrait]{beamerposter}
% Remove default beamer margins
\setbeamersize{text margin left=0mm, text margin right=0mm}
% Use geometry for precise control
\usepackage[margin=10mm]{geometry} % 10mm margins all around
% Remove navigation symbols
\setbeamertemplate{navigation symbols}{}
% Remove footline and headline if not needed
\setbeamertemplate{footline}{}
\setbeamertemplate{headline}{}tikzposter - Full Page Setup:
\documentclass[
25pt, % Font scaling
a0paper, % Paper size
portrait, % Orientation
margin=10mm, % Outer margins (minimal)
innermargin=15mm, % Space inside blocks
blockverticalspace=15mm, % Space between blocks
colspace=15mm, % Space between columns
subcolspace=8mm % Space between subcolumns
]{tikzposter}
% This ensures content fills the pagebaposter - Full Page Setup:
\documentclass[a0paper,portrait,fontscale=0.285]{baposter}
\begin{poster}{
grid=false,
columns=3,
colspacing=1.5em, % Space between columns
eyecatcher=true,
background=plain,
bgColorOne=white,
borderColor=blue!50,
headerheight=0.12\textheight, % 12% for header
textborder=roundedleft,
headerborder=closed,
boxheaderheight=2em % Consistent box header heights
}
% Content here
\end{poster}Common Issues and Fixes:
Problem: Large white margins around poster
% Fix for beamerposter
\setbeamersize{text margin left=5mm, text margin right=5mm}
% Fix for tikzposter
\documentclass[..., margin=5mm, innermargin=10mm]{tikzposter}
% Fix for baposter - adjust in document class
\documentclass[a0paper, margin=5mm]{baposter}Problem: Content doesn't fill vertical space
% Use \vfill between sections to distribute space
\block{Introduction}{...}
\vfill
\block{Methods}{...}
\vfill
\block{Results}{...}
% Or manually adjust block spacing
\vspace{1cm} % Add space between specific blocksProblem: Poster extends beyond page boundaries
% Check total width calculation
% For 3 columns with spacing:
% Total = 3×columnwidth + 2×colspace + 2×margins
% Ensure this equals \paperwidth
% Debug by adding visible page boundary
\usepackage{eso-pic}
\AddToShipoutPictureBG{
\AtPageLowerLeft{
\put(0,0){\framebox(\LenToUnit{\paperwidth},\LenToUnit{\paperheight}){}}
}
}Print Preparation:
Digital Display:
CRITICAL: Always review the generated PDF before printing or presenting. Use this systematic checklist:
Step 1: Page Size Verification
# Check PDF dimensions (should match poster size exactly)
pdfinfo poster.pdf | grep "Page size"
# Expected outputs:
# A0: 2384 x 3370 points (841 x 1189 mm)
# 36x48": 2592 x 3456 points
# A1: 1684 x 2384 points (594 x 841 mm)Step 2: OVERFLOW CHECK (CRITICAL) - DO THIS IMMEDIATELY AFTER COMPILATION
⚠️ THIS IS THE #1 CAUSE OF POSTER FAILURES. Check BEFORE proceeding.
Step 2a: Check LaTeX Log File
# Check for overflow warnings (these are ERRORS, not suggestions)
grep -i "overfull\|underfull\|badbox" poster.log
# ANY "Overfull" warning = content is cut off or extending beyond boundaries
# FIX ALL OF THESE before proceedingCommon overflow warnings and what they mean:
Overfull \hbox (15.2pt too wide) → Text or graphic is 15.2pt wider than columnOverfull \vbox (23.5pt too high) → Content is 23.5pt taller than available spaceBadbox → LaTeX struggling to fit content within boundariesStep 2b: Visual Edge Inspection (100% zoom in PDF viewer)
Check ALL FOUR EDGES systematically:
TOP EDGE:
BOTTOM EDGE:
LEFT EDGE:
RIGHT EDGE:
BETWEEN COLUMNS:
If ANY check fails, you have overflow. FIX IMMEDIATELY before continuing:
Fix hierarchy (try in order):
Check AI-generated graphics first:
Reduce sections:
Cut text content:
Adjust figure sizing:
width=\linewidth? → Change to width=0.85\linewidthwidth=1.0\columnwidth? → Change to width=0.9\columnwidthIncrease margins (last resort):
\documentclass[25pt, a0paper, portrait, margin=25mm]{tikzposter}DO NOT proceed to Step 3 if ANY overflow exists.
Step 3: Visual Inspection Checklist
Open PDF at 100% zoom and check:
Layout and Spacing:
Typography:
Visual Elements:
Content Completeness:
Technical Quality:
Step 4: Reduced-Scale Print Test
Essential Pre-Printing Test:
# Create reduced-size test print (25% of final size)
# This simulates viewing full poster from ~8-10 feet
# For A0 poster, print on A4 paper (24.7% scale)
# For 36x48" poster, print on letter paper (~25% scale)Print Test Checklist:
Step 5: Digital Quality Checks
Font Embedding Verification:
# Check that all fonts are embedded (required for printing)
pdffonts poster.pdf
# All fonts should show "yes" in "emb" column
# If any show "no", recompile with:
pdflatex -dEmbedAllFonts=true poster.texImage Resolution Check:
# Extract image information
pdfimages -list poster.pdf
# Check that all images are at least 300 DPI
# Formula: DPI = pixels / (inches in poster)
# For A0 width (33.1"): 300 DPI = 9930 pixels minimumFile Size Optimization:
# For email/web, compress if needed (>50MB)
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 \
-dPDFSETTINGS=/printer -dNOPAUSE -dQUIET -dBATCH \
-sOutputFile=poster_compressed.pdf poster.pdf
# For printing, keep original (no compression)Step 6: Accessibility Check
Color Contrast Verification:
Color Blindness Simulation:
Step 7: Content Proofreading
Systematic Review:
Peer Review:
Step 8: Technical Validation
LaTeX Compilation Log Review:
# Check for warnings in .log file
grep -i "warning\|error\|overfull\|underfull" poster.log
# Common issues to fix:
# - Overfull hbox: Text extending beyond margins
# - Underfull hbox: Excessive spacing
# - Missing references: Citations not resolved
# - Missing figures: Image files not foundFix Common Warnings:
% Overfull hbox (text too wide)
\usepackage{microtype} % Better spacing
\sloppy % Allow slightly looser spacing
\hyphenation{long-word} % Manual hyphenation
% Missing fonts
\usepackage[T1]{fontenc} % Better font encoding
% Image not found
% Ensure paths are correct and files exist
\graphicspath{{./figures/}{./images/}}Step 9: Final Pre-Print Checklist
Before Sending to Printer:
Printing Specifications to Confirm:
Digital Presentation Checklist:
Review Script (Available in scripts/review_poster.sh):
#!/bin/bash
# Automated poster PDF review script
echo "Poster PDF Quality Check"
echo "======================="
# Check file exists
if [ ! -f "$1" ]; then
echo "Error: File not found"
exit 1
fi
echo "File: $1"
echo ""
# Check page size
echo "1. Page Dimensions:"
pdfinfo "$1" | grep "Page size"
echo ""
# Check fonts
echo "2. Font Embedding:"
pdffonts "$1" | head -20
echo ""
# Check file size
echo "3. File Size:"
ls -lh "$1" | awk '{print $5}'
echo ""
# Count pages (should be 1 for poster)
echo "4. Page Count:"
pdfinfo "$1" | grep "Pages"
echo ""
echo "Manual checks required:"
echo "- Visual inspection at 100% zoom"
echo "- Reduced-scale print test (25%)"
echo "- Color contrast verification"
echo "- Proofreading for typos"Common PDF Issues and Solutions:
| Issue | Cause | Solution |
|---|---|---|
| Large white margins | Incorrect margin settings | Reduce margin in documentclass |
| Content cut off | Exceeds page boundaries | Check total width/height calculations |
| Blurry images | Low resolution (<300 DPI) | Replace with higher resolution images |
| Missing fonts | Fonts not embedded | Compile with -dEmbedAllFonts=true |
| Wrong page size | Incorrect paper size setting | Verify documentclass paper size |
| Colors look wrong | RGB vs CMYK mismatch | Convert color space for print |
| File too large (>50MB) | Uncompressed images | Optimize images or compress PDF |
| QR codes don't work | Too small or low resolution | Minimum 2×2cm, high contrast |
Effective content organization for different research types:
Experimental Research Poster:
Computational/Modeling Poster:
Review/Survey Poster:
Design posters that are accessible to diverse audiences:
Color Blindness Considerations:
Visual Impairment Accommodations:
Language and Content:
Guidance beyond LaTeX for effective poster sessions:
Content Strategy:
Physical Presentation Tips:
Digital Backups:
Determine poster requirements:
Develop content outline:
Choose LaTeX package:
CRITICAL: Generate SIMPLE figures with MINIMAL content. Each graphic = ONE message.
Content limits:
Create figures directory:
mkdir -p figuresGenerate SIMPLE visual elements:
# Introduction - ONLY 3 icons/elements
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE visual with ONLY 3 elements: [icon1] [icon2] [icon3]. ONE word labels (80pt+). 50% white space. Readable from 8 feet." -o figures/intro.png
# Methods - ONLY 4 steps maximum
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE flowchart with ONLY 4 boxes: STEP1 → STEP2 → STEP3 → STEP4. GIANT labels (100pt+). 50% white space. NO sub-steps." -o figures/methods.png
# Results - ONLY 3 bars/comparisons
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE chart with ONLY 3 bars. GIANT percentages ON bars (120pt+). NO axis, NO legend. 50% white space." -o figures/results.png
# Conclusions - EXACTLY 3 items with GIANT numbers
python scripts/generate_schematic.py "POSTER FORMAT for A0. EXACTLY 3 key findings: '[NUMBER]' (150pt) '[LABEL]' (60pt) for each. 50% white space. NO other text." -o figures/conclusions.pngReview generated figures - check for overflow:
Select or create template:
assets/Design layout structure:
Set typography:
Create poster header:
Integrate AI-generated figures:
\includegraphics with proper sizingAdd minimal supporting text:
Add supplementary elements:
Review and iterate:
Test readability:
Optimize for printing:
Compile final PDF:
pdflatex poster.tex
# Or for better font support:
lualatex poster.texVerify output quality:
Prepare for printing:
Create supplementary materials:
This skill works effectively with:
Recommended workflow: Always use scientific-schematics and generate-image skills BEFORE creating the LaTeX poster to generate all visual elements.
AI-Generated Graphics Mistakes (MOST COMMON):
Fixing Overflow in AI Graphics: If your AI-generated graphics are overflowing or have small text:
Design Mistakes:
Content Mistakes:
Technical Mistakes:
Best Practices:
Ensure required LaTeX packages are installed:
# For TeX Live (Linux/Mac)
tlmgr install beamerposter tikzposter baposter
# For MiKTeX (Windows)
# Packages typically auto-install on first use
# Additional recommended packages
tlmgr install qrcode graphics xcolor tcolorbox subcaptionHelper scripts available in scripts/ directory:
compile_poster.sh: Automated compilation with error handlinggenerate_template.py: Interactive template generatorresize_images.py: Batch image optimization for postersposter_checklist.py: Pre-submission validation toolComprehensive reference files for detailed guidance:
references/latex_poster_packages.md: Detailed comparison of beamerposter, tikzposter, and baposter with examplesreferences/poster_layout_design.md: Layout principles, grid systems, and visual flowreferences/poster_design_principles.md: Typography, color theory, visual hierarchy, and accessibilityreferences/poster_content_guide.md: Content organization, writing style, and section-specific guidanceReady-to-use poster templates in assets/ directory:
Load these templates and customize for your specific research and conference requirements.
b58ad7e
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.