# Page layouts configuration for multi-image PDF generation # Each layout defines how images are arranged on a page # Positions are defined as (x, y, width, height) in relative units (0-1) # Coordinate system: (0,0) is top-left, X increases right, Y increases down # # Panel metadata helps guide image generation: # - panel_type: establishing/action/closeup/dialogue/reaction/transition/detail/splash # - focus: environment/character/characters/action/emotion/object/event # - composition: wide/tall/square/portrait/landscape # - shot_type: extreme_wide/wide/full/medium_full/medium/medium_closeup/closeup/extreme_closeup # - camera_angle: eye_level/high_angle/low_angle/overhead/dutch_angle/over_shoulder/pov layouts: 1_image: - id: "full_bleed" label: "Full Bleed" description: "Single image filling entire page" positions: - [0.0, 0.0, 1.0, 1.0] metadata: - {panel_type: "splash", focus: "event", composition: "square", shot_type: "full", camera_angle: "eye_level"} 2_images: - id: "horizontal_split" label: "Even Split" description: "Two equal panels side by side" positions: - [0.02, 0.02, 0.47, 0.96] - [0.51, 0.02, 0.47, 0.96] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - id: "vertical_split" label: "Top & Bottom" description: "Stacked panels" positions: - [0.02, 0.02, 0.96, 0.47] - [0.02, 0.51, 0.96, 0.47] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "high_angle"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "full", camera_angle: "eye_level"} - id: "hero_sidekick" label: "Hero & Sidekick" description: "Large main panel with small detail" positions: - [0.02, 0.02, 0.65, 0.96] - [0.69, 0.25, 0.29, 0.5] metadata: - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "portrait", shot_type: "closeup", camera_angle: "eye_level"} - id: "before_after" label: "Before & After" description: "Cause and effect layout" positions: - [0.02, 0.02, 0.96, 0.44] - [0.02, 0.48, 0.96, 0.5] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "medium_full", camera_angle: "dutch_angle"} - id: "diagonal_tension" label: "Diagonal Tension" description: "Overlapping dynamic panels" positions: - [0.02, 0.02, 0.6, 0.6] - [0.38, 0.38, 0.6, 0.6] metadata: - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium", camera_angle: "high_angle"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium", camera_angle: "low_angle"} 3_images: - id: "triptych" label: "Triptych" description: "Three equal vertical panels" positions: - [0.02, 0.02, 0.31, 0.96] - [0.345, 0.02, 0.31, 0.96] - [0.67, 0.02, 0.31, 0.96] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "portrait", shot_type: "medium_closeup", camera_angle: "eye_level"} - id: "hero_top" label: "Establishing Shot" description: "Large top panel with details below" positions: - [0.02, 0.02, 0.96, 0.5] - [0.02, 0.54, 0.47, 0.44] - [0.51, 0.54, 0.47, 0.44] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "high_angle"} - {panel_type: "action", focus: "character", composition: "square", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "square", shot_type: "closeup", camera_angle: "eye_level"} - id: "l_shape" label: "L-Shape Flow" description: "Reading flow in L pattern" positions: - [0.02, 0.02, 0.47, 0.47] - [0.51, 0.02, 0.47, 0.47] - [0.02, 0.51, 0.96, 0.47] metadata: - {panel_type: "dialogue", focus: "character", composition: "square", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "square", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "full", camera_angle: "eye_level"} - id: "spotlight" label: "Spotlight" description: "Central focus with side panels" positions: - [0.02, 0.15, 0.28, 0.7] - [0.32, 0.02, 0.36, 0.96] - [0.7, 0.15, 0.28, 0.7] metadata: - {panel_type: "reaction", focus: "character", composition: "portrait", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "reaction", focus: "character", composition: "portrait", shot_type: "closeup", camera_angle: "eye_level"} - id: "vertical_flow" label: "Vertical Flow" description: "Three stacked panels for sequential action" positions: - [0.02, 0.02, 0.96, 0.31] - [0.02, 0.345, 0.96, 0.31] - [0.02, 0.67, 0.96, 0.31] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "medium_full", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "medium", camera_angle: "dutch_angle"} - id: "manga_action" label: "Manga Action" description: "Dynamic manga-style layout" positions: - [0.52, 0.02, 0.46, 0.45] - [0.02, 0.02, 0.48, 0.65] - [0.02, 0.69, 0.96, 0.29] metadata: - {panel_type: "reaction", focus: "emotion", composition: "square", shot_type: "closeup", camera_angle: "low_angle"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "wide", camera_angle: "overhead"} 4_images: - id: "grid_2x2" label: "Classic Grid" description: "Traditional 2x2 layout" positions: - [0.02, 0.02, 0.47, 0.47] - [0.51, 0.02, 0.47, 0.47] - [0.02, 0.51, 0.47, 0.47] - [0.51, 0.51, 0.47, 0.47] metadata: - {panel_type: "establishing", focus: "environment", composition: "square", shot_type: "wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "square", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "square", shot_type: "closeup", camera_angle: "eye_level"} - id: "widescreen" label: "Widescreen Strips" description: "Four cinematic horizontal strips" positions: - [0.02, 0.02, 0.96, 0.23] - [0.02, 0.27, 0.96, 0.23] - [0.02, 0.52, 0.96, 0.23] - [0.02, 0.77, 0.96, 0.21] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "characters", composition: "wide", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "reaction", focus: "emotion", composition: "wide", shot_type: "medium_closeup", camera_angle: "eye_level"} - id: "hero_cluster" label: "Hero with Cluster" description: "Large panel with three supporting" positions: - [0.02, 0.02, 0.6, 0.63] - [0.64, 0.02, 0.34, 0.3] - [0.64, 0.34, 0.34, 0.31] - [0.02, 0.67, 0.96, 0.31] metadata: - {panel_type: "action", focus: "event", composition: "square", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} - {panel_type: "transition", focus: "environment", composition: "wide", shot_type: "wide", camera_angle: "eye_level"} - id: "comic_strip" label: "Comic Strip" description: "Newspaper strip style" positions: - [0.02, 0.3, 0.23, 0.4] - [0.27, 0.3, 0.23, 0.4] - [0.52, 0.3, 0.23, 0.4] - [0.77, 0.3, 0.21, 0.4] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait", shot_type: "full", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "characters", composition: "portrait", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "portrait", shot_type: "closeup", camera_angle: "eye_level"} - id: "z_pattern" label: "Z-Pattern" description: "Natural reading flow in Z shape" positions: - [0.02, 0.02, 0.47, 0.35] - [0.51, 0.02, 0.47, 0.35] - [0.02, 0.39, 0.47, 0.59] - [0.51, 0.39, 0.47, 0.59] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "medium_full", camera_angle: "dutch_angle"} - id: "explosion" label: "Explosion" description: "Central impact with surrounding panels" positions: - [0.02, 0.02, 0.35, 0.35] - [0.63, 0.02, 0.35, 0.35] - [0.27, 0.27, 0.46, 0.46] - [0.02, 0.63, 0.96, 0.35] metadata: - {panel_type: "establishing", focus: "environment", composition: "square", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "overhead"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium", camera_angle: "low_angle"} - {panel_type: "reaction", focus: "characters", composition: "wide", shot_type: "medium_full", camera_angle: "eye_level"} 5_images: - id: "hero_banner" label: "Hero Banner" description: "Wide establishing shot with four panels below" positions: - [0.02, 0.02, 0.96, 0.38] - [0.02, 0.42, 0.47, 0.28] - [0.51, 0.42, 0.47, 0.28] - [0.02, 0.72, 0.47, 0.26] - [0.51, 0.72, 0.47, 0.26] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} - id: "manga_vertical" label: "Manga Vertical" description: "Japanese right-to-left vertical flow" positions: - [0.52, 0.02, 0.46, 0.32] - [0.02, 0.02, 0.48, 0.32] - [0.52, 0.36, 0.46, 0.3] - [0.02, 0.36, 0.48, 0.3] - [0.02, 0.68, 0.96, 0.3] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "action", focus: "character", composition: "landscape", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "full", camera_angle: "overhead"} # # disabled because his "pyramid" effect does't work well with only 5 images, # (it doesn't fit the whole page) # #- id: "pyramid" # label: "Pyramid" # description: "Building tension from top to bottom" # positions: # - [0.25, 0.02, 0.5, 0.25] # - [0.02, 0.29, 0.47, 0.3] # - [0.51, 0.29, 0.47, 0.3] # - [0.02, 0.61, 0.31, 0.37] # - [0.67, 0.61, 0.31, 0.37] # metadata: # - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "high_angle"} # - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} # - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} # - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} # - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "medium", camera_angle: "dutch_angle"} # # disabled because it doesn't look good, it creates a lot of empty spots in the cardinal directions, # plus there is some overlap between the central image and the 4 others # #- id: "spotlight_drama" # label: "Spotlight Drama" # description: "Central focus with corner details" # positions: # - [0.02, 0.02, 0.35, 0.35] # - [0.63, 0.02, 0.35, 0.35] # - [0.22, 0.22, 0.56, 0.56] # - [0.02, 0.63, 0.35, 0.35] # - [0.63, 0.63, 0.35, 0.35] # metadata: # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "overhead"} # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "eye_level"} # - {panel_type: "action", focus: "character", composition: "square", shot_type: "full", camera_angle: "low_angle"} # - {panel_type: "reaction", focus: "emotion", composition: "square", shot_type: "closeup", camera_angle: "low_angle"} # - {panel_type: "reaction", focus: "emotion", composition: "square", shot_type: "closeup", camera_angle: "high_angle"} - id: "euro_bd" label: "Euro BD Classic" description: "Franco-Belgian structured layout" positions: - [0.02, 0.02, 0.47, 0.29] - [0.51, 0.02, 0.47, 0.29] - [0.02, 0.33, 0.96, 0.31] - [0.02, 0.66, 0.47, 0.32] - [0.51, 0.66, 0.47, 0.32] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "full", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "characters", composition: "landscape", shot_type: "medium", camera_angle: "over_shoulder"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "medium_closeup", camera_angle: "eye_level"} - id: "action_burst" label: "Action Burst" description: "Dynamic superhero action layout" positions: - [0.02, 0.02, 0.55, 0.55] - [0.59, 0.02, 0.39, 0.26] - [0.59, 0.3, 0.39, 0.27] - [0.02, 0.59, 0.47, 0.39] - [0.51, 0.59, 0.47, 0.39] metadata: - {panel_type: "action", focus: "event", composition: "square", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "eye_level"} - {panel_type: "closeup", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "low_angle"} - {panel_type: "action", focus: "character", composition: "landscape", shot_type: "medium_full", camera_angle: "dutch_angle"} - {panel_type: "reaction", focus: "characters", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} 6_images: - id: "classic_grid" label: "Classic 2x3 Grid" description: "Traditional American comic layout" positions: - [0.02, 0.02, 0.47, 0.31] - [0.51, 0.02, 0.47, 0.31] - [0.02, 0.345, 0.47, 0.31] - [0.51, 0.345, 0.47, 0.31] - [0.02, 0.67, 0.47, 0.31] - [0.51, 0.67, 0.47, 0.31] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} # disabled as there is too much empty space around the central image #- id: "hero_surround" # label: "Hero Surrounded" # description: "Large central panel with five around it" # positions: # - [0.02, 0.02, 0.31, 0.28] # - [0.67, 0.02, 0.31, 0.28] # - [0.02, 0.7, 0.31, 0.28] # - [0.67, 0.7, 0.31, 0.28] # - [0.25, 0.25, 0.5, 0.5] # - [0.35, 0.35, 0.63, 0.33] # metadata: # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "overhead"} # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "eye_level"} # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "closeup", camera_angle: "low_angle"} # - {panel_type: "detail", focus: "character", composition: "square", shot_type: "closeup", camera_angle: "eye_level"} # - {panel_type: "action", focus: "character", composition: "square", shot_type: "full", camera_angle: "low_angle"} # - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium", camera_angle: "dutch_angle"} - id: "staircase" label: "Staircase" description: "Diagonal reading flow" positions: - [0.02, 0.02, 0.45, 0.3] - [0.49, 0.02, 0.49, 0.3] - [0.02, 0.34, 0.45, 0.3] - [0.49, 0.34, 0.49, 0.3] - [0.02, 0.66, 0.45, 0.32] - [0.49, 0.66, 0.49, 0.32] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium_full", camera_angle: "eye_level"} - {panel_type: "action", focus: "character", composition: "landscape", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} # disabled as there is too much empty space around the central image #- id: "splash_detail" # label: "Splash with Details" # description: "Full-page moment with detail insets" # positions: # - [0.05, 0.05, 0.4, 0.4] # - [0.55, 0.05, 0.4, 0.4] # - [0.05, 0.55, 0.4, 0.4] # - [0.55, 0.55, 0.4, 0.4] # - [0.25, 0.25, 0.5, 0.5] # - [0.35, 0.35, 0.3, 0.3] # metadata: # - {panel_type: "detail", focus: "environment", composition: "square", shot_type: "closeup", camera_angle: "eye_level"} # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "overhead"} # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "closeup", camera_angle: "low_angle"} # - {panel_type: "detail", focus: "character", composition: "square", shot_type: "closeup", camera_angle: "eye_level"} # - {panel_type: "action", focus: "event", composition: "square", shot_type: "full", camera_angle: "low_angle"} # - {panel_type: "closeup", focus: "emotion", composition: "square", shot_type: "extreme_closeup", camera_angle: "eye_level"} - id: "manga_4koma_plus" label: "Manga 4-Koma Plus" description: "Japanese 4-panel with header/footer" positions: - [0.02, 0.02, 0.96, 0.15] - [0.02, 0.19, 0.47, 0.25] - [0.51, 0.19, 0.47, 0.25] - [0.02, 0.46, 0.47, 0.25] - [0.51, 0.46, 0.47, 0.25] - [0.02, 0.73, 0.96, 0.25] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium_full", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "full", camera_angle: "dutch_angle"} - {panel_type: "reaction", focus: "emotion", composition: "wide", shot_type: "medium_closeup", camera_angle: "eye_level"} - id: "tension_build" label: "Tension Builder" description: "Progressive revelation layout" positions: - [0.02, 0.02, 0.96, 0.22] - [0.02, 0.26, 0.47, 0.22] - [0.51, 0.26, 0.47, 0.22] - [0.02, 0.5, 0.31, 0.48] - [0.345, 0.5, 0.31, 0.48] - [0.67, 0.5, 0.31, 0.48] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "medium_full", camera_angle: "dutch_angle"} - {panel_type: "closeup", focus: "emotion", composition: "portrait", shot_type: "extreme_closeup", camera_angle: "eye_level"} 7_images: # disabled as there is too much empty space around the central image plus some overlapping #- id: "hero_hexagon" # label: "Hero Hexagon" # description: "Central focus with six surrounding" # positions: # - [0.28, 0.02, 0.44, 0.3] # - [0.02, 0.25, 0.3, 0.25] # - [0.68, 0.25, 0.3, 0.25] # - [0.25, 0.35, 0.5, 0.3] # - [0.02, 0.52, 0.3, 0.25] # - [0.68, 0.52, 0.3, 0.25] # - [0.28, 0.68, 0.44, 0.3] # metadata: # - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "high_angle"} # - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} # - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "overhead"} # - {panel_type: "action", focus: "character", composition: "landscape", shot_type: "full", camera_angle: "low_angle"} # - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "eye_level"} # - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} # - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} - id: "narrative_flow" label: "Narrative Flow" description: "Story progression with varied sizes" positions: - [0.02, 0.02, 0.47, 0.28] - [0.51, 0.02, 0.47, 0.28] - [0.02, 0.32, 0.96, 0.24] - [0.02, 0.58, 0.31, 0.4] - [0.345, 0.58, 0.31, 0.4] - [0.67, 0.58, 0.31, 0.2] - [0.67, 0.8, 0.31, 0.18] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "wide", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "full", camera_angle: "eye_level"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "medium_full", camera_angle: "dutch_angle"} - {panel_type: "closeup", focus: "emotion", composition: "portrait", shot_type: "closeup", camera_angle: "low_angle"} - {panel_type: "detail", focus: "object", composition: "portrait", shot_type: "extreme_closeup", camera_angle: "overhead"} - id: "double_spread" label: "Double Feature" description: "Two hero panels with details" positions: - [0.02, 0.02, 0.47, 0.45] - [0.51, 0.02, 0.47, 0.45] - [0.02, 0.49, 0.31, 0.24] - [0.345, 0.49, 0.31, 0.24] - [0.67, 0.49, 0.31, 0.24] - [0.02, 0.75, 0.47, 0.23] - [0.51, 0.75, 0.47, 0.23] metadata: - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "full", camera_angle: "high_angle"} - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "closeup", camera_angle: "overhead"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} # disabled as there is too much empty space around the central image #- id: "spiral_narrative" # label: "Spiral Narrative" # description: "Circular reading flow" # positions: # - [0.28, 0.02, 0.44, 0.25] # - [0.52, 0.15, 0.46, 0.25] # - [0.52, 0.42, 0.46, 0.25] # - [0.28, 0.55, 0.44, 0.25] # - [0.02, 0.42, 0.44, 0.25] # - [0.02, 0.15, 0.44, 0.25] # - [0.3, 0.3, 0.4, 0.22] # metadata: # - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "high_angle"} # - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} # - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium_full", camera_angle: "eye_level"} # - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "full", camera_angle: "low_angle"} # - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} # - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} # - {panel_type: "closeup", focus: "character", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "pov"} - id: "action_montage" label: "Action Montage" description: "Fast-paced action sequence" positions: - [0.02, 0.02, 0.96, 0.3] - [0.02, 0.34, 0.31, 0.3] - [0.345, 0.34, 0.31, 0.3] - [0.67, 0.34, 0.31, 0.3] - [0.02, 0.66, 0.23, 0.32] - [0.27, 0.66, 0.23, 0.32] - [0.52, 0.66, 0.46, 0.32] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium", camera_angle: "dutch_angle"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium_full", camera_angle: "low_angle"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "full", camera_angle: "high_angle"} - {panel_type: "closeup", focus: "emotion", composition: "portrait", shot_type: "closeup", camera_angle: "low_angle"} - {panel_type: "closeup", focus: "emotion", composition: "portrait", shot_type: "extreme_closeup", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "characters", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - id: "cinematic_sequence" label: "Cinematic Sequence" description: "Movie-like panel progression" positions: - [0.02, 0.02, 0.96, 0.28] - [0.02, 0.32, 0.47, 0.2] - [0.51, 0.32, 0.47, 0.2] - [0.02, 0.54, 0.31, 0.21] - [0.345, 0.54, 0.31, 0.21] - [0.67, 0.54, 0.31, 0.21] - [0.02, 0.77, 0.96, 0.21] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium_full", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "full", camera_angle: "dutch_angle"} - {panel_type: "closeup", focus: "emotion", composition: "square", shot_type: "extreme_closeup", camera_angle: "pov"} - {panel_type: "reaction", focus: "characters", composition: "wide", shot_type: "medium", camera_angle: "eye_level"} 8_images: - id: "mega_grid" label: "Mega Grid" description: "Classic 4x2 grid" positions: - [0.02, 0.02, 0.23, 0.47] - [0.27, 0.02, 0.23, 0.47] - [0.52, 0.02, 0.23, 0.47] - [0.77, 0.02, 0.21, 0.47] - [0.02, 0.51, 0.23, 0.47] - [0.27, 0.51, 0.23, 0.47] - [0.52, 0.51, 0.23, 0.47] - [0.77, 0.51, 0.21, 0.47] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait", shot_type: "wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "portrait", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "portrait", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "medium_full", camera_angle: "eye_level"} - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "character", composition: "portrait", shot_type: "medium", camera_angle: "dutch_angle"} - {panel_type: "closeup", focus: "emotion", composition: "portrait", shot_type: "closeup", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "portrait", shot_type: "extreme_closeup", camera_angle: "low_angle"} - id: "chapter_opener" label: "Chapter Opener" description: "Splash page with progressive reveal" positions: - [0.02, 0.02, 0.96, 0.45] - [0.02, 0.49, 0.23, 0.24] - [0.27, 0.49, 0.23, 0.24] - [0.52, 0.49, 0.23, 0.24] - [0.77, 0.49, 0.21, 0.24] - [0.02, 0.75, 0.23, 0.23] - [0.27, 0.75, 0.23, 0.23] - [0.52, 0.75, 0.46, 0.23] metadata: - {panel_type: "splash", focus: "environment", composition: "wide", shot_type: "extreme_wide", camera_angle: "high_angle"} - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "overhead"} - {panel_type: "detail", focus: "character", composition: "square", shot_type: "closeup", camera_angle: "low_angle"} - {panel_type: "dialogue", focus: "character", composition: "square", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "square", shot_type: "medium", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium_full", camera_angle: "eye_level"} - {panel_type: "closeup", focus: "emotion", composition: "square", shot_type: "extreme_closeup", camera_angle: "pov"} - {panel_type: "reaction", focus: "characters", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - id: "parallel_stories" label: "Parallel Stories" description: "Two simultaneous narratives" positions: - [0.02, 0.02, 0.47, 0.23] - [0.51, 0.02, 0.47, 0.23] - [0.02, 0.27, 0.47, 0.23] - [0.51, 0.27, 0.47, 0.23] - [0.02, 0.52, 0.47, 0.23] - [0.51, 0.52, 0.47, 0.23] - [0.02, 0.77, 0.47, 0.21] - [0.51, 0.77, 0.47, 0.21] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "eye_level"} - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium_full", camera_angle: "dutch_angle"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} #- id: "hero_explosion" # label: "Hero Explosion" # description: "Central impact radiating outward" # positions: # - [0.02, 0.02, 0.3, 0.3] # - [0.68, 0.02, 0.3, 0.3] # - [0.02, 0.68, 0.3, 0.3] # - [0.68, 0.68, 0.3, 0.3] # - [0.34, 0.02, 0.32, 0.28] # - [0.02, 0.34, 0.28, 0.32] # - [0.7, 0.34, 0.28, 0.32] # - [0.34, 0.7, 0.32, 0.28] # metadata: # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "closeup", camera_angle: "overhead"} # - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "eye_level"} # - {panel_type: "detail", focus: "character", composition: "square", shot_type: "closeup", camera_angle: "low_angle"} # - {panel_type: "detail", focus: "character", composition: "square", shot_type: "closeup", camera_angle: "high_angle"} # - {panel_type: "action", focus: "event", composition: "landscape", shot_type: "medium", camera_angle: "dutch_angle"} # - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} # - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "medium_full", camera_angle: "high_angle"} # - {panel_type: "closeup", focus: "emotion", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "pov"} - id: "magazine_style" label: "Magazine Style" description: "Editorial layout with varied sizes" positions: - [0.02, 0.02, 0.63, 0.35] - [0.67, 0.02, 0.31, 0.35] - [0.02, 0.39, 0.31, 0.28] - [0.35, 0.39, 0.31, 0.28] - [0.68, 0.39, 0.3, 0.28] - [0.02, 0.69, 0.31, 0.29] - [0.35, 0.69, 0.31, 0.29] - [0.68, 0.69, 0.3, 0.29] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape", shot_type: "wide", camera_angle: "high_angle"} - {panel_type: "dialogue", focus: "character", composition: "portrait", shot_type: "medium", camera_angle: "eye_level"} - {panel_type: "detail", focus: "object", composition: "square", shot_type: "extreme_closeup", camera_angle: "overhead"} - {panel_type: "action", focus: "event", composition: "square", shot_type: "medium_full", camera_angle: "eye_level"} - {panel_type: "dialogue", focus: "character", composition: "square", shot_type: "medium_closeup", camera_angle: "over_shoulder"} - {panel_type: "action", focus: "character", composition: "square", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "closeup", focus: "emotion", composition: "square", shot_type: "closeup", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "square", shot_type: "extreme_closeup", camera_angle: "pov"} - id: "epic_finale" label: "Epic Finale" description: "Climactic page layout" positions: - [0.02, 0.02, 0.31, 0.25] - [0.345, 0.02, 0.31, 0.25] - [0.67, 0.02, 0.31, 0.25] - [0.02, 0.29, 0.47, 0.4] - [0.51, 0.29, 0.47, 0.4] - [0.02, 0.71, 0.31, 0.27] - [0.345, 0.71, 0.31, 0.27] - [0.67, 0.71, 0.31, 0.27] metadata: - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "overhead"} - {panel_type: "dialogue", focus: "character", composition: "landscape", shot_type: "medium_closeup", camera_angle: "eye_level"} - {panel_type: "detail", focus: "object", composition: "landscape", shot_type: "closeup", camera_angle: "low_angle"} - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "full", camera_angle: "low_angle"} - {panel_type: "action", focus: "event", composition: "portrait", shot_type: "full", camera_angle: "high_angle"} - {panel_type: "closeup", focus: "emotion", composition: "landscape", shot_type: "closeup", camera_angle: "eye_level"} - {panel_type: "reaction", focus: "emotion", composition: "landscape", shot_type: "extreme_closeup", camera_angle: "pov"} - {panel_type: "reaction", focus: "characters", composition: "landscape", shot_type: "medium", camera_angle: "eye_level"} # Page layouts configuration for multi-image PDF generation # Each layout defines how images are arranged on a page # Positions are defined as (x, y, width, height) in relative units (0-1) # Coordinate system: (0,0) is top-left, X increases right, Y increases down # # Panel metadata helps guide image generation: # - panel_type: establishing/action/closeup/dialogue/reaction/transition/detail/splash # - focus: environment/character/characters/action/emotion/object/event # - composition: wide/tall/square/portrait/landscape layouts: 1_image: - id: "full_bleed" label: "Full Bleed" description: "Single image filling entire page" positions: - [0.0, 0.0, 1.0, 1.0] metadata: - {panel_type: "splash", focus: "event", composition: "square"} - id: "classic_frame" label: "Classic Frame" description: "Single image with traditional margins" positions: - [0.05, 0.05, 0.9, 0.9] metadata: - {panel_type: "establishing", focus: "environment", composition: "square"} - id: "portrait_focus" label: "Portrait Focus" description: "Vertical emphasis for character shots" positions: - [0.15, 0.02, 0.7, 0.96] metadata: - {panel_type: "closeup", focus: "character", composition: "portrait"} - id: "cinematic_wide" label: "Cinematic Wide" description: "Wide letterbox format" positions: - [0.02, 0.25, 0.96, 0.5] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - id: "floating_center" label: "Floating Center" description: "Centered with breathing room" positions: - [0.1, 0.15, 0.8, 0.7] metadata: - {panel_type: "dialogue", focus: "character", composition: "square"} 2_images: - id: "horizontal_split" label: "Even Split" description: "Two equal panels side by side" positions: - [0.02, 0.02, 0.47, 0.96] - [0.51, 0.02, 0.47, 0.96] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait"} - {panel_type: "action", focus: "character", composition: "portrait"} - id: "vertical_split" label: "Top & Bottom" description: "Stacked panels" positions: - [0.02, 0.02, 0.96, 0.47] - [0.02, 0.51, 0.96, 0.47] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "action", focus: "event", composition: "wide"} - id: "hero_sidekick" label: "Hero & Sidekick" description: "Large main panel with small detail" positions: - [0.02, 0.02, 0.65, 0.96] - [0.69, 0.25, 0.29, 0.5] metadata: - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "reaction", focus: "emotion", composition: "portrait"} - id: "before_after" label: "Before & After" description: "Cause and effect layout" positions: - [0.02, 0.02, 0.96, 0.44] - [0.02, 0.48, 0.96, 0.5] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "action", focus: "event", composition: "wide"} - id: "diagonal_tension" label: "Diagonal Tension" description: "Overlapping dynamic panels" positions: - [0.02, 0.02, 0.6, 0.6] - [0.38, 0.38, 0.6, 0.6] metadata: - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} 3_images: - id: "triptych" label: "Triptych" description: "Three equal vertical panels" positions: - [0.02, 0.02, 0.31, 0.96] - [0.345, 0.02, 0.31, 0.96] - [0.67, 0.02, 0.31, 0.96] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "reaction", focus: "emotion", composition: "portrait"} - id: "hero_top" label: "Establishing Shot" description: "Large top panel with details below" positions: - [0.02, 0.02, 0.96, 0.5] - [0.02, 0.54, 0.47, 0.44] - [0.51, 0.54, 0.47, 0.44] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "action", focus: "character", composition: "square"} - {panel_type: "reaction", focus: "emotion", composition: "square"} - id: "l_shape" label: "L-Shape Flow" description: "Reading flow in L pattern" positions: - [0.02, 0.02, 0.47, 0.47] - [0.51, 0.02, 0.47, 0.47] - [0.02, 0.51, 0.96, 0.47] metadata: - {panel_type: "dialogue", focus: "character", composition: "square"} - {panel_type: "dialogue", focus: "character", composition: "square"} - {panel_type: "action", focus: "event", composition: "wide"} - id: "spotlight" label: "Spotlight" description: "Central focus with side panels" positions: - [0.02, 0.15, 0.28, 0.7] - [0.32, 0.02, 0.36, 0.96] - [0.7, 0.15, 0.28, 0.7] metadata: - {panel_type: "reaction", focus: "character", composition: "portrait"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "reaction", focus: "character", composition: "portrait"} - id: "vertical_flow" label: "Vertical Flow" description: "Three stacked panels for sequential action" positions: - [0.02, 0.02, 0.96, 0.31] - [0.02, 0.345, 0.96, 0.31] - [0.02, 0.67, 0.96, 0.31] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "action", focus: "event", composition: "wide"} - {panel_type: "action", focus: "event", composition: "wide"} - id: "manga_action" label: "Manga Action" description: "Dynamic manga-style layout" positions: - [0.52, 0.02, 0.46, 0.45] - [0.02, 0.02, 0.48, 0.65] - [0.02, 0.69, 0.96, 0.29] metadata: - {panel_type: "reaction", focus: "emotion", composition: "square"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "wide"} 4_images: - id: "grid_2x2" label: "Classic Grid" description: "Traditional 2x2 layout" positions: - [0.02, 0.02, 0.47, 0.47] - [0.51, 0.02, 0.47, 0.47] - [0.02, 0.51, 0.47, 0.47] - [0.51, 0.51, 0.47, 0.47] metadata: - {panel_type: "establishing", focus: "environment", composition: "square"} - {panel_type: "dialogue", focus: "character", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "reaction", focus: "emotion", composition: "square"} - id: "widescreen" label: "Widescreen Strips" description: "Four cinematic horizontal strips" positions: - [0.02, 0.02, 0.96, 0.23] - [0.02, 0.27, 0.96, 0.23] - [0.02, 0.52, 0.96, 0.23] - [0.02, 0.77, 0.96, 0.21] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "dialogue", focus: "characters", composition: "wide"} - {panel_type: "action", focus: "event", composition: "wide"} - {panel_type: "reaction", focus: "emotion", composition: "wide"} - id: "hero_cluster" label: "Hero with Cluster" description: "Large panel with three supporting" positions: - [0.02, 0.02, 0.6, 0.63] - [0.64, 0.02, 0.34, 0.3] - [0.64, 0.34, 0.34, 0.31] - [0.02, 0.67, 0.96, 0.31] metadata: - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "detail", focus: "object", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - {panel_type: "transition", focus: "environment", composition: "wide"} - id: "comic_strip" label: "Comic Strip" description: "Newspaper strip style" positions: - [0.02, 0.3, 0.23, 0.4] - [0.27, 0.3, 0.23, 0.4] - [0.52, 0.3, 0.23, 0.4] - [0.77, 0.3, 0.21, 0.4] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait"} - {panel_type: "dialogue", focus: "characters", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "reaction", focus: "emotion", composition: "portrait"} - id: "z_pattern" label: "Z-Pattern" description: "Natural reading flow in Z shape" positions: - [0.02, 0.02, 0.47, 0.35] - [0.51, 0.02, 0.47, 0.35] - [0.02, 0.39, 0.47, 0.59] - [0.51, 0.39, 0.47, 0.59] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "portrait"} - id: "explosion" label: "Explosion" description: "Central impact with surrounding panels" positions: - [0.02, 0.02, 0.35, 0.35] - [0.63, 0.02, 0.35, 0.35] - [0.27, 0.27, 0.46, 0.46] - [0.02, 0.63, 0.96, 0.35] metadata: - {panel_type: "establishing", focus: "environment", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "reaction", focus: "characters", composition: "wide"} 5_images: - id: "hero_banner" label: "Hero Banner" description: "Wide establishing shot with four panels below" positions: - [0.02, 0.02, 0.96, 0.38] - [0.02, 0.42, 0.47, 0.28] - [0.51, 0.42, 0.47, 0.28] - [0.02, 0.72, 0.47, 0.26] - [0.51, 0.72, 0.47, 0.26] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - id: "manga_vertical" label: "Manga Vertical" description: "Japanese right-to-left vertical flow" positions: - [0.52, 0.02, 0.46, 0.32] - [0.02, 0.02, 0.48, 0.32] - [0.52, 0.36, 0.46, 0.3] - [0.02, 0.36, 0.48, 0.3] - [0.02, 0.68, 0.96, 0.3] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "character", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "wide"} # disabled as it doesn't work great #- id: "pyramid" # label: "Pyramid" # description: "Building tension from top to bottom" # positions: # - [0.25, 0.02, 0.5, 0.25] # - [0.02, 0.29, 0.47, 0.3] # - [0.51, 0.29, 0.47, 0.3] # - [0.02, 0.61, 0.31, 0.37] # - [0.67, 0.61, 0.31, 0.37] # metadata: # - {panel_type: "establishing", focus: "environment", composition: "landscape"} # - {panel_type: "dialogue", focus: "character", composition: "landscape"} # - {panel_type: "dialogue", focus: "character", composition: "landscape"} # - {panel_type: "action", focus: "event", composition: "portrait"} # - {panel_type: "action", focus: "event", composition: "portrait"} - id: "spotlight_drama" label: "Spotlight Drama" description: "Central focus with corner details" positions: - [0.02, 0.02, 0.35, 0.35] - [0.63, 0.02, 0.35, 0.35] - [0.22, 0.22, 0.56, 0.56] - [0.02, 0.63, 0.35, 0.35] - [0.63, 0.63, 0.35, 0.35] metadata: - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "action", focus: "character", composition: "square"} - {panel_type: "reaction", focus: "emotion", composition: "square"} - {panel_type: "reaction", focus: "emotion", composition: "square"} - id: "euro_bd" label: "Euro BD Classic" description: "Franco-Belgian structured layout" positions: - [0.02, 0.02, 0.47, 0.29] - [0.51, 0.02, 0.47, 0.29] - [0.02, 0.33, 0.96, 0.31] - [0.02, 0.66, 0.47, 0.32] - [0.51, 0.66, 0.47, 0.32] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "wide"} - {panel_type: "dialogue", focus: "characters", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - id: "action_burst" label: "Action Burst" description: "Dynamic superhero action layout" positions: - [0.02, 0.02, 0.55, 0.55] - [0.59, 0.02, 0.39, 0.26] - [0.59, 0.3, 0.39, 0.27] - [0.02, 0.59, 0.47, 0.39] - [0.51, 0.59, 0.47, 0.39] metadata: - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "detail", focus: "object", composition: "landscape"} - {panel_type: "closeup", focus: "emotion", composition: "landscape"} - {panel_type: "action", focus: "character", composition: "landscape"} - {panel_type: "reaction", focus: "characters", composition: "landscape"} 6_images: - id: "classic_grid" label: "Classic 2x3 Grid" description: "Traditional American comic layout" positions: - [0.02, 0.02, 0.47, 0.31] - [0.51, 0.02, 0.47, 0.31] - [0.02, 0.345, 0.47, 0.31] - [0.51, 0.345, 0.47, 0.31] - [0.02, 0.67, 0.47, 0.31] - [0.51, 0.67, 0.47, 0.31] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - id: "hero_surround" label: "Hero Surrounded" description: "Large central panel with five around it" positions: - [0.02, 0.02, 0.31, 0.28] - [0.67, 0.02, 0.31, 0.28] - [0.02, 0.7, 0.31, 0.28] - [0.67, 0.7, 0.31, 0.28] - [0.25, 0.25, 0.5, 0.5] - [0.35, 0.35, 0.63, 0.33] metadata: - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "action", focus: "character", composition: "square"} - {panel_type: "action", focus: "event", composition: "landscape"} - id: "staircase" label: "Staircase" description: "Diagonal reading flow" positions: - [0.02, 0.02, 0.45, 0.3] - [0.49, 0.02, 0.49, 0.3] - [0.02, 0.34, 0.45, 0.3] - [0.49, 0.34, 0.49, 0.3] - [0.02, 0.66, 0.45, 0.32] - [0.49, 0.66, 0.49, 0.32] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "action", focus: "character", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - id: "splash_detail" label: "Splash with Details" description: "Full-page moment with detail insets" positions: - [0.05, 0.05, 0.4, 0.4] - [0.55, 0.05, 0.4, 0.4] - [0.05, 0.55, 0.4, 0.4] - [0.55, 0.55, 0.4, 0.4] - [0.25, 0.25, 0.5, 0.5] - [0.35, 0.35, 0.3, 0.3] metadata: - {panel_type: "detail", focus: "environment", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "character", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "closeup", focus: "emotion", composition: "square"} - id: "manga_4koma_plus" label: "Manga 4-Koma Plus" description: "Japanese 4-panel with header/footer" positions: - [0.02, 0.02, 0.96, 0.15] - [0.02, 0.19, 0.47, 0.25] - [0.51, 0.19, 0.47, 0.25] - [0.02, 0.46, 0.47, 0.25] - [0.51, 0.46, 0.47, 0.25] - [0.02, 0.73, 0.96, 0.25] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "wide"} - id: "tension_build" label: "Tension Builder" description: "Progressive revelation layout" positions: - [0.02, 0.02, 0.96, 0.22] - [0.02, 0.26, 0.47, 0.22] - [0.51, 0.26, 0.47, 0.22] - [0.02, 0.5, 0.31, 0.48] - [0.345, 0.5, 0.31, 0.48] - [0.67, 0.5, 0.31, 0.48] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "closeup", focus: "emotion", composition: "portrait"} 7_images: #- id: "hero_hexagon" # label: "Hero Hexagon" # description: "Central focus with six surrounding" # positions: # - [0.28, 0.02, 0.44, 0.3] # - [0.02, 0.25, 0.3, 0.25] # - [0.68, 0.25, 0.3, 0.25] # - [0.25, 0.35, 0.5, 0.3] # - [0.02, 0.52, 0.3, 0.25] # - [0.68, 0.52, 0.3, 0.25] # - [0.28, 0.68, 0.44, 0.3] # metadata: # - {panel_type: "establishing", focus: "environment", composition: "landscape"} # - {panel_type: "detail", focus: "object", composition: "landscape"} # - {panel_type: "detail", focus: "object", composition: "landscape"} # - {panel_type: "action", focus: "character", composition: "landscape"} # - {panel_type: "dialogue", focus: "character", composition: "landscape"} # - {panel_type: "dialogue", focus: "character", composition: "landscape"} # - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - id: "narrative_flow" label: "Narrative Flow" description: "Story progression with varied sizes" positions: - [0.02, 0.02, 0.47, 0.28] - [0.51, 0.02, 0.47, 0.28] - [0.02, 0.32, 0.96, 0.24] - [0.02, 0.58, 0.31, 0.4] - [0.345, 0.58, 0.31, 0.4] - [0.67, 0.58, 0.31, 0.2] - [0.67, 0.8, 0.31, 0.18] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "wide"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "closeup", focus: "emotion", composition: "portrait"} - {panel_type: "detail", focus: "object", composition: "portrait"} - id: "double_spread" label: "Double Feature" description: "Two hero panels with details" positions: - [0.02, 0.02, 0.47, 0.45] - [0.51, 0.02, 0.47, 0.45] - [0.02, 0.49, 0.31, 0.24] - [0.345, 0.49, 0.31, 0.24] - [0.67, 0.49, 0.31, 0.24] - [0.02, 0.75, 0.47, 0.23] - [0.51, 0.75, 0.47, 0.23] metadata: - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "detail", focus: "object", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "detail", focus: "object", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} # disabled as it doesn't work great #- id: "spiral_narrative" # label: "Spiral Narrative" # description: "Circular reading flow" # positions: # - [0.28, 0.02, 0.44, 0.25] # - [0.52, 0.15, 0.46, 0.25] # - [0.52, 0.42, 0.46, 0.25] # - [0.28, 0.55, 0.44, 0.25] # - [0.02, 0.42, 0.44, 0.25] # - [0.02, 0.15, 0.44, 0.25] # - [0.3, 0.3, 0.4, 0.22] # metadata: # - {panel_type: "establishing", focus: "environment", composition: "landscape"} # - {panel_type: "dialogue", focus: "character", composition: "landscape"} # - {panel_type: "action", focus: "event", composition: "landscape"} # - {panel_type: "action", focus: "event", composition: "landscape"} # - {panel_type: "dialogue", focus: "character", composition: "landscape"} # - {panel_type: "reaction", focus: "emotion", composition: "landscape"} # - {panel_type: "closeup", focus: "character", composition: "landscape"} - id: "action_montage" label: "Action Montage" description: "Fast-paced action sequence" positions: - [0.02, 0.02, 0.96, 0.3] - [0.02, 0.34, 0.31, 0.3] - [0.345, 0.34, 0.31, 0.3] - [0.67, 0.34, 0.31, 0.3] - [0.02, 0.66, 0.23, 0.32] - [0.27, 0.66, 0.23, 0.32] - [0.52, 0.66, 0.46, 0.32] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "closeup", focus: "emotion", composition: "portrait"} - {panel_type: "closeup", focus: "emotion", composition: "portrait"} - {panel_type: "reaction", focus: "characters", composition: "landscape"} - id: "cinematic_sequence" label: "Cinematic Sequence" description: "Movie-like panel progression" positions: - [0.02, 0.02, 0.96, 0.28] - [0.02, 0.32, 0.47, 0.2] - [0.51, 0.32, 0.47, 0.2] - [0.02, 0.54, 0.31, 0.21] - [0.345, 0.54, 0.31, 0.21] - [0.67, 0.54, 0.31, 0.21] - [0.02, 0.77, 0.96, 0.21] metadata: - {panel_type: "establishing", focus: "environment", composition: "wide"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "closeup", focus: "emotion", composition: "square"} - {panel_type: "reaction", focus: "characters", composition: "wide"} 8_images: - id: "mega_grid" label: "Mega Grid" description: "Classic 4x2 grid" positions: - [0.02, 0.02, 0.23, 0.47] - [0.27, 0.02, 0.23, 0.47] - [0.52, 0.02, 0.23, 0.47] - [0.77, 0.02, 0.21, 0.47] - [0.02, 0.51, 0.23, 0.47] - [0.27, 0.51, 0.23, 0.47] - [0.52, 0.51, 0.23, 0.47] - [0.77, 0.51, 0.21, 0.47] metadata: - {panel_type: "establishing", focus: "environment", composition: "portrait"} - {panel_type: "dialogue", focus: "character", composition: "portrait"} - {panel_type: "dialogue", focus: "character", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "action", focus: "character", composition: "portrait"} - {panel_type: "closeup", focus: "emotion", composition: "portrait"} - {panel_type: "reaction", focus: "emotion", composition: "portrait"} - id: "chapter_opener" label: "Chapter Opener" description: "Splash page with progressive reveal" positions: - [0.02, 0.02, 0.96, 0.45] - [0.02, 0.49, 0.23, 0.24] - [0.27, 0.49, 0.23, 0.24] - [0.52, 0.49, 0.23, 0.24] - [0.77, 0.49, 0.21, 0.24] - [0.02, 0.75, 0.23, 0.23] - [0.27, 0.75, 0.23, 0.23] - [0.52, 0.75, 0.46, 0.23] metadata: - {panel_type: "splash", focus: "environment", composition: "wide"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "character", composition: "square"} - {panel_type: "dialogue", focus: "character", composition: "square"} - {panel_type: "dialogue", focus: "character", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "closeup", focus: "emotion", composition: "square"} - {panel_type: "reaction", focus: "characters", composition: "landscape"} - id: "parallel_stories" label: "Parallel Stories" description: "Two simultaneous narratives" positions: - [0.02, 0.02, 0.47, 0.23] - [0.51, 0.02, 0.47, 0.23] - [0.02, 0.27, 0.47, 0.23] - [0.51, 0.27, 0.47, 0.23] - [0.02, 0.52, 0.47, 0.23] - [0.51, 0.52, 0.47, 0.23] - [0.02, 0.77, 0.47, 0.21] - [0.51, 0.77, 0.47, 0.21] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - id: "hero_explosion" label: "Hero Explosion" description: "Central impact radiating outward" positions: - [0.02, 0.02, 0.3, 0.3] - [0.68, 0.02, 0.3, 0.3] - [0.02, 0.68, 0.3, 0.3] - [0.68, 0.68, 0.3, 0.3] - [0.34, 0.02, 0.32, 0.28] - [0.02, 0.34, 0.28, 0.32] - [0.7, 0.34, 0.28, 0.32] - [0.34, 0.7, 0.32, 0.28] metadata: - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "detail", focus: "character", composition: "square"} - {panel_type: "detail", focus: "character", composition: "square"} - {panel_type: "action", focus: "event", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "closeup", focus: "emotion", composition: "landscape"} - id: "magazine_style" label: "Magazine Style" description: "Editorial layout with varied sizes" positions: - [0.02, 0.02, 0.63, 0.35] - [0.67, 0.02, 0.31, 0.35] - [0.02, 0.39, 0.31, 0.28] - [0.35, 0.39, 0.31, 0.28] - [0.68, 0.39, 0.3, 0.28] - [0.02, 0.69, 0.31, 0.29] - [0.35, 0.69, 0.31, 0.29] - [0.68, 0.69, 0.3, 0.29] metadata: - {panel_type: "establishing", focus: "environment", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "portrait"} - {panel_type: "detail", focus: "object", composition: "square"} - {panel_type: "action", focus: "event", composition: "square"} - {panel_type: "dialogue", focus: "character", composition: "square"} - {panel_type: "action", focus: "character", composition: "square"} - {panel_type: "closeup", focus: "emotion", composition: "square"} - {panel_type: "reaction", focus: "emotion", composition: "square"} - id: "epic_finale" label: "Epic Finale" description: "Climactic page layout" positions: - [0.02, 0.02, 0.31, 0.25] - [0.345, 0.02, 0.31, 0.25] - [0.67, 0.02, 0.31, 0.25] - [0.02, 0.29, 0.47, 0.4] - [0.51, 0.29, 0.47, 0.4] - [0.02, 0.71, 0.31, 0.27] - [0.345, 0.71, 0.31, 0.27] - [0.67, 0.71, 0.31, 0.27] metadata: - {panel_type: "detail", focus: "object", composition: "landscape"} - {panel_type: "dialogue", focus: "character", composition: "landscape"} - {panel_type: "detail", focus: "object", composition: "landscape"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "action", focus: "event", composition: "portrait"} - {panel_type: "closeup", focus: "emotion", composition: "landscape"} - {panel_type: "reaction", focus: "emotion", composition: "landscape"} - {panel_type: "reaction", focus: "characters", composition: "landscape"}