kinglozzer/silverstripe-tinypng

Installs: 1 304

Dependents: 0

Suggesters: 0

Security: 0

Stars: 3

Watchers: 2

Forks: 4

Open Issues: 0

Type:silverstripe-vendormodule

3.0.0 2018-08-29 14:16 UTC

This package is auto-updated.

Last update: 2020-09-04 13:38:51 UTC


README

An extension to SilverStripe's Image class to integrate with the TinyPNG API.

Installation

With composer:

composer require kinglozzer/silverstripe-tinypng ^3.0

Usage

Add your TinyPNG API key to your _config.yml:

Kinglozzer\SilverStripeTinyPng\ImageExtension:
  tinypng_api_key: 'xxxx_yyyy_zzzz'

Add the Compressed method to your templates when outputting images:

{$Image.CroppedImage(150, 300).Compressed}

NOTE: Compressed must be the last modification you call on your image - otherwise you’ll compress an image, then resample it again afterwards, potentially undo-ing the compression.

If you set an invalid API key, or exceed your monthly API allowance, then a warning will be shown in dev/test mode. In live mode compression will (intentionally) silently fail and output the un-compressed image, but will still log a message via the Logging API.