validoll/kohana-imagecache

一个用于创建缩放/裁剪图像的Kohana模块。

安装: 17

依赖项: 0

建议者: 0

安全性: 0

星标: 3

关注者: 2

分支: 24

开放问题: 0

类型:kohana-module

dev-master 2014-10-17 07:30 UTC

This package is not auto-updated.

Last update: 2024-09-24 02:19:57 UTC


README

此模块允许您快速创建缩放/裁剪图像。修改后的图像在初始请求后进行缓存,并随后提供,以帮助减轻服务器压力,即使在ImageCache关闭的情况下,也可以在相同的URL上提供。

兼容性

ImageCache目前与Kohana 3.2和3.3兼容

入门

在您的application/bootstrap.php文件中,修改对Kohana::modules的调用并包含image和imagecache模块。

Kohana::modules(array(
    ...
    'image'    => MODPATH.'image',
    'imagecache' => MODPATH.'imagecache',
    ...
));

[!!] ImageCache模块需要image模块才能工作。

配置

默认配置文件位于MODPATH/imagecache/config/*

  • 主要配置 - MODPATH/imagecache/config/imagecache.php
  • 修改图像的配置模式 - MODPATH/imagecache/config/imagecache_patterns.php

您应该将此文件复制到APPPATH/config/*,并在那里进行更改,以保持文件系统的级联。

配置选项(imagecache.php)

空或未定义的选项始终回退到其默认值。

cache_expire: 604800 浏览器检查服务器以获取修改后的图像新版本之前的时间(秒)。

cache_dir: 'cache/' 您要使用的图像缓存目录的路径,不要忘记最后的斜杠!

quality: 80 未指定URL中的图像默认质量。

scale_up: FALSE 如果图像在调整大小时应放大到原始尺寸以上。

default_image: FALSE 如果请求的图像不可用时的默认图像。例如

'default_image'    => 'files/misc/default.png',

watermarks 配置一个或多个水印。每个配置键可以作为Imagefly URL的参数传递以应用水印。

如果没有指定偏移量,则使用轴的中心。如果指定了偏移量为TRUE,则使用轴的底部。

// Example watermarks
'watermarks' => array(
    'first_watermark' => array(
        'image'    => 'path/to/first/watermark.png',
        'offset_x' => TRUE,
        'offset_y' => TRUE,
        'opacity'  => 80
    ),
    'second_watermark' => array(
        'image'    => 'path/to/second/watermark.png',
        'offset_x' => 5,
        'offset_y' => 5,
        'opacity'  => 50
    )
)

模式配置(imagecache_patterns.php)

模式设置的示例

'thumb' => array(
   'width' => '50%',
   'height' => '50px',
   'crop' => TRUE,
   'quality' => 80,
   'watermark' => 'custom_watermark',
),

width 缓存图像的宽度。允许'px'或'%'后缀。

height 缓存图像的高度。允许'px'或'%'后缀。

crop 对缓存图像使用裁剪。如果'FALSE',则使用缩放。

quality 缓存图像的质量。

watermark 主配置文件中的一个水印的名称。

使用示例

以下是您可以使用ImageCache执行的一些示例。

首先在您的imagecache.php中设置缓存目录的路径。例如

'cache_dir' => 'files/imagecache/',

其次在您的imagecache_patterns.php中设置至少一个模式。例如

'thumb' => array(
    'width' => '80',
    'height' => '80',
    'crop' => TRUE,
),

使用此路径获取缩放图像 <img src="/files/imagecache/thumb/path/to/image.jpg">

注意

  • 这是一个基于Imagefly的项目,由Fady Khalife创建。
  • ImageCache在宽度参数和高度参数与源相同的图像不会处理图像。
  • 不要忘记使您的缓存目录可写。
  • 灵感来自Joe Lencioni的smart-lencioni-image-resizer