Glyphfield Export
Produce the requested format from the renderer that owns the artifact, then verify the real file.
Choose the renderer
- Use deterministic HTTP generation for raw template/background SVG and structured briefs.
- Use the live Studio for Canvas/WebGL/local-font/local-file output and Design Lab PNG, JPG, GIF, or MP4.
- Use Animation for authored motion sequences and audio-aware MP4 output.
- Use Lottie for edited JSON or
.lottie bundles.
- Use the browser print workflow for Brand Book PDF.
- Prefer the direct artifact actions published by
describe() for Brand identity, Brand elements, Moodboard, Animation, Lottie, Design Lab, OpenGraph, Terminal card, Blog, Partnership, and Slides. Use visible control automation only when the capability record marks an export as browser-control.
Read references/export-verification.md before motion export or when correctness matters more than a quick preview.
Export rules
- Call the active Studio adapter's
describe() before invoking a format-specific action.
- Run GIF and MP4 exports serially. They share live canvases and browser encoders.
- Use
mode: "shader-sequence" only with GIF or MP4.
- Keep filename extension, MIME type, and requested format aligned.
- A GIF never has audio. Use MP4 when the requested motion requires an audio track.
- A loop flag is not proof of a visually seamless GIF. Inspect closure between the last and first displayed frame.
- If MP4 encoding is unavailable, report it and preserve the source; do not silently substitute GIF.
- When a renderer, codec, palette, storage, or download fails, preserve source and follow
/docs/reference/troubleshooting plus /docs/reference/browser-support before changing the requested output.
Browser API pattern
const artifact = await window.glyphfield.studio.invoke('design.export', {
format: 'png',
download: false,
});
if (!(artifact.blob instanceof Blob) || artifact.blob.size === 0) {
throw new Error('Glyphfield returned an empty export.');
}
Call window.glyphfield.studio.download(artifact) only after verification when the user requested a saved file.
Completion
Confirm non-empty bytes, filename, MIME, extension, dimensions, and expected transparency. For GIF/MP4 inspect multiple frames, motion continuity, text color stability, shader movement, and final-loop closure. For MP4 with audio, inspect the audio stream rather than assuming UI state was muxed.
1---2name: glyphfield-export3description: Export and verify Glyphfield artifacts as SVG, PNG, JPG, GIF, MP4, PDF, JSON, or Lottie-compatible files. Use when the request is about downloading, rendering, motion loops, audio, dimensions, file integrity, or diagnosing an export that looks different from the Studio preview.4---56# Glyphfield Export78Produce the requested format from the renderer that owns the artifact, then verify the real file.910## Choose the renderer1112- Use deterministic HTTP generation for raw template/background SVG and structured briefs.13- Use the live Studio for Canvas/WebGL/local-font/local-file output and Design Lab PNG, JPG, GIF, or MP4.14- Use Animation for authored motion sequences and audio-aware MP4 output.15- Use Lottie for edited JSON or `.lottie` bundles.16- Use the browser print workflow for Brand Book PDF.17- Prefer the direct artifact actions published by `describe()` for Brand identity, Brand elements, Moodboard, Animation, Lottie, Design Lab, OpenGraph, Terminal card, Blog, Partnership, and Slides. Use visible control automation only when the capability record marks an export as `browser-control`.1819Read [references/export-verification.md](references/export-verification.md) before motion export or when correctness matters more than a quick preview.2021## Export rules2223- Call the active Studio adapter's `describe()` before invoking a format-specific action.24- Run GIF and MP4 exports serially. They share live canvases and browser encoders.25- Use `mode: "shader-sequence"` only with GIF or MP4.26- Keep filename extension, MIME type, and requested format aligned.27- A GIF never has audio. Use MP4 when the requested motion requires an audio track.28- A loop flag is not proof of a visually seamless GIF. Inspect closure between the last and first displayed frame.29- If MP4 encoding is unavailable, report it and preserve the source; do not silently substitute GIF.30- When a renderer, codec, palette, storage, or download fails, preserve source and follow `/docs/reference/troubleshooting` plus `/docs/reference/browser-support` before changing the requested output.3132## Browser API pattern3334```js35const artifact = await window.glyphfield.studio.invoke('design.export', {36 format: 'png',37 download: false,38});3940if (!(artifact.blob instanceof Blob) || artifact.blob.size === 0) {41 throw new Error('Glyphfield returned an empty export.');42}43```4445Call `window.glyphfield.studio.download(artifact)` only after verification when the user requested a saved file.4647## Completion4849Confirm non-empty bytes, filename, MIME, extension, dimensions, and expected transparency. For GIF/MP4 inspect multiple frames, motion continuity, text color stability, shader movement, and final-loop closure. For MP4 with audio, inspect the audio stream rather than assuming UI state was muxed.