Figio poster composition — FigureSpec for conference posters¶
Overview¶
Figio's existing multi-panel composition model (FigureSpec YAML → panel rendering → SVG composition → PDF export) maps naturally to conference poster layout. A poster is essentially a large-format figure with:
- A grid/mosaic layout on a large canvas (A0, A1)
- Text block panels for title, authors, methods, conclusions
- Figure panels referencing existing figio outputs or pipeline results
- An annotation layer for logos, affiliations, QR codes, funding acknowledgements
How it would work¶
A poster would be defined as a FigureSpec YAML in docs/deliverables/posters/<slug>/poster.yml:
id: fens-2026-swr-detection
target: poster-a0
panels:
title:
type: text
content: "Sharp-Wave Ripple Detection in Human iEEG..."
methods:
type: text
content_file: sections/methods.md
fig-detection:
type: figure
source: figures/swr-detection-rate.yml # existing figio spec
fig-spectrogram:
type: figure
source: figures/spectrogram-burst.yml
conclusions:
type: text
content_file: sections/conclusions.md
layout:
type: mosaic
mosaic: |
TTTTTT
MMFFGG
MMFFGG
CCCCCC
annotations:
- type: logo
position: top-right
source: assets/lmu-logo.svg
What figio already supports¶
- Grid and mosaic layouts with
LayoutSpec - Layout constraints (equal_height, equal_width, align labels, shared colorbar)
- Typed annotations (panel_label, callout, arrow, bracket, caption)
- SVG composition via
composer.py→ComposedFigure - PDF/PNG export
What would need to be added¶
- Text block panel type (currently panels are opaque SVG fragments from renderers)
- Large-format canvas presets (A0, A1, custom dimensions)
- Markdown-to-SVG text rendering for content panels
- Logo/image panel type for static assets
- Possibly a poster-specific target profile
Priority¶
Low — the deliverables convention supports manual poster creation now. This would automate the build step for reproducible, version-controlled posters. Worth pursuing when a concrete conference deadline motivates it.