Создание большого пальца в Yii2

Я использовал эту ссылку для insatll yii2-imagine: yii2/" rel="nofollow noreferrer">ThumbCreate

Когда он успешно запустится, то в папке /vendor/yiisoft/yii2/Imagine/ будет одна папка vendor, а затем в этой папке есть еще 2 папки с именами imagine и composer. В папке imagine есть еще одна папка с таким же именем, а затем в этой папке так много папок и файлов. я прилагаю изображение для этоговведите описание изображения здесь.
Теперь, как я могу использовать миниатюру функция создания превью изображений.

файл composer.json

{
    "name": "yiisoft/yii2-imagine",
    "description": "The Imagine integration for the Yii framework",
    "keywords": ["yii2", "imagine", "image", "helper"],
    "type": "yii2-extension",
    "license": "BSD-3-Clause",
    "support": {
        "issues": "https://github.com/yiisoft/yii2-imagine/issues",
        "forum": "http://www.yiiframework.com/forum/",
        "wiki": "http://www.yiiframework.com/wiki/",
        "irc": "irc://irc.freenode.net/yii",
        "source": "https://github.com/yiisoft/yii2-imagine"
    },
    "authors": [
        {
            "name": "Antonio Ramirez",
            "email": "[email protected]"
        }
    ],
    "require": {
        "yiisoft/yii2-imagine": "*",
        "imagine/imagine": "0.5.*"
    },
    "autoload": {
        "psr-4": {
            "yii\\imagine\\": ""
        }
    },
    "extra": {
        "branch-alias": {
            "dev-master": "2.0.x-dev"
        }
    }
}

файл контроллера

<?php

namespace backend\controllers;

use Yii;
use app\models\Employee;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
use yii\filters\AccessControl;
use yii\filters\VerbFilter;
use yii\web\UploadedFile; // upload the image in folder
use yii\Imagine\Image;
use vendor\ExportXLS; // for export data in excel file

class EmployeeController extends Controller
{
public function actionCreate()
    {
        $model = new Employee();
        $model->added_date_time = date('Y-m-d H:i:s');
        if($model->load(Yii::$app->request->post())) {
            $model->file = UploadedFile::getInstance($model,'avatar');

            if(!empty($model->file)) {
                $imageName = Yii::$app->security->generateRandomString();
                $model->file->saveAs('uploads/emp/'.$imageName.'.'.$model->file->extension);
                $model->avatar = $imageName.'.'.$model->file->extension;
                $originalFile = Yii::$app->basePath.'/uploads/emp/'.$imageName.'.'.$model->file->extension;
                $thumbFile = Yii::$app->basePath.'/uploads/emp/thumb/'.$imageName.'.'.$model->file->extension;

                $saveThumb = Image::thumbnail($originalFile, 200, 200)->save($thumbFile, ['quality' => 80]);
            }
            if($model->save()){
                $this->redirect(\Yii::$app->urlManager->createUrl('employee'));
            }
        }
        else {
            return $this->render('create', [
                'model' =>  $model
                ]);
        }
    }
}
?>

Как сделать большой палец? после загрузки изображения. Сообщите, нужна ли дополнительная информация.


person Pathik Vejani    schedule 04.07.2015    source источник


Ответы (1)


1. Загрузите yii2-imagine с https://github.com/yiisoft/yii2-imagine.

2.извлеките файл в advanced\vendor\yiisoft\yii2, а затем переименуйте "yii2-imagine-master" в "imagine"

3. откройте файл advanced\vendor\yiisoft\yii2\classes.php и вставьте эти две строки

 'yii\imagine\Image' => YII2_PATH . '/imagine/Image.php',
 'yii\imagine\Image' => YII2_PATH . '/imagine/BaseImage.php',

в return[] как и в другой строке.

4. Теперь перейдите во внешний или внутренний интерфейс и откройте одно из представлений или контроллеров, а затем добавьте приведенный ниже код сверху.

 use yii\imagine\Image;

теперь ваш класс добавлен, и тогда вы можете использовать Image:: как показано ниже.

 Image::thumbnail($filename, $width, $height);

или другие методы, которые вы хотите использовать.

наилучшие пожелания.

person moein kh    schedule 19.12.2015