资讯专栏INFORMATION COLUMN

PHP极其强大的图片处理库Grafika详细教程(3):图像属性处理

cyqian / 1706人阅读

摘要:该文章是接着上篇文章,极其强大的图片处理库详细教程图像特效处理模块,由于功能太多,所以分开写,其他的点击这里图像基本处理图像特效处理模块图像属性处理图形绘制该文章主要写的图像属性处理功能,共个方法图片格式化为二进制格式输出该方法的作用是打开

该文章是接着上篇文章,《PHP极其强大的图片处理库Grafika详细教程(2):图像特效处理模块》,由于grafika功能太多,所以分开写,其他的点击这里

《1、图像基本处理》
《2、图像特效处理模块》
《3、图像属性处理》
《4、图形绘制》

该文章主要写grafika的图像属性处理功能,共7个方法

1、图片格式化为二进制格式输出

该方法的作用是打开一张图片,然后格式化为二进制数据,直接输出到浏览器,而不是传统的src显示图片。

其有一个参数,你可以自定义输出图片的格式,比如png啥的

我们这里打开图片,输出为png

当然你还是要告诉浏览器你需要输出的类型是图片header("Content-type: image/png");

use GrafikaGrafika;
$editor = Grafika::createEditor();
$editor->open( $image, "yanying-smaller.jpg" );
header("Content-type: image/png"); // Tell the browser we"re sending a png image
$image->blob("PNG"); 

2、获取图片当前使用的处理库

使用方法可以获取处理当前图片,grafika使用了什么库,是gd还是Imagick

该方法不在editor里面,而是直接在$image里面,没有任何参数

use GrafikaGrafika;
$editor = Grafika::createEditor();
$editor->open( $image, "yanying-smaller.jpg" );
$result = $image->getCore();
var_dump($result); // resource(12, gd)
3、获取图片高度

我们图片高度为213px

use GrafikaGrafika;
$editor = Grafika::createEditor();
$editor->open( $image, "yanying-smaller.jpg" );
$result = $image->getHeight();
var_dump($result); // int 213
4、获取图片宽度

我们图片宽度为319px

use GrafikaGrafika;
$editor = Grafika::createEditor();
$editor->open( $image, "yanying-smaller.jpg" );
$result = $image->getWidth();
var_dump($result); // int 319
5、获取图片名称

图片名称为当前文件名

use GrafikaGrafika;
$editor = Grafika::createEditor();
$editor->open( $image, "yanying-smaller.jpg" );
$result = $image->getImageFile();
var_dump($result); // string "yanying-smaller.jpg" (length=19)
6、获取图片类型

这里我们发现是jpg的

use GrafikaGrafika;
$editor = Grafika::createEditor();
$editor->open( $image, "yanying-smaller.jpg" );
$result = $image->getType();
var_dump($result); // string "JPEG" (length=4)
7、判断图片是否是动态图片,比如gif

我们这张图片是jpg的,所以不是动态图片,返回值为bool类型,true或者false

use GrafikaGrafika;
$editor = Grafika::createEditor();
$editor->open( $image, "yanying-smaller.jpg" );
$result = $image->isAnimated();
var_dump($result); // boolean false

严颖,PHP研发工程师

博客:segmentfault主页

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/22030.html

相关文章

  • PHP极其强大图片处理Grafika详细教程(2):图像特效处理模块

    摘要:搞的应该都清楚该参数有个取值范围只要大于或者等于就可以,如果值越大,像素点也就越大我们取值和取值对比下图片锐化图片锐化就是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰。 该文章是接着上篇文章《PHP极其强大的图片处理库Grafika详细教程(1):图像基本处理》,由于grafika功能太多,所以分开写,其他的点击这里 《1、图像基本处理》《2、图像特效处理模块》《3、...

    Scliang 评论0 收藏0
  • PHP极其强大图片处理Grafika详细教程(4):图形绘制

    摘要:查看结果绘制直线绘制直线就稍微简单点儿了。可以使用如下的代码直接创建一个矩形其中的参数第一个为宽度。默认为表示和左上角重叠。 该文章是接着上一篇文章:《PHP极其强大的图片处理库Grafika详细教程(3):图像属性处理》,是grafika教程的一个部分。 所有的教程目录 《1、图像基本处理》《2、图像特效处理模块》《3、图像属性处理》《4、图形绘制》 话不多说,我们接着上实例,要看基...

    why_rookie 评论0 收藏0
  • PHP极其强大图片处理Grafika详细教程(1):图像基本处理

    摘要:它包含所有的图片处理方法。由于,是基于和库,所以使用方法会根据当前情况,自动选择所需要的图片处理库。这里说明下,如果文字为中文,需要找一个支持中文的字体。默认字体不支持中文,所以你写中文,就是都是小方框。 Grafika是一个PHP图像处理库,是基于Imagick和GD,可以用于改变图片大小,剪裁,比较,添加水印等等功能。还有感知哈希,高级图像过滤,绘制贝塞尔曲线等功能,可谓非常强大。...

    fai1017 评论0 收藏0
  • SegmentFault 技术周刊 Vol.30 - 学习 Python 来做一些神奇好玩事情吧

    摘要:学习笔记七数学形态学关注的是图像中的形状,它提供了一些方法用于检测形状和改变形状。学习笔记十一尺度不变特征变换,简称是图像局部特征提取的现代方法基于区域图像块的分析。本文的目的是简明扼要地说明的编码机制,并给出一些建议。 showImg(https://segmentfault.com/img/bVRJbz?w=900&h=385); 前言 开始之前,我们先来看这样一个提问: pyth...

    lifesimple 评论0 收藏0

发表评论

0条评论

cyqian

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<