php imagemagick库安装使用
imagemagick介绍:
ImageMagick® is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PNG, Postscript, SVG, and TIFF. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.
The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite language. Choose from these interfaces: G2F (Ada), MagickCore (C), MagickWand (C), ChMagick (Ch), ImageMagickObject (COM+), Magick++ (C++),JMagick (Java), L-Magick (Lisp), Lua, NMagick (Neko/haXe), Magick.NET (.NET), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP(PHP), IMagick (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images dynamically and automagically.
ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you may use, copy, modify, and distribute in both open and proprietary applications. It is distributed under the Apache 2.0 license, approved by the OSI and recommended for use by the OSSCC.
The ImageMagick development process ensures a stable API and ABI. Before each ImageMagick release, we perform a comprehensive security assessment that includes memory error and thread data race detection to prevent security vulnerabilities.
The current release is ImageMagick 6.9.0-3 available from http://www.imagemagick.org/download. It runs on Linux, Windows, Mac Os X, iOS, Android OS, and others.
The authoritative ImageMagick web site is http://www.imagemagick.org.
著名的图片服务提供商 Flickr 使用的是ImageMagick,还有 Yupoo 、 手机之家 使用的也是ImageMagick。
下载:http://www.imagemagick.org/download/
windows安装:
下载windows版:
安装后,在安装php扩展:官方推荐的3个:
MagickWand for PHP a native PHP-extension to the ImageMagick MagickWand API.
IMagick is a native PHP extension to create and modify images using the ImageMagick API. Documentation for the extension is available here.
phMagick is a wrapper class for ImageMagick, wrapping the most common web image manipulation actions in easy to use functions, but allowing full access to ImageMagick's power by issuing system calls to it's command-line programs.
决定使用Imagick。
windows下在iMagick的dll扩展 http://pecl.php.net/package/imagick
重命名为php_imagick.dll 然后copy到php的ext文件夹下
在php.ini文件中添加设置
extension=php_imagick.dll
之后查看phpinfo() 里面有没有imagick一栏,如果有的话就可以进行测试了。
(
php5.4.x or php5.5.x
dyn = dynamic, st = static, q16 = 16 bit, q8= 8 bit.
以上标识,同你下载的ImageMagick下载标识相同,本人用的是q16 。安装路径不要有空格。
5. 把dll文件重命名为php_imagick.dll,并放到php 扩展文件目录 php/ext 中。
6. 在 php.ini 配置文件中添加,extension=php_imagick.dll。
7. 重启电脑,只重启apache不管用的情况下,重启下PC。因为扩展底层使用的是imageMagic软件,所以软件重启电脑,重新加载软件,并刷新path路径。
)
我总是报错:
“ 系统错误 ,无法启动此程序因为计算机丢失CORE_RL_wand_.dll ”
把下载php_imagick-3.4.3-5.5-ts-vc11-x86下面的所有dll放在windows system32下面还是不行,最后看了一篇博客,
(解决了,把扩展包中的“CORE_*.dll” 这些dll文件 放到 你的php.exe同级目录下。 )
如果没有Imagick 项,请 使用 php扩展调试命令 来检查扩展中存在的问题, 并确保三方软件版本一致即可。
php扩展 调试命令:
在cmd运行: php --ri imagick
1. 如果报错是:“php_imagick.dll' - %1 不是有效的 Win32 应用程序” ,则说明版本不相符合。 需要检查 imagick软件本身( 如x86)、php本身( x86 ts (thread safe) )、php扩展php_imagick.dll (ts) 三方版本 要一致。
2. 如果报错是:“php.exe - 系统错误 ,无法启动此程序因为计算机丢失CORE_RL_wand_.dll ” , 说明你没有将 php_imagick-3.3.0-5.4-ts-vc9-x86.zip 扩展包中的“CORE_*.dll” 这些dll文件 放到 你的php.exe同级目录下。 ,只需要拷贝 CORE_*.dll 到php目录就可以解决了。
3. 如果php --ri imagick 显示的结果 ImageMagick number of supported formats: => 0 支持的图片格式数量为0,请看第5步需要新建一个环境变量。
4.如果php代码执行调用时报错:“ NoDecodeDelegateForThisImageFormat ”,表明你的php_imagick.dll的版本 并不支持或并不匹配 ImageMagick软件版本,这时候 php --ri imagick 的结果也显示为: ImageMagick number of supported formats => 0 。需要更换ImageMagick软件版本。
http://www.cnblogs.com/wangqishu/p/5609950.html
参考:http://blog.sina.com.cn/s/blog_966e43000101bgqj.html
LInux安装:
下载源代码:
参考官方教程:
$ cd ImageMagick-6.9.0
$ ./configure
$ make
make install
执行:/usr/local/imagemagick/bin/convert logo: logo.gif 测试一下ImageMagick是否可以正常运行。
(源码安装我有点问题,sudo apt-get install imagemagick
安装完后
/usr/bin下有工具软件
convert -version 能正常输出。
我用这种方式,后面安装php imagick出现问题:
checking ImageMagick MagickWand API configuration program... configure: error: not found. Please provide a path to MagickWand-config or Wand-config program.
在网上搜了说要装:
apt-get install libmagickwand-dev libmagickcore-dev
apt-get install libmagickwand-dev libmagickcore-dev
安装后果然没有问题了,结果:
Installing shared extensions: /opt/lampp/lib/php/extensions/no-debug-non-zts-20121212/
Installing header files: /opt/lampp/include/php/
)
或者:convert -version
2、安装PHP扩展:imagick
最新的包可以在下面的地址中找到http://pecl.php.net/package/imagick
1
2 3 4 5 6 7 8 9 10 11 12 |
wget http://pecl.php.net/get/imagick-3.0.1.tgz
tar zxvf imagick-3.0.1.tgz cd imagick-3.0.1/ export PKG_CONFIG_PATH=/usr/local/imagemagick/lib/pkgconfig /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick make && make install /usr/local/php_fcgi/bin/phpize |
编辑/usr/local/php/etc/php.ini 添加:extension = "imagick.so"
编辑/usr/local/php_fcgi/etc/php.ini 添加:extension = "imagick.so"
重启php-fpm或apache。
lu-restart
先试试,再执行:ldconfig ,重新加载一些链接库。
(我用的是pecl install imagick 安装,安装完后提示:
You should add "extension=imagick.so" to php.ini
增加就行了。)
php_imagick程序示例
1.创建一个缩略图并显示出来
<?php
header('Content-type: image/jpeg');
$image = new Imagick('image.jpg');
// If 0 is provided as a width or height parameter,// aspect ratio is maintained
$image->thumbnailImage(100, 0);
echo $image;
?>
2.创建一个目录下的缩略图,并保存
<?php
$images = new Imagick(glob('images
$im = new Imagick("example.gif");
foreach ($im as $frame) {
$frame->thumbnailImage(50, 50);
$frame->setImagePage(50, 50, 0, 0);
}
$im->writeImages("example_small.gif", true);
?>
http://blog.sina.com.cn/s/blog_8da982ac010171iz.html
http://blog.csdn.net/andy1219111/article/details/38335987
http://blog.csdn.net/czloveyeer/article/details/8179766
http://blog.lizhigang.net/archives/228
文档:
http://php.net/manual/zh/book.imagick.php
http://www.bitscn.com/pdb/php/201407/235972.html
http://wenku.baidu.com/view/7b83e46f67ec102de3bd893f.html
php imagemagick库安装使用的更多相关文章
- 转:ImageMagick +Jmagick安装
原文来自于: 目录 一.ImageMagick介绍 二.安装支持库 三.在Linux上用源码编译安装ImageMagick与Jmagick 四.在Linux上使用yum安装ImageMagick与Jm ...
- 图片处理服务 ImageMagick 的安装和使用
简介 该文章使用目前官方最新版本7.0.8,这里只记录下Windows系统下的安装. 官方网站:http://www.imagemagick.org/script/index.php. ImageMa ...
- protocol buffer c++ python库安装
c++库安装较简单,不要用源码,还得下载依赖,就被墙了 https://github.com/google/protobuf/releases 下载一个最新的release安装 #protoc -- ...
- [转]Snappy压缩库安装和使用之一
Snappy压缩库安装和使用之一 原文地址:http://blog.csdn.net/luo6620378xu/article/details/8521223 近日需要在毕业设计中引入一个压缩库,要求 ...
- phpize 扩展GD库 安装 ! 环境--centos 7 +nginx 1.7.11+php 5.6.7
使用phpize编译GD库安装,先安装前置库libjpeg libpng zlib freetype等 都是下面php编译的几个选项 先看php编译的选项: --with-gd=DIR ...
- DCMTK3.6.1(MD支持库)安装说明
转载:http://qimo601.iteye.com/blog/1685135 [前言] 最近,因为需要开发DICOM网管模块,必须使用DCMTK的DcmNet模块.但是DCMTK3.6.0在Dcm ...
- laravel项目拉取下来安装,node.js库安装
1.拉取项目 2.切换分支 圈圈里面是版本 composer 安装laravel组件其他库 安装node.js安装包 npm set registry=https://registry.npm.ta ...
- python 库安装笔记
python 库安装笔记 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-2-22 友情提示 安装python库的过程中 ...
- python库安装(numpy+scipy+matplotlib+scikit_learn)
python安装好后,库安装走了很多弯路,查了很多资料,终于安装成功,并且保存了该文章的地址,分享给大家 本人电脑windows 7,64位系统,安装的Python是3.5的,因此下载的库也是对应版本 ...
随机推荐
- gcc 遇到过的语法问题
1.在ubuntu 12.04 环境下,在/etc/ld.so.conf.d/目录里添加某个so库的配置路径,比如 /home/myself/abc/lib/ 执行 sudo ldconfig
- 解读MT7620A上的DTS文件
DTS文件,即Device Tree Source,是某些芯片(在Openwrt的target/linux/中,至少ramips,lantiq和BRCM有此文件)用于描述硬件设备资源的文件.此文件是驱 ...
- C. Beautiful Numbers
C. Beautiful Numbers Time Limit : 4000/2000ms (Java/Other) Memory Limit : 524288/262144K (Java/Oth ...
- python管理工具easy_install与pip
刚开始同步系统的接触python和linux,在昊妹妹的指引下学习了使用python管理工具,希望能够通过不断熟练来学习 1.记录之前先复习以下linux下常用目录 ./ 表示当前目录 ~/ 表示h ...
- python笔记2-数据类型:元组、字典常用操作
元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. tp=(1,2,3,'a','b' ...
- SQLite 连接两个字符串
SQLite中,连接字符串不是使用+,而是使用|| 示例: SELECT 'I''M '||'Chinese.' 将输出 I'M Chinese. 特别说明:1. SELECT 'I''M '+'Ch ...
- bootstrap随笔点击增加
ht5: <div class="form-group"><label class="col-sm-2 control-label&qu ...
- Java入门 第一季第六章 数组
这是我学习慕课网Java课程的笔记,原视频链接为:http://www.imooc.com/learn/85 6-1什么是数组 数组中的元素都能够通过下标来訪问.下标从 0 開始.比如,能够通过 sc ...
- Django admin 注册多个app
class game(models.Model): content = models.TextField() def __str__(self): return 'To game %s' % self ...
- Django 后台 无法显示文章标题
我们会发现所有的文章都是叫 **object,这样肯定不好,比如我们要修改,如何知道要修改哪个呢? 我们修改一下 blog 中的models.py # coding:utf-8 from django ...