Capstone Project
Every skill from the previous nineteen sessions converges here. No guided hand-holding, no prescribed steps — you design the workflow, make every decision, and produce a finished piece with dual screen and print deliverables. This is what GIMP mastery looks like in practice.
The purpose of this session is not to learn anything new. It is to discover which skills have become automatic and which still require conscious thought — and to close that gap through a single sustained workflow. Every session in this course addressed an isolated skill. Real work never isolates skills: a print-ready poster requires layer management, colour correction, retouching, compositing, type handling, and export knowledge all active simultaneously and in the right sequence.
The brief below specifies what to produce and what constraints to meet. It does not specify how. The workflow decisions — which tools to use, in what order, with what settings — are yours. If you find yourself unsure at any point, note which session covers that topic, review it, and continue. The ability to identify your own knowledge gaps and fill them is itself the final skill this course teaches.
The Brief
Produce a finished event poster for a fictional photography exhibition. The poster must incorporate: a retouched photograph as the hero image, a second image composited into the scene, a display headline in a typeface of your choice with a layer effect, a subheading and body copy block, and your name as a byline. It must be delivered as both a screen-optimised WebP (1080 × 1527 px, 1× and 2×) and a print-ready TIFF (A4 at 300 PPI, sRGB, soft-proofed against Fogra39).
Skills integration checklist: Before starting, read the full checklist in Phase 2. Every item maps to a specific session. If any item feels unfamiliar, review that session before proceeding — ten minutes of review now prevents an hour of backtracking mid-project.
Execute the following stages in order. Each stage references the session where its primary skills were taught. There are no prescribed settings — apply what you know, make decisions that serve the brief, and proceed.
-
01
Set Up the Canvas and Workspace — Session 1
Create a new canvas at 2160 × 3054 px (the 2× size of 1080 × 1527 px, which is an A4-proportioned portrait at screen resolution). Set PPI to 72 — this will be changed to 300 before print export. Name the file
File → New → 2160 × 3054 px → save as exhibition-poster.xcf → create layer groupsexhibition-poster.xcfand save it immediately. Configure your workspace: open the Layers panel, Paths panel, and History panel (Windows → Dockable Dialogs). Set your foreground and background colours. Create a layer group structure before placing any content: groups named Background, Hero Image, Composite Element, Colour Grade, and Typography. Good layer organisation at the start prevents confusion when the document reaches 15–20 layers. -
02
Place and Retouch the Hero Photograph — Sessions 2, 9, 10
Open your hero photograph as a layer (File → Open as Layers) and drag it into the Hero Image group. Scale and position it to fill the upper two-thirds of the canvas. Duplicate the photo layer before retouching — never retouch the original. Apply Clone Tool and Heal Tool passes to remove any distractions: dust spots, skin blemishes, unwanted background elements. Then apply a Dodge/Burn pass on a new transparent layer (blend mode: Overlay, filled with 50% grey) to refine tonal contrast — lift the subject's catch-lights with Dodge, deepen shadow areas with Burn. Keep all retouching on separate layers or layer copies so every intervention is reversible.
File → Open as Layers → place in Hero Image group → duplicate → Clone/Heal → Dodge/Burn overlay layer -
03
Cut Out and Composite the Second Image — Sessions 5, 6, 11, 12
Choose a second photograph — an object, architectural fragment, or abstract texture — that complements the hero. Extract it using the Foreground Select tool or the Paths tool (for clean geometric edges). Add a white layer mask and refine the edge: soft brush at low opacity on the mask for organic edges, Gaussian Blur of 0.5–1 px on the mask for anti-aliasing, Darken-mode layer for fringing. Place the extracted element in the Composite Element group, positioned to add visual interest without competing with the hero. Match colour temperature using Colours → Colour Balance. Build a hand-made drop shadow (duplicate, Hue-Sat Lightness −100, Gaussian Blur, reposition, 55% opacity). Adjust the composite element's layer blend mode — Screen, Multiply, or Soft Light — if it integrates more naturally in a non-Normal mode.
Foreground Select or Paths → layer mask → refine edge → colour match → hand-built shadow → blend mode -
04
Apply Tonal and Colour Correction — Sessions 7, 8
With all image elements placed, apply a global tonal pass. Create a merged visible copy at the top of the stack (new empty layer → Edit → Copy Visible → Edit → Paste in Place → anchor). Apply Colours → Curves: a gentle S-curve to add contrast (lift highlights, deepen shadows by 5–10 points each), and individual RGB channel adjustments to establish a colour grade — a slight blue-green lift in the shadows, warm amber in the highlights produces a filmic split tone that works well for exhibition posters. Apply Colours → Colour Balance for any overall warmth or coolness adjustment. Apply Colours → Hue-Saturation to moderate any colours that feel too aggressive. These adjustments unify all elements of the composite into a single coherent image.
Merge visible copy → Curves (S-curve + per-channel grade) → Colour Balance → Hue-Saturation -
05
Apply Noise Reduction and Sharpening — Session 13
On a duplicate of the merged grade layer, apply noise reduction first: Filters → Enhance → Noise Reduction (Radius 2, Adaptive) at 70% layer opacity. Create a new merged visible copy above. Apply Unsharp Mask for screen output: Amount 0.50, Radius 0.8 px, Threshold 4. This sharpening is for the screen export — you will apply heavier print sharpening later. Name this layer Sharpened — Screen and set its visibility off; you will turn it on only when preparing the screen export. Keep an unsharpened merged copy below it for the print workflow, where you will apply different sharpening settings before TIFF export.
Denoise duplicate (70% opacity) → merge visible → Unsharp Mask for screen → label and hide until export -
06
Set and Style the Typography — Sessions 14, 15
In the Typography layer group, set the display headline using the Text tool. Choose a bold, wide typeface — the heavier the better at poster scale. Set size to 180–220 px (it will display at 90–110 px at 1×). Kern the headline manually using Alt+Left/Right Arrow for optically even spacing. Set leading at 0.95× type size for a tight, designed headline. Duplicate and rasterize the text layer (keep the original hidden). Apply Alpha to Selection and use the Blend tool on a new layer in Multiply mode to add a gradient fill through the letterforms. Duplicate the rasterized text, apply Gaussian Blur 20 px, set to Screen mode at 45% opacity below the sharp version for a glow. Add the subheading and body copy as separate text layers at appropriate sizes (subheading 48–60 px, body 28–34 px). Use the Paths tool to draw a thin separator line between the headline and subheading: create a straight path, stroke it with a 1 px line in the foreground colour.
Text tool → kern → rasterize copy → gradient fill via alpha selection → glow layer → subhead/body text → path rule -
07
Add a Vignette and Final Unifying Pass — Session 12
At the very top of the layer stack (above all groups), add a vignette layer: new layer, mode Multiply, use the Blend tool with a black Radial gradient (centre transparent, edges black), set opacity 25–35%. This darkens the frame edges and focuses attention on the central content — a standard technique in poster design. Create one final merged visible copy above the vignette. Inspect at 50% zoom (the approximate 1× preview size). Ask: does every element read clearly? Does the type sit comfortably on the image without disappearing? Is the composite element visible and contributing? Does the overall colour feel unified? Make any final micro-adjustments to individual layers before proceeding to export.
New Multiply layer → Radial black gradient → opacity 30% → final merged visible copy → review at 50% zoom -
08
Screen Export — Sessions 17, 18
Make the Sharpened — Screen layer visible. All other image layers above the unsharpened grade copy should be hidden except the vignette and typography groups, which are always visible. Create a merged visible copy: this is your screen master. It should be 2160 × 3054 px. Export this as the 2× WebP: File → Export As →
Screen sharpening layer visible → merge visible → export @2x WebP + @1x WebP + @2x PNG + @1x PNGexhibition-poster@2x.webp, Quality 85, all metadata stripped. Then duplicate the merged layer into a new image, scale to 1080 × 1527 px (50%) with Linear interpolation, export asexhibition-poster.webpat Quality 85. Also export both sizes as PNG for fallback:exhibition-poster@2x.pngandexhibition-poster.pngat Compression 6 with colour profile saved. You now have four screen deliverables. -
09
Print Preparation — Session 19
Hide the Sharpened — Screen layer. Work from the unsharpened merged grade copy. Verify pixel dimensions: A4 at 300 PPI requires 2480 × 3508 px. Your working canvas is 2160 × 3054 px — at 300 PPI, this prints at 7.2 × 10.18 inches, slightly smaller than A4. You have two options: accept this as a slightly-smaller-than-A4 print (valid for framed exhibition prints), or scale up to 2480 × 3508 px using Sinc (Lanczos3) interpolation and accept the minor upscaling quality trade-off. Make this decision based on the brief. Set PPI to 300 via Image → Print Size → 300 pixels/in. Enable soft proofing with Fogra39 (View → Color Management → Proof Setup → Fogra39 → Relative Colorimetric + Black Point Compensation). Enable gamut warning. Correct any out-of-gamut areas with Hue-Saturation per colour range. Apply print sharpening on a duplicate: Unsharp Mask Amount 0.70, Radius 1.5 px, Threshold 3.
Hide screen sharpening → verify/set PPI → soft proof Fogra39 → gamut correct → print Unsharp Mask -
10
TIFF Export and Verification — Sessions 17, 19
Flatten the print-prepared image: Image → Flatten Image. File → Export As →
Flatten → Export As .tif → Compression None, colour profile embedded → reopen → verify PPI / profile / single layerexhibition-poster-print-300ppi.tif. In the TIFF dialog: Compression None, Save colour profile checked (sRGB IEC61966-2.1), Save layers unchecked, 8-bit depth. After export, close the TIFF immediately. Reopen it fresh: File → Open → select the TIFF. Verify via Image → Image Properties: PPI should read 300, dimensions in inches should match your target, the colour profile field should show sRGB. The Layers panel should show a single flattened layer. If anything is wrong, return to the source XCF, correct it, and re-export — never patch the TIFF. You now have five deliverables in total: four screen files and one print TIFF. The capstone is complete.
Skills Integration Checklist
- S01Canvas setup, workspace configuration, layer group structure
- S02Layer panel management, grouping, naming, visibility
- S03Blend modes — Multiply, Screen, Overlay, Soft Light on working layers
- S04–05Selection tools used for initial extraction or region isolation
- S06Layer masks applied to composite element, refined by hand
- S07Curves — S-curve contrast and per-channel colour grade
- S08Colour Balance and Hue-Saturation for global colour correction
- S09Clone Tool and Heal Tool for retouching the hero photograph
- S10Dodge and Burn on an Overlay 50%-grey layer
- S11–12Full compositing workflow: extraction, light matching, hand-built shadow, rim light or vignette
- S13Unsharp Mask applied separately for screen and print, in correct pipeline order
- S14Text tool, manual kerning, rasterize, gradient fill via alpha selection, outer glow
- S15Paths tool used for separator rule or any decorative element
- S16Script-Fu — optional: automate any repeated export step
- S17Correct export procedure — File → Export As, never Save for non-XCF formats
- S18Screen export: WebP 1× and 2×, PNG fallback, metadata stripped, correct filenames
- S19Print export: PPI set, soft proofed against Fogra39, TIFF with embedded sRGB profile
Working discipline: Save the XCF after every major stage — after retouching, after compositing, after colour grade, after typography. Use File → Overwrite (not Save As) to update the existing XCF without creating duplicates. If GIMP crashes mid-session (rare but possible on large files), your last save is your recovery point. The XCF with all groups and layers intact is your master file — treat it accordingly.
After completing your first pass through the full workflow, step away for five minutes, then return and evaluate the result against the brief. Use the questions below as a self-critique framework. For each item that falls short, identify which session addresses it and make a targeted correction — do not redo the whole workflow.
-
A
Image quality and retouching
Zoom to 100% on the hero photograph. Are there any remaining distractions — dust spots, stray hairs, sensor noise — that read at full size? Does the Dodge/Burn pass look natural or does it produce obvious artificial brightening? If anything reads as processed rather than real, revisit Session 9 or 10 and address it specifically. Do not apply further global adjustments to fix local problems.
-
B
Composite believability
View the composite at 50% zoom (approximately 1× screen size). Does the second element look like it belongs in the scene, or does it look pasted on? Check specifically: is the mask edge clean with no fringing or hard-pixel silhouette? Does the colour temperature of the element match the hero? Is the shadow present, correctly positioned relative to the implied light source, and graduated correctly from near to far? If any of these fail, return to Session 12 for the specific correction technique.
-
C
Typography legibility and design
View the full poster at fit-to-window. Can you read the headline in under two seconds? Does the hierarchy read correctly — headline first, subheading second, body copy third, byline last? Is the kerning of the headline optically even, or are there any conspicuously wide or tight letter pairs? Does the type treatment (gradient fill, glow, or shadow) enhance or clutter the headline? If legibility is compromised, simplify the type effect first — legibility always outranks decoration. If kerning needs work, return to the text layer (use the hidden duplicate if available) and correct it.
-
D
Export file verification
Open each of the five output files in a fresh GIMP window — do not rely on the thumbnail in your file manager. For the WebP and PNG screen files: confirm the @2x versions are exactly 2× the dimensions of the 1× versions. For the TIFF: confirm via Image → Image Properties that PPI is 300, the colour profile is embedded as sRGB, and the image mode is RGB (not Indexed). Check file sizes are reasonable: the @2x WebP should be under 2 MB for a poster, the TIFF should be 20–30 MB. If any file fails verification, re-export from the source XCF — do not modify the output file directly.
The five-file export sequence — four screen files and one print TIFF — is a repeatable operation that becomes tedious if the poster goes through multiple revision rounds. Write a Script-Fu script that produces all five files from the current active image in one run. No guidance — design the script entirely from what you have learned across Sessions 16, 17, and 18.
-
→
Script: export all five deliverables from the active XCF
The script should operate on
(car (gimp-display-get-image (car (gimp-display-list))))— the currently active open image. It should: create five image duplicates; make the correct layer visible in each (screen-sharpened for the four screen exports, print-sharpened for the TIFF); flatten each duplicate; scale the two 1× duplicates to 50%; export each to the correct path with the correct settings; and delete all five duplicates when done. The script should run without any manual interaction after the initial call — a true one-click export for a five-file delivery package. -
→
Register the script in the Filters menu
Wrap the script in
script-fu-registerwith SF-VALUE parameters for the output directory path (so you can point it at any project folder without editing the script). Addscript-fu-menu-registerto place it under Filters → My Scripts → Export Poster Package. Save asexport-poster-package.scmin the GIMP scripts directory. Refresh scripts ((gimp-scripts-refresh)in the console). Test by running it from the Filters menu on the capstone XCF and verifying all five output files are produced correctly.
Final thought: The mark of mastery is not knowing every feature of a tool — it is having a reliable, efficient workflow that produces professional results and knowing exactly where to look when something falls outside that workflow. You now have both. The 20% of GIMP that drives 80% of results is no longer an abstraction — it is twenty sessions of practised, documented, tested technique.
Session 20 Review
- Always work non-destructively: duplicate before editing, mask before deleting, save XCF before exporting
- Layer organisation established at the start prevents confusion at every later stage
- The correct sequence is always: retouch → composite → grade → sharpen → export
- Sharpening settings differ for screen and print — maintain separate sharpened layers for each output
- Soft proofing against the target ICC profile before print export is not optional — it is the last line of defence against colour surprises at press
- Verify every exported file by reopening it fresh — a thumbnail is not a verification
- Practice is the only remaining teacher — apply these workflows to real projects immediately
- Revisit any session whose techniques felt uncertain during the capstone — targeted review is more effective than linear repetition
- Explore G'MIC for advanced noise reduction, local contrast enhancement, and film emulation beyond what GIMP's built-in filters offer
- Learn Inkscape alongside GIMP — the two tools cover the full spectrum of visual production work when used together
- Explore Python-Fu as a more readable alternative to Script-Fu for automation tasks in GIMP 3.x
- The GIMP community at gimp-forum.net is active and technically strong — post your work and ask specific questions
- Non-destructive workflow: layers, masks, duplicates — sessions 2, 6
- Selection mastery: the gateway to every targeted edit — sessions 4, 5
- Tonal control: Curves and Levels, the most powerful correction tools — session 7
- Colour correction: Colour Balance, Hue-Saturation, per-channel Curves — session 8
- Retouching: Clone, Heal, Dodge/Burn — sessions 9, 10
- Compositing: masking, light matching, shadow — sessions 11, 12
- Output: format knowledge, HiDPI screen export, print TIFF with soft proofing — sessions 17–19
- Can you describe, without looking at notes, the correct order of operations for a retouching-to-print workflow?
- Which session would you return to first if a client asked for a precise CMYK colour match?
- What is the single most important thing to do before rasterizing a text layer?
- If a composite looks fake, what are the three most likely causes in order of probability?
- Why does GIMP save to XCF by default, and what does File → Export As do differently?
-
01
GIMP Official Docs Authoritative reference for every tool, dialog, and preference in GIMP 3.x.
docs.gimp.org ↗ -
02
Davies Media Design Video walkthroughs specifically for GIMP 3.x — best free companion to this course.
YouTube ↗ -
03
GIMP Forums Community support for troubleshooting, plug-in questions, and workflow advice.
gimp-forum.net ↗