r64/nova-image-cropper

一个Laravel Nova字段。

资助包维护!
beliolfa

安装数: 250 596

依赖: 0

建议者: 0

安全: 0

星标: 57

关注者: 2

分支: 16

公开问题: 20

语言:Vue


README

此字段扩展了Image Field,添加了一个方便的裁剪器来处理图片。可以像Nova中的文件字段一样配置。

演示

Demo

安装

在您的nova项目中运行此命令:composer require r64/nova-image-cropper

将其添加到您的Nova资源中

use R64\NovaImageCropper\ImageCropper;

ImageCropper::make('Photo'),

更新表单

为了编辑模型中保存的现有图片,ImageCroper使用预览方法返回一个base64编码的图片。您可以使用默认实现或覆盖它,只要返回一个base64图片即可。

use R64\NovaImageCropper\ImageCropper;

ImageCropper::make('Photo')
        ->preview(function () {
            if (!$this->value) return null;

            $url = Storage::disk($this->disk)->url($this->value);
            $filetype = pathinfo($url)['extension'];
            return 'data:image/' . $filetype . ';base64,' . base64_encode(file_get_contents($url));
        });

选项

头像模式

您可以在预览和裁剪器中添加一个圆形蒙版

ImageCropper::make('Photo')->avatar()

自定义宽高比

定义裁剪框的固定宽高比。

  • 类型:数字
  • 默认:NaN
ImageCropper::make('Photo')->aspectRatio(16/9)

用于自由比例

ImageCropper::make('Photo')->aspectRatio(0)

本地化

/resources/lang/vendor/nova目录下的相应xx.json文件中设置您的翻译

...

  "Edit Image": "Editar Imagen",
  "Cancel Crop": "Cancelar Recorte",
  "Change Image": "Cambiar Imagen",
  "Done": "Hecho",
  "Click here or drop the file to upload": "Click aquí o arrastra el archivo para comenzar la subida"