> ## Documentation Index
> Fetch the complete documentation index at: https://docs.embededitor.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Troubleshooting

> Fixes for the most common problems when embedding the editor.

Find your symptom below and apply the fix.

> [accordion] The editor is 0 px tall
>
> `EmbedEditor` and `mountEditor` fill their parent's box. Give the parent a height.
>
> ```tsx App.tsx theme={"dark"}
> <div style={{ height: 600 }}>
>   <EmbedEditor src={src} />
> </div>
> ```

> [accordion] This browser cannot run the editor (WebGL 2 unavailable)
>
> The browser has WebGL 2 off, or blocked for its GPU (a remote desktop, some virtual machines, a GPU blocklist). Your app receives `WEBGL_UNAVAILABLE` through `onLoadError` and can offer a plain upload instead. See [Browser support](https://docs.embededitor.com/resources/browser-support.md).

> [accordion] The image doesn't load (LOAD\_FAILED)
>
> A URL `src` is downloaded with `fetch`, so a cross-origin one needs CORS headers from its server. The same goes for an `<img>`'s source and for an image link pasted into the empty state.

> [accordion] A new src doesn't show
>
> `src` is read when the editor opens. Give `EmbedEditor` a new `key`, or destroy and mount again.
>
> ```tsx App.tsx theme={"dark"}
> <EmbedEditor key={src} src={src} />
> ```

> [accordion] My page's Content Security Policy blocks the editor
>
> If your page sets a CSP, allow:
>
> * `connect-src` for the URLs you pass as `src`, and as a watermark's or signature's `src`.
> * `img-src blob:` for the filter and frame thumbnails and for an SVG source, plus whatever `logo` points to.
> * `font-src data:` for a text watermark or signature, and for the annotations' fonts. Blocked, a fixed or required text mark can't be drawn (`MARK_FAILED`, Save stays off), and annotation texts show and save in a system font.
> * `worker-src blob:` for the HEIC decoder (Chromium and Firefox, HEIC only).
> * The editor's CSS goes in through a constructable stylesheet, or a `<style>` element where the browser has none.
>
> Check your policy against the editor before shipping it.

> [accordion] The page layout doesn't fill the screen
>
> An ancestor has a `transform`, `filter`, `perspective`, `contain` or `will-change: transform`. Render the editor nearer `<body>`.
>
> Missing safe areas on a phone mean the page lacks `viewport-fit=cover`.

> [accordion] My CSS reset or font size changes nothing
>
> That's on purpose. The editor renders in its own shadow root with its CSS inside, so no page rule reaches in and none of its rules leak out. Sizes are in px, so the page's root font size changes nothing. To change colors, use the [`colors` prop](https://docs.embededitor.com/customization/theming).

> [accordion] Setting --ee-\* CSS variables changes no color
>
> That's on purpose. The editor declares its own palette, so `--ee-*` custom properties your page sets, on `:root`, a wrapper or the editor's host, never reach it. Give one base color per role through the [`colors` prop](https://docs.embededitor.com/customization/theming) instead.

> [accordion] Very large images come out smaller
>
> A photo over 16.7 MP is scaled down to it when it opens, and no output passes it, from Save or `processImage`. The output can't be larger than the GPU allows either, and the Resize tool's limits follow it. See [Large photos](https://docs.embededitor.com/features/large-photos.md).

> [accordion] A HEIC photo stops loading in Chromium or Firefox
>
> A HEIC that carries a color profile has been seen to stop the bundled decoder after about three decodes in one page. The loading screen's Close keeps the user from getting stuck.

> [accordion] An error screen names a prop
>
> A value the editor can't take, a misspelt prop or a removed one shows the error screen naming it and calls `onLoadError` with `INVALID_PROPS`. `error.props` lists the props. The editor comes back as soon as the props are valid. See [Errors](https://docs.embededitor.com/api-reference/errors.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.