Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/intervention/image-driver-vips
libvips driver for Intervention Image Version 3
https://github.com/intervention/image-driver-vips
image libvips php vips
Last synced: about 1 month ago
JSON representation
libvips driver for Intervention Image Version 3
- Host: GitHub
- URL: https://github.com/intervention/image-driver-vips
- Owner: Intervention
- License: mit
- Created: 2024-07-11T14:22:41.000Z (7 months ago)
- Default Branch: develop
- Last Pushed: 2025-01-06T14:21:47.000Z (about 2 months ago)
- Last Synced: 2025-01-06T15:31:51.048Z (about 2 months ago)
- Topics: image, libvips, php, vips
- Language: PHP
- Homepage: https://image.intervention.io
- Size: 2.31 MB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 11
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# libvips driver for Intervention Image 3
[](https://packagist.org/packages/intervention/image-driver-vips)
[](https://github.com/Intervention/image-driver-vips/actions)
[](https://packagist.org/packages/intervention/image-driver-vips/stats)## WARNING: UNSTABLE
**The code is in beta stage and is currently finalised. Therefore, it is not
recommended to use the driver in production environments.**Intervention Image's official driver to use [Intervention
Image](https://github.com/Intervention/image) with
[libvips](https://github.com/libvips/libvips). libvips is a fast, low-memory
image processing library that outperforms the standard PHP image extensions GD
and Imagick. This package makes it easy to utilize the power of libvips in your
project while taking advantage of Intervention Image's user-friendly and
easy-to-use API.## Requirements
- PHP >= 8.1
## Installation
You can easily install this library using [Composer](https://getcomposer.org).
Simply request the package with the following command:
```bash
composer require intervention/image-driver-vips
```## Getting Started
The public [API](https://image.intervention.io/v3) of Intervention Image can be
used unchanged. The only [configuration](https://image.intervention.io/v3/basics/image-manager) that needs to be done is to ensure that
`Intervention\Image\Drivers\Vips\Driver` by this library is used by `Intervention\Image\ImageManager`.## Code Examples
```php
use Intervention\Image\ImageManager;
use Intervention\Image\Drivers\Vips\Driver as VipsDriver;// create image manager with vips driver
$manager = ImageManager::withDriver(VipsDriver::class);// open an image file
$image = $manager->read('images/example.gif');// resize image instance
$image->resize(height: 300);// insert a watermark
$image->place('images/watermark.png');// encode edited image
$encoded = $image->toJpg();// save encoded image
$encoded->save('images/example.jpg');
```## Caveats
- Due to the technical characteristics of libvips, it is currently **not possible**
to implement color quantization via `ImageInterface::reduceColors()` as
intended. However, there is a [pull request in
libvips](https://github.com/libvips/php-vips/issues/256#issuecomment-2575872401)
that enables this feature and it may be integrated here the future as well.- With PHP on macOS, font files are not recognized in the
`ImageInterface::text()` call because Quartz as a rendering engine does not
allow font files to be loaded at runtime via the fontconfig API.## Authors
This library was developed by [Oliver Vogel](https://intervention.io) and Thomas Picquet.
## License
Intervention Image Driver Vips is licensed under the [MIT License](LICENSE).