2017-08-20 37 views
0

我有一个laravel 5项目。如何将TinyPNG添加到Ckeditor&Elfinder?

我使用CkeditorElfinder在我的文章中上传图片。

通常,我使用TinyPng php api来优化我的其他图像。但我无法将TinyPng api集成到ckeditor&elfinder

有没有办法做到这一点?

回答

1

我建议你安装Spatie的laravel-image-optimizer,基本上它会建立一个中间件,用于检测请求中包含图像的时间,并且它会自动传递正确的图像优化器。

要安装运行:

composer require spatie/laravel-image-optimizer 

并添加到您的配置文件app.php

// config/app.php 
'providers' => [ 
    ... 
    Spatie\LaravelImageOptimizer\ImageOptimizerServiceProvider::class, 
]; 

和:

// config/app.php 
'aliases' => [ 
    ... 
    'ImageOptimizer' => Spatie\LaravelImageOptimizer\ImageOptimizerFacade::class, 
]; 

要使用它包住上传端点与中间件:

Route::middleware('optimizeImages')->group(function() { 
    // all images will be optimized automatically 
    Route::post('upload-images', '[email protected]); 
}); 

,如文档中提到的受支持优化默认是:

  • JpegOptim
  • 使用OptiPNG:

    包会,如果他们是存在于您的 系统上使用这些优化

  • Pngquant 2
  • SVGO
  • Gifsicle

如果你想,通过各种手段,用你的优化,这个包有你覆盖,只需按照文档的this section

希望这可以帮助你。

+0

它看起来很酷,我会试试看。我也对TinyPng压缩能力感到满意。但我找不到一种方式来使用它与ckeditor:/ –

+0

@YalınSemer我从来没有使用该优化器,但该软件包支持的是非常好的,并由多个权威机构推荐,如谷歌 – Asur

+0

@YalınSemer我已经更新了答案进一步有关添加自定义优化器的信息 – Asur