marshmallow / nova-advanced-image
Nova的高级图片字段,支持裁剪和缩放。
v2.0.2
2022-09-20 09:24 UTC
Requires
- php: ^8.0
- intervention/image: ^2.5
- laravel/nova: ^4.0
- dev-master
- v2.0.2
- v2.0.1
- v2.0.0
- v1.x-dev
- v1.10.0
- v1.3.3
- v1.3.2
- v1.3.1
- v1.3.0
- v1.2.1
- v1.2.0
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- v0.1.1
- v0.1.0
- dev-dependabot/npm_and_yarn/sass-loader-13.3.2
- dev-dependabot/npm_and_yarn/vue-loader-17.2.2
- dev-dependabot/github_actions/overtrue/phplint-8.2
- dev-42-add-support-for-laravel-10
- dev-development
- dev-nova4
This package is auto-updated.
Last update: 2024-09-12 11:50:24 UTC
README
此软件包为Nova资源提供了一个高级图片字段,允许您上传、裁剪和缩放任何图片。它在前端使用Cropper.js和vue-cropperjs,在后端使用Intervention Image。
要求
此软件包需要以下库之一
- GD库 >=2.0(默认使用)
- Imagick PHP扩展 >=6.5.7
有关详细信息,请参阅Intervention要求。
安装
使用Composer将软件包安装到使用Nova的Laravel应用程序中
composer require marshmallow/nova-advanced-image
如果您想使用Imagick作为默认的图片处理库,请遵循Intervention Laravel文档。这将为您提供一个新的配置文件,您可以在其中指定您想要的驱动程序。
用法
AdvancedImage
继承自 File
,因此您可以使用任何File
实现的函数。请参阅此处的文档。
<?php namespace App\Nova; // ... use Marshmallow\AdvancedImage\AdvancedImage; class Post extends Resource { // ... public function fields(Request $request) { return [ // ... // Simple image upload AdvancedImage::make('photo'), // Show a cropbox with a free ratio AdvancedImage::make('photo')->croppable(), // Show a cropbox with a fixed ratio AdvancedImage::make('photo')->croppable(16/9), // Resize the image to a max width AdvancedImage::make('photo')->resize(1920), // Resize the image to a max height AdvancedImage::make('photo')->resize(null, 1080), // Show a cropbox and resize the image AdvancedImage::make('photo')->croppable()->resize(400, 300), // Override the image processing driver for this field only AdvancedImage::make('photo')->driver('imagick')->croppable(), // Store to AWS S3 AdvancedImage::make('photo')->disk('s3'), // Specify a custom subdirectory AdvancedImage::make('photo')->disk('s3')->path('image'), ]; } }
使用 resize
选项时,会使用Intervention Image resize()
,并具有放大和宽高比约束。
安全
如果您发现任何与安全相关的问题,请发送电子邮件至stef@marshmallow.dev,而不是使用问题跟踪器。
致谢
许可
MIT许可(MIT)。请参阅许可文件获取更多信息。