Yii2 extension for TinyPng
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
CHANGELOG.md
LICENSE.md
README.md
TinyPng.php
composer.json

README.md

TinyPng for Yii 2

TinyPng provides an Yii2 integration of TinyPng.

With it you can compress PNG and JPG images without loosing image quality. You can also resize images while also compressing the images in the process.

Installation

Run the following command

composer require "bigbrush/yii2-tinypng:dev-master"

Or add this to your composer file

"bigbrush/yii2-tinypng": "dev-master"

Usage

Image compression/optimizing

$tiny = new TinyPng(['apiKey' => 'YOUR API KEY']);

// compress image - overwrite file
$tiny->compress('path/to/file/to/compress');
// compress image - create a new image
$tiny->compress('path/to/file/to/compress', 'path/to/file/after/compression');
// get current monthly compression count 
$count = $tiny->usage();

Image resizing

Image resizing requires a configuration array to be passed.

[
    'method' => 'fit',
    'width' => 150,
    'height' => 100,
]

Available methods are: - scale - fit - cover

See TinyPng docs for information about each method.

// resize image - overwrite file
$tiny->resize('path/to/file/to/resize', null, ['method' => 'fit', 'width' => 150, 'height' => 100]);
// resize image - create a new image
$tiny->resize('path/to/file/to/resize', 'path/to/file/after/resizing', ['method' => 'fit', 'width' => 150, 'height' => 100]);