买足球滚单的网站:php使用Imagick来导出psd图层图片

浏览:371 发布日期:2018/10/10 分类:用法示例 关键字: phppsd php导psd php操作psd php修改psd
<足球外围网 id="eb7db7ce4f5ecb846"> <足球外围网 id="ea0cb5324242b850e"> 当你用php来做素材网站时,可能遇到psd素材,用户上传发布或者自已发布psd的时候,

每次要手动去导出psd效果图是不是很麻烦的一件事情

然而php也能做到操作psd的强大功能

这里我们用到Imagick扩展来操作psd吧
安装ImageMagick (CentOS为例)

1、安装ImageMagick
# wget http://www.infinityeverywhere.net/zqwwwz/web/imagemagick/ImageMagick-6.7.1-2.tar.gz
# tar zxvf ImageMagick-6.7.1-2.tar.gz
# cd ImageMagick-6.7.1-2/
# ./configure --prefix=/usr/local/imagemagick --disable-openmp
# make && make install


2、测试ImageMagick是否可以正常运行

# /usr/local/imagemagick/bin/convert -version
Version: ImageMagick 6.7.1-2 2016-06-29 Q16 http://www.infinityeverywhere.net/zqwwwz
Copyright: Copyright (C) 1999-2011 ImageMagick Studio LLC
Features:
安装Imagick扩展
1、安装PHP扩展:imagick

# wget http://www.infinityeverywhere.net/zqwwwz/get/imagick-3.0.1.tgz
# tar zxvf imagick-3.0.1.tgz
# cd imagick-3.0.1/
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
# make && make install

2、php加载imagick扩展

# vi /etc/php.ini
extension_dir = "/usr/lib64/php/modules"
extension="imagick.so"
# :wq! #保存退出


3、重启lnmp后查看phpinfo 是否安装成功



上代码啦
<?php
 
//导出psd为png
 
$im = new  \Imagick ("php127.psd");
//$im->setImageIndex(0); //php7已废弃
$im->setIteratorIndex(0);
$im->stripImage(); //去除图片信息
$im->setImageCompressionQuality(70); //图片质量
$im->writeImage('php127.jpg'); //保存图片
 
//导出psd内的图层
 
$num_layers = $im->getNumberImages(); //获取图层数目
 
for ($i = 0, $num_layers = $im->getNumberImages(); $i < $num_layers; ++$i) {
    $im->setImageIndex($i);         //this
    $im->setIteratorIndex($i);      //or this is kinda redundant
    $pagedata=$im->getImagePage();
    //print("x,y: " + $pagedata["x"].", ".$pagedata["y"]."<br/>\n");
    //print("w,h: " + $pagedata["width"].", ".$pagedata["height"]."<br/>\n");
    foreach($im->getImageProperties("*") as $k => $v) print("$k: $v<br/>\n"); 
    //export layer
    //$im->writeImage('layer_' . $i . '.png'); //导出所有图层到单独的png文件
}

?>

 
原文连接 http://www.infinityeverywhere.net/zqwwwz/content/82
<足球外围网 id="ad196de4c105c1d8be">
<足球外围网 id="ad6b7d22ed07ed248d">
评论( 相关
后面还有条评论,点击查看>>
<足球外围网 id="e997c2acdc76d56ad">