PHP中使用Imagick操作PSD文件实例

yipeiwu_com6年前PHP代码库

参考资料:
http://www.php.net/manual/zh/book.imagick.php

前提

复制代码 代码如下:

$im = new Imagick("test.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文件
}

相关文章

PHP中使用php://input处理相同name值的表单数据

在去年10月份,我在博客中分析了php接收前台name值相同的表单提交数据的处理的问题,当时说的方案是为把name值改成数组类型,php接收到之后,再对数组进行合并处理。这样做的缺点就是...

无JS,完全php面向过程数据分页实现代码

复制代码 代码如下: <?php //登陆页面设置的session,当session中存在name时 //session_start(); //$name = $_SESSION[...

PHP查找数值数组中不重复最大和最小的10个数的方法

本文实例讲述了PHP查找数值数组中不重复最大和最小的10个数的方法。分享给大家供大家参考。具体如下: 1. php代码如下: //随机生成1万个元素的数组 for($i=0;$i&l...

PHP基于单例模式编写PDO类的方法

一、单例模式简介 简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务; 二、为什么要使用PHP单例模式?    &n...

php中namespace use用法实例分析

本文实例讲述了php中namespace use用法。分享给大家供大家参考,具体如下: 现在说这个感觉有点过时了,但是感觉用namespace的人还是不多,估计还是因为不习惯吧。 cla...