Merge branch 'master' of git.cassandrecantet.fr:meoran/images

This commit is contained in:
Cassandre Cantet 2017-10-30 02:44:57 +01:00
commit a08c93f650
3 changed files with 53 additions and 1 deletions

51
config/image-optimizer.php Executable file
View File

@ -0,0 +1,51 @@
<?php
use Spatie\ImageOptimizer\Optimizers\Svgo;
use Spatie\ImageOptimizer\Optimizers\Optipng;
use Spatie\ImageOptimizer\Optimizers\Gifsicle;
use Spatie\ImageOptimizer\Optimizers\Pngquant;
use Spatie\ImageOptimizer\Optimizers\Jpegoptim;
return [
/**
* When calling `optimize` the package will automatically determine which optimizers
* should run for the given image.
*/
'optimizers' => [
Jpegoptim::class => [
'--strip-all', // this strips out all text information such as comments and EXIF data
'--all-progressive', // this will make sure the resulting image is a progressive one
'-m85'
],
Pngquant::class => [
'--force' // required parameter for this package
],
Optipng::class => [
'-i0', // this will result in a non-interlaced, progressive scanned image
'-o2', // this set the optimization level to two (multiple IDAT compression trials)
'-quiet' // required parameter for this package
],
Svgo::class => [
'--disable=cleanupIDs' // disabling because it is know to cause troubles
],
Gifsicle::class => [
'-b', // required parameter for this package
'-O3' // this produces the slowest but best results
],
],
/**
* The maximum time in seconds each optimizer is allowed to run separately.
*/
'timeout' => 60,
/**
* If set to `true` all output of the optimizer binaries will be appended to the default log.
* You can also set this to a class that implements `Psr\Log\LoggerInterface`.
*/
'log_optimizer_activity' => false,
];

View File

@ -83,7 +83,7 @@ class Image extends Model
if (empty($basePath)) { if (empty($basePath)) {
throw new \Exception('You must defined config image.path'); throw new \Exception('You must defined config image.path');
} }
$parts = array_slice(str_split(mb_strtolower(str_slug($filename, '')), 2), 0, 2); $parts = array_slice(str_split(md5($filename), 2), 0, 2);
$path = $basePath . '/' . implode('/', $parts) . '/' . $filename; $path = $basePath . '/' . implode('/', $parts) . '/' . $filename;
return $path; return $path;

View File

@ -21,6 +21,7 @@ class ImagesServiceProvider extends ServiceProvider
$this->loadMigrationsFrom(__DIR__ . '/../../database/migrations'); $this->loadMigrationsFrom(__DIR__ . '/../../database/migrations');
$this->mergeConfigFrom(__DIR__ . '/../../config/image.php', 'image'); $this->mergeConfigFrom(__DIR__ . '/../../config/image.php', 'image');
$this->mergeConfigFrom(__DIR__ . '/../../config/image-optimizer.php', 'image-optimizer');
$this->app->register(ImageServiceProvider::class); $this->app->register(ImageServiceProvider::class);