SIGN IN SIGN UP

fix(render): remove seams between color blocks (#189)

## Summary

- rasterize consecutive same-color backgrounds as runs whose shared cell
edges snap to identical output pixels
- align block, underline, and bar cursors to that same pixel grid so
fractional zoom cannot leave a gap beside the cursor
- use explicit `fill_antialiased_rect` and `fill_pixel_rect` helpers
instead of the ambiguous regular/crisp rectangle distinction
- cover multi-row color runs, a full-width trailing run, and cursor
adjacency at gap-prone fractional zoom levels
- run the static-media generator, retain its visually changed 25% APNG,
and add fractional pixel-alignment GIF/PNG render snapshots

## Validation

- `cargo clippy -p tui-test-rs --all-targets --all-features -- -D
warnings`
- `cargo test -p tui-test-rs --all-features -- --test-threads=1`
- `bash scripts/regenerate-static-media.sh`
- `cargo test -p tui-test-rs --all-features
single_frame_gif_and_png_renders_match_snapshots`

## Before and after

Both captures use the same terminal content and `--zoom 0.625`. The
first two rows are equal-width 30-cell comparisons with the cursor
hidden. The third row deliberately shows the cursor after a 29-cell
green run, isolating cursor alignment instead of accidentally appending
it to the color comparison.

The solid bar drops from 30 off-color seam pixels to 0. At the cursor
boundary, the before image contains a blended transition pixel; the
after image ends the green run and starts the full cursor cell on one
shared pixel edge.

| Before | After |
| --- | --- |
| ![Before: seams in color runs and a blended cursor
boundary](https://github.com/user-attachments/assets/9dec8574-0284-4133-be47-d75085f8a43e)
| ![After: seamless color runs and a pixel-aligned cursor
boundary](https://github.com/user-attachments/assets/487a8146-efa4-4564-8c41-2c321dcd1487)
|
C
cpendery committed
5bdcac83bd188f2e8066299477cb7595d1df9835
Parent: 2fb4412
Committed by GitHub <noreply@github.com> on 8/27/2026, 6:16:27 PM