nuhel / filament-cropper
用于Filament的Cropper Js实现
1.1.2
2023-04-25 04:23 UTC
Requires
- php: ^8.1
- filament/filament: ^2.0
README
安装
您可以通过Composer安装此包
composer require nuhel/filament-cropper
此字段具有与Filament文件上传字段大部分相同的功能。
Cropper::make('image') ->getUploadedFileNameForStorageUsing(function (TemporaryUploadedFile $file): string { return (string)str("image_path/" . $file->hashName()); })->enableDownload() ->enableOpen() ->enableImageRotation() ->enableImageFlipping() ->imageCropAspectRatio('16:9'),
使用imageCropAspectRatio
我们可以设置裁剪器的纵横比。
Cropper::make('avatar') ->avatar() ->enableOpen() ->enableDownload() ->modalSize('xl'),
如果需要,可以使用modalSize
方法自定义模态窗口的大小。
Cropper::make('avatar') ->avatar() ->enableOpen() ->enableDownload() ->modalSize('xl') ->modalHeading("Crop Background Image")
可用选项列表
Cropper::make('image') ->modalSize('xl') ->modalHeading("Crop Background Image") ->enableImageRotation() ->rotationalStep(5) ->enableImageFlipping() ->enabledAspectRatios([ '2:3', '9:16', '5:5' ]) ->zoomable(true) ->enableZoomButtons() ->enableAspectRatioFreeMode() ->imageCropAspectRatio('4:9')
缩略图图像
现在您可以使用generateThumbnailImage()
方法生成缩略图图像。
Cropper::make('avatar') ->enableOpen() ->enableDownload() ->generateThumbnailImage(),
默认情况下,它使用thumbnailImages文件夹来存储生成的缩略图图像。
但可以通过使用thumbnailImageDirectory
方法进行覆盖。
注意:默认情况下,需要Image Intervention包来生成缩略图图像。
然而,可以通过使用generateThumbnailImageUsing
方法自定义生成缩略图图像的方式。
Cropper::make('avatar') ->enableOpen() ->enableDownload() ->generateThumbnailImage() ->generateThumbnailImageUsing(function(TemporaryUploadedFile $file, string $filename, string $diskName, ?string $directory, string $visibility){ ...Your Code Here })->removeThumbnailImageUsing(function(TemporaryUploadedFile $file, string $filePath, string $diskName, ?string $directory, string $visibility){ ...Your Code Here })
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。