Troubleshooting
Start with the symptom, then follow the linked guide for the complete pattern.
| Symptom | Check |
|---|---|
Cropper is empty or onError fires | Verify the URL is readable and the browser can decode the image. See loading failures and CORS. |
| A phone photo will not open | Check HEIC conversion and delayed file access. |
| Export is empty, fails on a phone, or has black JPEG corners | Limit dimensions, handle a null Blob, and set fillColor. See export and memory. |
| A custom background displays but exports nothing | Attach the actual drawable source and resolve canvas readiness. See Image editor. |
| Cropper overflows a dialog or has zero size | Give it a definite height, then refresh after showing it. |
| Cropper loses its opening view after a resize | Refresh preserves the current view. See keep the opening view. |
| Dragging behaves strangely inside transformed content | Scale is supported; rotated and skewed ancestors are not. See scaled containers. |
| Styles do not reach a stencil or handler | Use a root class and global part selectors. |
| Two stencils cause an error | Keep one live stencil per cropper; see child lifetime. |
To compare the current crop with its opening state, see reset and dirty state. For application-specific settings or layer props, see composition.