himiklab/yii2-easy-thumbnail-image-helper

此包已被弃用,不再维护。未建议替代包。

实时创建和缓存缩略图的Yii2助手

1.1.5 2018-11-12 11:51 UTC

This package is auto-updated.

Last update: 2022-01-12 15:41:20 UTC


README

Packagist Packagist license

实时创建和缓存缩略图的Yii2助手。

安装

安装此扩展的首选方式是通过 composer

  • 运行以下命令
php composer.phar require "himiklab/yii2-easy-thumbnail-image-helper" "*"

"himiklab/yii2-easy-thumbnail-image-helper" : "*"

将其添加到您的应用程序的 composer.json 文件的 require 部分。

  • 在应用程序的配置文件的 components 部分中添加一个新的组件,例如
'components' => [
    'thumbnail' => [
        'class' => 'himiklab\thumbnail\EasyThumbnail',
        'cacheAlias' => 'assets/gallery_thumbnails',
    ],
],

bootstrap 部分中,例如

'bootstrap' => ['log', 'thumbnail'],

如果您想为应用程序设置全局助手设置,则这是必要的。

使用方法

例如

use himiklab\thumbnail\EasyThumbnailImage;

echo EasyThumbnailImage::thumbnailImg(
    $model->pictureFile,
    50,
    50,
    EasyThumbnailImage::THUMBNAIL_OUTBOUND,
    ['alt' => $model->pictureName]
);

use himiklab\thumbnail\EasyThumbnailImage;

echo EasyThumbnailImage::thumbnailImg(
    'http://...',
    50,
    50,
    EasyThumbnailImage::THUMBNAIL_OUTBOUND,
);

有关其他功能,请参阅源代码。

如果您想自行处理转换缩略图时出现的错误,请创建自己的类,并从EasyThumbnailImage继承。在您的类中,仅替换受保护的错误处理方法。例如

class ThumbHelper extends \himiklab\thumbnail\EasyThumbnailImage
{

    protected static function errorHandler($error, $filename)
    {
        if ($error instanceof \himiklab\thumbnail\FileNotFoundException) {
            return \yii\helpers\Html::img('@web/images/notfound.png');
        } else {
            $filename = basename($filename);
            return \yii\helpers\Html::a($filename,"@web/files/$filename");
        }
    }
}