anahkiasen/illuminage

Imagine库的包装器,用于集成到Laravel框架中

1.2.2 2014-10-20 09:26 UTC

This package is auto-updated.

Last update: 2024-09-08 00:17:02 UTC


README

Illuminage

Build Status Latest Stable Version Total Downloads Scrutinizer Code Quality Code Coverage

安装

首先执行composer require anahkiasen/illuminage:dev-master

然后如果你在使用Laravel应用,将以下内容添加到app/config/app.php文件中的providers数组中

'Illuminage\IlluminageServiceProvider',

并在同一文件的facades数组中添加以下内容

'Illuminage' => 'Illuminage\Facades\Illuminage',

然后执行artisan asset:publish anahkiasen/illuminage

用法

Illuminage是Imagine库的包装器,用于集成到Laravel框架中。它实现了围绕Imagine的优雅快捷操作和智能缓存系统。

// This will create a cropped 200x300 thumb, cache it, and display it in an image tag
echo Illuminage::thumb('image.jpg', 200, 300)
// or
echo Illuminage::image('image.jpg')->thumbnail(200, 300)

// Shortcuts
echo Illuminage::square('image.jpg', 300)

从这些调用中得到的不是直接的HTML字符串,而是实现HtmlObject\Tag抽象类的对象,因此你可以对它们使用各种HTML操作方法

$thumb = Illuminage::square('image.jpg', 200)->addClass('image-wide');
$thumb = $thumb->wrapWith('figure')->id('avatar');

echo $thumb;
// <figure id="avatar"><img class="image-wide" src="pathToThumbnail.jpg"></figure>

你可以随时访问用于渲染图像的原始Imagine实例

$thumb = Illuminage::image('foo.jpg')->thumbnail(200, 200);

echo $thumb->grayscale()->onImage(function($image) {
  $image->flipVertically()->rotate(45);
});