Export equirectangular PNGs through paint renderer

This commit is contained in:
2026-06-05 20:31:35 +02:00
parent ebc84373e6
commit 77268a28fb
8 changed files with 378 additions and 19 deletions

View File

@@ -689,8 +689,11 @@ prepare the same payload-bearing document snapshot and shared renderer export
readiness report. Cube-face export writes those
document/renderer-owned PNG bytes through a tested app-core write/publish
executor using the app-core-planned legacy face filenames when available and
falls back to retained `Canvas::export_cube_faces` on snapshot/write failure;
the other export workflows still delegate to retained `Canvas` writers after
falls back to retained `Canvas::export_cube_faces` on snapshot/write failure.
PNG equirectangular export now uses the same document/composite payload to
generate an equirectangular PNG through `pp_paint_renderer` before the retained
fallback. JPEG/XMP equirectangular export, layer collections, animation-frame
collections, depth, and video still delegate to retained `Canvas` writers after
readiness reporting.
`pano_cli plan-image-import` exposes app-core planning for File > Import image
route decisions, including wide equirectangular images, legacy vertical cube
@@ -2531,9 +2534,12 @@ Results:
reports. Cube-face export now writes the pure document/renderer PNG bytes to
the `pp_app_core` planned legacy face filenames through a tested
write/publish service executor before falling back to retained `Canvas`
execution on failure. Equirectangular, layer, animation-frame, depth, and
video export remain on their prior retained writer paths; actual broader
writer replacement remains tracked under export debt.
execution on failure. PNG equirectangular export now writes a
`pp_paint_renderer` equirectangular PNG from the same composited document
frame before falling back to retained `Canvas` execution; JPEG/XMP,
layer, animation-frame, depth, and video export remain on their prior
retained writer paths. Actual broader writer replacement remains tracked
under export debt.
- Snapshot creation now rejects invalid embedded RGBA8 face payloads before
document export or history can persist malformed state.
- Package-smoke wrappers validate the Windows CMake app executable/runtime