as-milano/yii2-easy-thumbnail-image-helper

Yii2 助手,用于实时创建和缓存缩略图

安装: 290

依赖者: 0

建议者: 0

安全: 0

星标: 0

分支: 0

类型:yii2-extension

1.0.2 2016-04-09 19:43 UTC

This package is auto-updated.

Last update: 2024-09-29 03:58:05 UTC


README

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]
);

其他函数请参阅源代码。

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

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");
        }
    }
}