mirror of
https://github.com/storytold/photocraft.git
synced 2026-11-12 05:02:51 +00:00
* Flat exports embed no document XMP by default; Export As gains a Metadata choice (#647) The document's XMP packet lists the text of every type layer (photoshop:TextLayers) and one id per placed document (photoshop:DocumentAncestors) - data a flat web image should not carry: 14-116 KB per export on real designer PSDs, and layer text leaking into images that show only part of the design. - io: ExportOptions.xmp (XmpEmbed::All | None, default None) drops the packet from flat exports before the codecs see it. Layered saves (PSD, PSB, .pcraft) always keep everything; DPI, ICC and EXIF are unaffected. Export As, Save a Copy, the CLI, Layers/Artboards to Files and Batch all share this path and get the safe default. - The Export As dialog gains a Metadata dropdown (None / All, default None, like the source application's Export As); the file-size estimate follows the choice. - Tests: new xmp_export.rs covers the default (png/jpg/webp/tif carry no packet), the All opt-in and the layered always-keep; metadata_roundtrip_png and the stale-orientation test document the new contract (with All, an embedded stale orientation is still rewritten upright). * Export As alone starts at Metadata: None; Save As and conversions keep the XMP ExportSettings::default() and ExportOptions::default() also serve File > Save As, file.saveAs, the CLI and automation, which keep the document's metadata (as Photoshop's Save As does). Only the Export As dialog defaults to None. A layered TIFF honours the choice too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Brandon Thomas <echelon@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>