https://github.com/peterujah/nano-image
https://github.com/peterujah/nano-image
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/peterujah/nano-image
- Owner: peterujah
- License: mit
- Created: 2021-04-18T15:00:11.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2025-03-09T14:01:34.000Z (over 1 year ago)
- Last Synced: 2025-03-29T18:18:34.043Z (about 1 year ago)
- Language: PHP
- Size: 136 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
## Nano Image
NanoImage is a simple PHP image resize class. It can resize images and display them in the browser or save images in a directory
## Installation
Installation is super-easy via Composer:
```md
composer require peterujah/nano-image
```
## Basic Usage
```php
$image = new NanoImage();
try{
$image = $imagine->open("path/to/save/edit-image-size.jpg");
$image->resize(360, 200, false);
$image->save("path/to/save/new-image.jpg", NanoImage::THUMBNAIL, 80);
$image->resize(116, 80, false);
$image->saveAs("path/to/save/new-image.jpeg", NanoImage::THUMBNAIL, 100, NanoImage::JPEG);
$image->free();
}catch(UnsupportedImageException $e){
echo $e->getMessage();
}
```
---
**Applying Filters**
```php
$image = new NanoImage();
$image->filter(IMG_FILTER_GRAYSCALE)
->filter(IMG_FILTER_BRIGHTNESS, 30)
->get(90);
```
Or:
```php
$image->filters([
[IMG_FILTER_CONTRAST, -50],
[IMG_FILTER_COLORIZE, 100, 50, 0], // Add color overlay
])->get();
```
---
```php
$img = new Peterujah\NanoBlock\NanoImage();
```
Initialize nano image class for use
Open and load any image from a directory path & file name
```php
$img->open(__DIR__ . "/path/to/assets/image.jpg");
```
Or load string containing the image data.
```php
$img->load($image_data);
```
Resize an image with the exact width and height passed, for example, 200x200. To resize an image using the aspect ratio set the third parameter to true
```php
$img->resize(200, 200, false||true);
```
Blur image
```php
$img->blur(20);
```
Once image manipulation is done, display the output image on the browser. Pass quality of the image
```php
$img->display($quality);
```
Save an image to a directory, the first parameter specifies the path, the second sets the image naming option, and the third is image quality (90 by default)
```php
$img->save(__DIR__ . "/path/to/assets/new-image.jpg", NanoImage::DEFAULT, $quality);
```
Save image as
```php
$img->saveAs($to, NanoImage::DEFAULT || NanoImage::THUMBNAIL || NanoImage::TIMESTAMP, $quality, self::JPEG)
```
Replace the existing image with a new one
```php
$img->replace($to, $quality)
```
Remove temp image after editing and free memory
```php
$img->remove()
```
Free memory
```php
$img->free()
```