PHPackages                             novactive/ezenhancedimageassetbundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. novactive/ezenhancedimageassetbundle

AbandonedIbexa-bundle[Image &amp; Media](/categories/media)

novactive/ezenhancedimageassetbundle
====================================

v3.0.5(1y ago)148.3k—3.6%4[3 PRs](https://github.com/Novactive/NovaeZEnhancedImageAssetBundle/pulls)1MITPHPPHP ^7.3 || ^8.0CI failing

Since Mar 22Pushed 2mo ago19 watchersCompare

[ Source](https://github.com/Novactive/NovaeZEnhancedImageAssetBundle)[ Packagist](https://packagist.org/packages/novactive/ezenhancedimageassetbundle)[ RSS](/packages/novactive-ezenhancedimageassetbundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)DependenciesVersions (40)Used By (1)

NovaeZEnhancedImageAssetBundle
==============================

[](#novaezenhancedimageassetbundle)

---

This repository is what we call a "subtree split": a read-only copy of one directory of the main repository. It is used by Composer to allow developers to depend on specific bundles.

If you want to report or contribute, you should instead open your issue on the main repository:

Documentation is available in this repository via `.md` files but also packaged here:

---

[![Downloads](https://camo.githubusercontent.com/bc7af2be0b086afb07de9c5b9858559081328591db6cb5e9096d228985fdf07a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6e6f766163746976652f657a656e68616e636564696d616765617373657462756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/novactive/ezenhancedimageassetbundle)[![Latest version](https://camo.githubusercontent.com/782e626a5988b2af07118521a70133d56afbdfb1cc19a3293607159a20805ee8/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f4e6f766163746976652f4e6f7661655a456e68616e636564496d616765417373657442756e646c652e7376673f7374796c653d666c61742d737175617265)](https://github.com/Novactive/NovaeZEnhancedImageAssetBundle/releases)[![License](https://camo.githubusercontent.com/12cd455f5e21ea5c321802e8e6d05548a05e433ebe1a43c0a891dbca6721d5e6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6e6f766163746976652f657a656e68616e636564696d616765617373657462756e646c652e7376673f7374796c653d666c61742d737175617265)](LICENSE)

An eZPlatform bundle providing new field type with enhanced features related to image management

Features
--------

[](#features)

- [Focus point managment in admin UI](#1-focus-point)
- [Default image configuration for file size optimization](#2-default-image-configuration)
- [Lazy and Progressive loading](#3-lazyloading)
- [Retina variations](#4-retina-variations)
- [WebP variations](#5-webp-variations)
- [Twig render field parameters](#6-twig-render-field-parameters)

Installation
------------

[](#installation)

### Use Composer

[](#use-composer)

Add NovaeZEnhancedImageAssetBundle in your composer.json:

```
composer require novactive/ezenhancedimageassetbundle
```

### Register the bundle

[](#register-the-bundle)

Register the bundle in your application's kernel class:

```
// app/AppKernel.php
public function registerBundles()
{
    $bundles = array(
        // ...
        new Novactive\EzEnhancedImageAssetBundle\EzEnhancedImageAssetBundle(),
        // ...
    );
}
```

Features
--------

[](#features-1)

### 1. Focus point

[](#1-focus-point)

This bundle provide a new `enhancedimage` field type which extend the `ezimage` field type. This field type allow the user to select a focus point on the uploaded image. Variation can then be created based on the selected focus point.

[![Demo](doc/images/image-focus-demo.gif)](doc/images/image-focus-demo.gif)

[Check out the demo](https://image-focus.stackblitz.io/)

### 2. Default image configuration

[](#2-default-image-configuration)

Added to siteaccess aware parameters which allow to define the default post processors and configuration to use when generating image alias

```
parameters:
  ez_enhanced_image_asset.default.image_default_post_processors:
    pngquant:
        quality: '40-85'
    jpegoptim:
        strip_all: true
        max: 70
        progressive: true
  ez_enhanced_image_asset.default.image_default_config:
    animated: true
    quality: 80
```

### 3. LazyLoading

[](#3-lazyloading)

Lazy loading is controlled globaly by the following settings (default to true) and can be overriden at field level.

```
parameters:
  ez_enhanced_image_asset.default.enable_lazy_load: true
```

### 4. Retina variations

[](#4-retina-variations)

Retina variations should suffixed by `_retina` will be used automatically (if enabled) when using the provided field template. To be displayed, the generated variation width should be two time the width of the default variation.

Considering a variation named `my_alias`, the variation named `my_alias_retina` will be used and displayed on retina screens.

```
 - { name: my_alias, params: {size: [, ], focus: [0, 0]} }
 - { name: my_alias_retina, params: {size: [, ], focus: [0, 0]} }
```

The automatic use of retina variations is controlled by this setting

```
parameters:
  ez_enhanced_image_asset.default.enable_retina: true
```

### 5. WebP variations

[](#5-webp-variations)

Auto-creation of a webp variation for each existing variations and will then automaticaly add this variation as an alternative source

### 6. Twig render field parameters

[](#6-twig-render-field-parameters)

You can now specify the `alternativeAlias` parameter to define alternative image alias depending the screen size

```
{{ ibexa_render_field(content, fieldIdentifier, {
    parameters: {
        alias: 'desktop_alias',
        alternativeAlias: [
            {
                alias: 'mobile_alias',
                media: '(max-width: 320px)'
            }
        ],
        lazyLoad: true|false, // optionnal
        retina: true|false // optionnal
    }
}) }}
```

#### Variations configuration

[](#variations-configuration)

Focused variations require the use of a "focusedThumbnail" filter to generate thumbnail based on the contributed focus point.

```
 - { name: focusedThumbnail, params: {size: [, ], focus: [0, 0]} }
```

NB: the `focus` parameter is automaticaly updated for each image based on what has been contributed

#### Migrate existing ezimage fields

[](#migrate-existing-ezimage-fields)

As the new `enhancedimage` field type is an extend of the `ezimage` field type, you just need to update the `data_type_string` column in the database for the fields you want.

Example :

```
UPDATE ezcontentclass_attribute ca
INNER JOIN ezcontentclass c ON c.id = ca.contentclass_id
SET data_type_string = "enhancedimage"
WHERE ca.data_type_string = "ezimage" AND c.identifier="my_content_type" AND ca.identifier="my_field_identifier";

UPDATE ezcontentobject_attribute oa
INNER JOIN ezcontentclass_attribute ca ON oa.contentclassattribute_id = ca.id
SET oa.data_type_string = "enhancedimage"
WHERE oa.data_type_string = "ezimage" AND ca.data_type_string="enhancedimage";
```

Usage
-----

[](#usage)

Some feature will require the following assets

```
{{ encore_entry_link_tags('enhancedimage-css', null, 'ibexa') }}
```

```
{{ encore_entry_script_tags('enhancedimage-js', null, 'ibexa') }}
```

###  Health Score

51

—

FairBetter than 96% of packages

Maintenance62

Regular maintenance activity

Popularity31

Limited adoption so far

Community23

Small or concentrated contributor base

Maturity77

Established project with proven stability

 Bus Factor1

Top contributor holds 51.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~67 days

Recently: every ~92 days

Total

29

Last Release

719d ago

Major Versions

v1.6.3 → v2.0.02022-04-14

v1.6.4 → v2.0.12022-06-22

v2.0.2 → v3.0.02023-05-12

PHP version history (3 changes)v1.0.0PHP ^7.1

v2.0.0PHP ^7.3

v3.0.0PHP ^7.3 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/7bf781acfc713c38985bfb2e7bee5fd2decefdeed1df550643af57aa8e315db7?d=identicon)[Almaviacx](/maintainers/Almaviacx)

![](https://www.gravatar.com/avatar/5da828a6299f556552632c81712f10e70c905b2e1560b1a7044eb7e590287179?d=identicon)[florianalexandre](/maintainers/florianalexandre)

---

Top Contributors

[![erdnaxelaweb](https://avatars.githubusercontent.com/u/2130120?v=4)](https://github.com/erdnaxelaweb "erdnaxelaweb (15 commits)")[![Plopix](https://avatars.githubusercontent.com/u/313532?v=4)](https://github.com/Plopix "Plopix (12 commits)")[![maximstrukov](https://avatars.githubusercontent.com/u/15006962?v=4)](https://github.com/maximstrukov "maximstrukov (1 commits)")[![mbouchaala](https://avatars.githubusercontent.com/u/10628227?v=4)](https://github.com/mbouchaala "mbouchaala (1 commits)")

---

Tags

imagenovactiveez

### Embed Badge

![Health badge](/badges/novactive-ezenhancedimageassetbundle/health.svg)

```
[![Health](https://phpackages.com/badges/novactive-ezenhancedimageassetbundle/health.svg)](https://phpackages.com/packages/novactive-ezenhancedimageassetbundle)
```

###  Alternatives

[intervention/image

PHP Image Processing

14.3k194.3M2.2k](/packages/intervention-image)[league/glide

Wonderfully easy on-demand image manipulation library with an HTTP based API.

2.6k51.2M116](/packages/league-glide)[liip/imagine-bundle

This bundle provides an image manipulation abstraction toolkit for Symfony-based projects.

1.7k38.3M217](/packages/liip-imagine-bundle)[spatie/image

Manipulate images with an expressive API

1.4k54.4M138](/packages/spatie-image)[intervention/image-laravel

Laravel Integration of Intervention Image

1536.5M102](/packages/intervention-image-laravel)[intervention/gif

PHP GIF Encoder/Decoder

5720.3M9](/packages/intervention-gif)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
