depage / graphics
depage-graphics 是一个帮助类,用于获取调整大小和优化的图像和缩略图。
dev-master
2014-10-16 00:00 UTC
Requires
- php: >= 5.3
Requires (Dev)
- phpunit/phpunit: ^9
This package is auto-updated.
Last update: 2024-09-25 09:16:39 UTC
README
depage-graphics 是一个帮助类,用于获取调整大小和优化的图像和缩略图。
特性
- 支持 gd 作为基本图像调整大小方法
- 支持图像magick和graphicsmagick二进制文件以提供更好的图像质量支持
- 支持优化图像的外部工具,如
- jpegtran
- jpegoptim
- optipng
- pngcrush
- composer 支持
您可以将 depage-graphics 与 SLIR,智能 Lencioni 图像调整大小 进行比较。但 SLIR 仅基于 gd,您可以使用 Imagemagick 或 Graphicsmagick 作为转换工具以实现更好的图像质量。
作为图像服务的基本使用
您可以将图形类用作图像服务,以自动调整图像大小、裁剪、转换和优化,或生成缩略图。
要将图像转换为特定操作
/path-to/image.jpg.resize-400x400.jpg
/path-to/image.jpg.r400x400.jpg
/path-to/image.jpg.thumb-100x75.jpg
/path-to/image.jpg.t100x75.jpg
/path-to/image.jpg.crop-200x200-10x10.jpg
/path-to/image.jpg.c200x200-10x10.jpg
您还可以链接操作和参数
/path-to/image.png.resize-400x400.quality-50.background-ffffff.jpg
/path-to/image.png.r400x400.q50.bg-ffffff.jpg
这将使图像大小调整为 400x400 像素,将 jpeg 质量设置为 50,并为透明像素添加白色背景。
基本图像服务
使用 gd 库作为图像服务的基本使用,不进行图像优化
<?php require_once(__DIR__ . "/php/Graphics/Graphics.php"); $imgurl = new Depage\Graphics\Imgurl(); $imgurl->render()->display();
使用选项的扩展使用
使用图像magick 作为转换实用工具和 jpegtran 和 optipng 作为优化工具的图像服务的扩展使用
<?php require_once(__DIR__ . "/php/Graphics/Graphics.php"); $imgurl = new Depage\Graphics\Imgurl(array( 'extension' => "im", 'executable' => "/usr/bin/convert", 'optimize' => true, 'optimizers' => array( 'jpegtran' => "/usr/bin/jpegtran", 'optipng' => "/usr/bin/optipng", ), )); $imgurl->render()->display();
作为图像编辑/转换工具的使用
<?php require_once(__DIR__ . "/php/Graphics/Graphics.php"); $graphics = new Depage\Graphics\Graphics(array( 'extension' => "im", 'executable' => "/usr/bin/convert", 'optimize' => true, 'optimizers' => array( 'jpegtran' => "/usr/bin/jpegtran", 'optipng' => "/usr/bin/optipng", ), )); $graphics->addResize(400, 400); $graphics->addBackground("#ffffff"); $graphics->render("sourceImage.png", "targetImage.jpg");
Web服务器配置
nginx
location /basedirectory {
location ~ (?i)/basedirectory/(.*)\.(jpg|jpeg|gif|png)\.([^/]*)\.(jpg|jpeg|gif|png)$ {
rewrite (?i)^(/basedirectory)/(?!lib/cache/graphics)(.*)$ $1/lib/cache/graphics/$2 last;
try_files $uri /basedirectory/lib/global/getimage.php;
}
try_files $uri $uri/;
}
Apache
@todo
.htacess
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^(?!lib/cache/graphics)(.*)\.(jpg|jpeg|png|gif)\.([^/]*)\.(jpg|jpeg|png|gif)$ /lib/cache/graphics/$0
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^lib/cache/graphics/(.*)\.(jpg|jpeg|png|gif)\.([^/]*)\.(jpg|jpeg)$ /lib/global/getimage.php [T=image/jpeg]
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^lib/cache/graphics/(.*)\.(jpg|jpeg|png|gif)\.([^/]*)\.(png)$ /lib/global/getimage.php [T=image/png]
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^lib/cache/graphics/(.*)\.(jpg|jpeg|png|gif)\.([^/]*)\.(gif)$ /lib/global/getimage.php [T=image/gif]
使用 Composer 安装
在 https://getcomposer.org.cn 获取 composer,然后将此添加到您的 composer.json 中。
{
"require": {
"depage/graphics": "dev/master"
}
}
现在运行
composer install
将当前版本的 depage-graphics 安装到您的 vendor 目录中。
先决条件
- PHP 5.3,以下模块
- gd 支持
- 外部二进制文件(可选)
- convert
- gm
- jpegtran
- jpegoptim
- optipng
- pngcrush
更多信息
您可以在: http://github.com/depage/depage-graphics/ 上进行分支
有关 depage-cms 的更多信息,请访问: http://www.depagecms.net/