football2801 c633601d90
CI / test (push) Has been cancelled
fix: apply tonal adjustments to photo before letterbox bars are added
Compositing the white letterbox bars before contrastStretch meant the
bars (pure white, often 60%+ of the canvas for an aspect mismatch) were
included in the per-channel histogram. The "lightest 1% to clip to white"
threshold therefore landed inside the bars themselves, raising the
effective white point so the photo's lighter tones got over-clipped to
white and the photo ended up washed out.

Reordering: thumbnail → contrastStretch/modulate/sharpen on the photo
alone → composite onto white canvas → rotate. The contrastStretch's
percentage now uses the photo's actual pixel count too, not the full
canvas, so the 1% clip is honest about how many pixels of real photo
content it's looking at.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:32:26 -04:00
S
Description
pictureFrame web app — Symfony + Vue SPA
33 MiB
Languages
Python 42.9%
PHP 20%
HTML 12.5%
TypeScript 11.7%
Vue 7.6%
Other 5.3%