kingjerod/php-image-tools

使用 Imagick 的图像处理库。

dev-master 2015-06-08 07:23 UTC

This package is not auto-updated.

Last update: 2024-09-28 17:43:50 UTC


README

Build Status Coverage Status Software License

PHP 图像处理库,使用修饰符来修改图像。简化了 Imagick 的一些复杂性。包含一个工厂来帮助加载远程图像,并可在文件夹中查找/修改图像。

安装

此库需要 PHP 5.4 和已安装的 Imagick PHP 插件。在某些 Unix 系统上,此命令应该可以工作

sudo apt-get install php5-imagick

安装 Imagick 后,使用 composer 安装库

composer require kingjerod\php-image-tools

##使用 ImageTools 有两个主要类,即 Image 类和 Modifier 类。Modifier 类用于更改图像,无论是通过调整大小、裁剪还是添加文本。可以对图像应用多个修饰符,并且相同的修饰符可以应用于多个图像。

##示例

###首次使用工厂加载图像

$factory = new ImageFactory();
$image = $factory->createFromLocalFile('/images/apple.png');

###获取图像后,可以使用不同的修饰符来更改它:#####调整图像大小

$scale = new Scale(200, 300); //width, height
$image->modify($scale);
$image->save('/images/appleBig.png');

#####更改不透明度

$opacity= new Opacity(0.8); //80% opacity (mostly visible)
$image->modify($opacity);
$image->save('/images/appleBig.png');

#####添加水印

$text = new Text(10, 40, 'Arial.tff', '#000', 0.3, 24, 'Copyright XYZ');
$image->modify($text);
$image->save('/images/appleCopyright.png');

#####合并两个图像

$image2 = $factory->createFromLocalFile('/images/orange.png');
$merge = new Merge(10, 20, $image2);
$image->modify($merge);
$image->save('/images/appleAndOrange.png');

#####做很多事情

$image2 = $factory->createFromLocalFile('/images/orange.png');
$merge = new Merge(10, 20, $image2);
$image->modify($merge);
$text = new Text(10, 40, 'Arial.tff', '#000', 0.3, 24, 'Copyright XYZ');
$image->modify($text);
$opacity= new Opacity(0.8); //80% opacity (mostly visible)
$image->modify($opacity);
$image->save('/images/appleAndOrangeCrazy.png');

##自定义修饰符 创建自己的修饰符很简单。只需创建自己的类,并实现 ModifierInterface。它有一个函数

public function modify(Image $image);