HEIC Viewer
Overview
HEIC Viewer is a lightweight Mendix web widget that enables applications to display HEIC/HEIF images directly in the browser.
Since many modern devices (especially iPhones) capture photos in the HEIC format, Mendix applications often cannot preview these images natively. This widget solves that problem by converting HEIC images to JPEG format in the browser and rendering them instantly.
The conversion happens client-side, ensuring that no server-side processing or additional microflows are required.
Documentation
Features
✔ Supports HEIC and HEIF image formats
✔ Automatic HEIC → JPEG conversion in the browser
✔ Displays JPEG, PNG, and standard images directly
✔ No backend logic or microflows required
✔ Lightweight and optimized for web applications
✔ Compatible with Mendix pluggable widget architecture
Typical Usage Scenario
This widget is useful in applications where users upload photos from mobile devices.
Example scenarios:
- Insurance claim applications where users upload photos from their phones
- Field inspection apps that store device photos
- Document management systems handling iPhone images
- Customer support systems receiving image attachments
Since iPhones store images in HEIC format by default, this widget ensures those images can be previewed inside Mendix applications without manual conversion.
How It Works
The widget performs the following steps:
- Receives a FileDocument object from Mendix.
- Fetches the file using the Mendix file endpoint.
- Detects whether the file format is HEIC or HEIF.
- If HEIC is detected:
- Converts the image to JPEG using a browser-based conversion library.
- Displays the resulting image inside the widget.
This entire process runs in the client browser, which improves performance and reduces server workload.
Supported File Types
File Type | Behavior |
HEIC | Converted to JPEG and displayed |
HEIF | Converted to JPEG and displayed |
JPG | Displayed directly |
PNG | Displayed directly |
Limitations
- Designed for image preview only
- Large HEIC files may take 1–2 seconds to convert
- Only supported for web applications
- Does not support editing or image manipulation