码迷,mamicode.com
首页 > Web开发 > 详细

php通过Grafika实现九宫格组图

时间:2018-11-07 16:02:09      阅读:437      评论:0      收藏:0      [点我收藏+]

标签:href   target   jpeg   normal   过滤   在顶部   create   图像处理   引入   

什么是Grafika?

Grafika是一个PHP图像处理库,功能强大。

独特的功能

  • 智能裁剪
  • 动画GIF支持
  • 5种缩略图模式
  • 图像比较
  • 图像高级过滤功能
  • 图像混合
  • 规范化的API

安装

Grafika的官网

在项目根目录中,在命令行中输入:

composer require kosinix/grafika:dev-master --prefer-dist

创建编辑器

编辑器用于操纵图像。推荐的方法是使用Grafika :: createEditor()。它会自动选择最佳编辑器。它将检查Imagick是否可用。如果没有,它将回归使用GD。

use Grafika\Grafika; // 引入包

$editor = Grafika::createEditor(); // 创建编辑器

编辑器包含所有的图片处理方法。

下面是我生成合成图的实际代码:

public function images()
{
  try {
  $editor = Grafika::createEditor();
  $imageBack = Grafika::createBlankImage(750, 750);//创建一个750*750的空白图像

  $image1 = $image2 = $image3= $image4 = ‘‘;
  $editor->open($image1, ‘E:/goodsPic/1.jpeg‘);//打开1.jpeg并且存放到$image1
  $editor->resizeFill($image1, 375, 375);//居中剪裁。就是把较短的变缩放到200px,然后将长边的大于200px的部分居中剪裁掉,图片不会变形
  $editor->blend($imageBack, $image1, ‘normal‘, 1, ‘top-left‘);//将两个图像合成在一起,第一个图像作为基础,第二个图像在顶部。支持多种混合模式
  $editor->save($imageBack, ‘E:/goodsPic/all.jpg‘);//imageBack保存为all.jpg

  $editor->open($image2, ‘E:/goodsPic/2.jpg‘);
  $editor->resizeFill($image2, 375, 375);
  $editor->blend($imageBack, $image2, ‘normal‘, 1, ‘top-right‘);
  $editor->save($imageBack, ‘E:/goodsPic/all.jpg‘);

  $editor->open($image3, ‘E:/goodsPic/3.jpg‘);
  $editor->resizeFill($image3, 375, 375);
  $editor->blend($imageBack, $image3, ‘normal‘, 1, ‘bottom-left‘);
  $editor->save($imageBack, ‘E:/goodsPic/all.jpg‘);

  $editor->open($image4, ‘E:/goodsPic/4.jpg‘);
  $editor->resizeFill($image4, 375, 375);
  $editor->blend($imageBack, $image4, ‘normal‘, 1, ‘bottom-right‘);
  $editor->save($imageBack, ‘E:/goodsPic/all.jpg‘);
  } catch (Exception $e){
    echo $e->getMessage();
  }
  exit(‘run over‘);
}

最后生成一张合成图:

技术分享图片



php通过Grafika实现九宫格组图

标签:href   target   jpeg   normal   过滤   在顶部   create   图像处理   引入   

原文地址:https://www.cnblogs.com/designers/p/9922852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!