https://github.com/io-developer/php-thumbnails
Lib for thumbnailing images and watermarking
https://github.com/io-developer/php-thumbnails
Last synced: about 1 year ago
JSON representation
Lib for thumbnailing images and watermarking
- Host: GitHub
- URL: https://github.com/io-developer/php-thumbnails
- Owner: io-developer
- License: mit
- Created: 2017-03-22T10:37:54.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-11-13T10:30:54.000Z (over 8 years ago)
- Last Synced: 2025-01-10T19:03:01.580Z (about 1 year ago)
- Language: PHP
- Size: 16.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Thumbnails
PHP library for image thumbnaling and watermarking
## Requirements
PHP >= 5.4
- gd
- iodev\Lib\ImageTransform (https://github.com/io-developer/php-imagetransform)
## Usage
### Defining image types
```php
setCommonResolver($_SERVER["DOCUMENT_ROOT"], "/files/content-by-id")
->setPrimaryThumbnailName(MyImageType::ORIGINAL)
->addThumbnail(
ThumbnailBuilder::create()
->name(MyImageType::ORIGINAL)
->size(4096, 4096)
->modeContain()
->formatSource()
->toThumbnail()
)
->addThumbnail(
ThumbnailBuilder::create()
->name(MyImageType::FULLSIZE)
->size(4096, 4096)
->modeContain()
->formatSource()
->watermarkAdaptive("watermark.png")
->toThumbnail()
)
->addThumbnail(
ThumbnailBuilder::create()
->name(MyImageType::WIDE)
->size(1280, 720)
->modeCover()
->formatJpeg(95)
->watermarkAdaptive("watermark.png")
->toThumbnail()
)
->addThumbnail(
ThumbnailBuilder::create()
->name(MyImageType::SQUARE)
->size(150, 150)
->modeCover()
->formatPng()
->toThumbnail()
)
->toThumbnailer();
}
}
```
### Defining image class
```php
path = $path;
return $m;
}
/** @var string */
public $path = "";
/**
* @return string
*/
public function toUri( $imageType="" )
{
return self::getThumbnailer()
->resolveLocationByName($this->path, $imageType);
}
/**
* @return string
*/
public function toFullsizeUri()
{
return $this->toUri(MyImageType::FULLSIZE);
}
/**
* @return string
*/
public function toWideUri()
{
return $this->toUri(MyImageType::WIDE);
}
/**
* @return string
*/
public function toSquareUri()
{
return $this->toUri(MyImageType::SQUARE);
}
}
```
### Uploading on form submitting
```php
thumbnailFormInput($contentId, $inputName, $areaSet, $overlayWatermarks);
// thumbnailed image path to store to somewhere
$path = $result->getPrimaryPath();
$myThumbnailedImage = new MyImage($path);
```
### Updating
```php
reThumbnailPath($contentId, $oldPath, $areaSet, $overlayWatermarks);
// thumbnailed image path to save
$newPath = $result->getPrimaryPath();
$myThumbnailedImage = new MyImage($newPath);
```
### Using thumbnailed images
```php
toUri();
// fullsized watermarked
echo $image->toFullsizeUri();
// wide watermarked
echo $image->toWideUri();
// square
echo $image->toSquareUri();
```