ktquez / lumen-image
此包已被废弃且不再维护。未建议替代包。
基于Imagine和受Croppa启发的Lumen框架图像处理库,便于基于URL进行图像操作
v1.0.2
2015-07-02 14:42 UTC
Requires
- php: >=5.4.0
- illuminate/support: ~5.0
- imagine/imagine: 0.6.*
Requires (Dev)
- orchestra/testbench: 3.0.*
README
Lumen Image 是Lumen框架的一个图像处理包,改编自 Folklore - Laravel image 并基于 PHP Imagine库。它受 Croppa 启发,可以使用特殊格式的URL进行操作。它支持基本的图像操作,如缩放、裁剪、旋转和翻转。它还支持如负片、灰度、伽玛、着色和模糊等效果。您还可以定义自定义过滤器以获得更大的灵活性。
致谢
此包是针对Lumen框架改编自 Folklore - Laravel image 的图像处理库。
此包与其他图像处理库的主要区别在于,您可以直接在URL中使用参数来操作图像。然后,处理后的图像版本将保存在与原始图像相同的路径中,创建一个静态文件版本,绕过PHP处理所有未来的请求。
例如,如果您有一个图像在以下URL
/uploads/photo.jpg
要创建一个300x300的黑白图像版本,您使用以下URL
/uploads/photo-image(300x300-crop-grayscale).jpg
要生成图像的URL,您可以使用 Image::url()
方法
Image::url('/uploads/photo.jpg',300,300,array('crop','grayscale'));
或者
<img src="<?=Image::url('/uploads/photo.jpg',300,300,array('crop','grayscale'))?>" />
或者使用 Image::make()
方法编程性地操作图像。它支持与 Image::url()
方法相同的所有选项。
Image::make('uploads/photo.jpg',array( 'width' => 300, 'height' => 300, 'grayscale' => true ))->save('path/to/the/thumbnail.jpg');
或者直接使用Imagine库
$thumbnail = Image::open('uploads/photo.jpg') ->thumbnail(new Imagine\Image\Box(300,300)); $thumbnail->effects()->grayscale(); $thumbnail->save('path/to/the/thumbnail.jpg');
特性
此包使用 Imagine 进行图像处理。Imagine与GD2、Imagick、Gmagick兼容,并支持许多 功能。
此包还提供了一些现成的过滤器(更多信息)
- 缩放
- 裁剪(带位置)
- 旋转
- 黑白
- 反转
- 伽玛
- 模糊
- 着色
安装
依赖服务器要求安装composer require ktquez/lumen-image
配置在文件 bootstrap/app.php
中插入以下行
$app->configure('image');
$app->register('Folklore\Image\ImageServiceProvider');
class_alias('Folklore\Image\Facades\Image','Image');
如果您想使用依赖注入,只需在您的文件 'AppServiceProvider.php' 中添加以下代码
$this->app->bind('\Folklore\Image\ImageManager', function($app) {
return $app['image'];
});