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中的integer类型使用分析

integer 可以已10进制,8进制,16进制表示。 用八进制表示的时候,数字需要已0(零)开头; 用十六进制表示的时候,数字需要已0x(零x)或者0X(零大写X)开头; intege...

PHP SPL标准库中的常用函数介绍

PHP SPL标准库中提供了一些函数用来处理如自动加载、迭代器处理等。 spl_autoload_extensions()添加spl_autoload()可加载的文件扩展名 spl_au...

php对象工厂类完整示例

本文实例讲述了php对象工厂类。分享给大家供大家参考,具体如下: <?php /** * 对象工厂 * @author flynetcn */ class Obj...

详解php协程知识点

多任务 (并行和并发) 在讲协程之前,先谈谈多进程、多线程、并行和并发。 对于单核处理器,多进程实现多任务的原理是让操作系统给一个任务每次分配一定的 CPU 时间片,然后中断、让下一个...

phpinfo的知识点总结

phpinfo是一个运行指令,为显示php服务器的配置信息。 phpinfo-输出大量PHP信息 bool phpinfo() 输出 PHP 当前状态的大量信息,包含了 PHP 编...