PHP中使用Imagick操作PSD文件实例_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文件
}

时间: 2024-09-28 22:28:31

PHP中使用Imagick操作PSD文件实例_php技巧的相关文章

PHP中使用imagick生成PSD文件缩略图教程_php技巧

第一步.安装ImageMagick 首先需要安装 ImageMagick http://imagemagick.org/script/binary-releases.php,因为 imagick 是一个可以供 PHP 调用 ImageMagick 功能的PHP扩展.(目前最新版本是:ImageMagick-6.8.9-5-Q16-x64-dll.exe) 安装目录不能有空格,我个人是安装在 C 盘根目录: 复制代码 代码如下: C:\ImageMagick 一路默认安装即可,安装完毕后打开 CM

PHP编程中的常见漏洞和代码实例_php技巧

不是固若金汤,随着PHP的广泛运用,一些黑客们也在无时不想找PHP的麻烦,通过PHP程序漏洞进行攻击就是其中一种.在节,我们将从全局变量,远程文件,文件上载,库文件,Session文件,数据类型和容易出错的函数这几个方面分析了PHP的安全性. 如何通过全局变量进行攻击? PHP中的变量不需要事先声明,它们会在第一次使用时自动创建,它们的类型根据上下文环境自动确定.从程序员的角度来看,这无疑是一种极其方便的处理方法.一旦一个变量被创建了,就可以在程序中的任何地方使用.这个特点导致的结果就是程序员很

php文件操作相关类实例_php技巧

本文实例讲述了php文件操作相关类.分享给大家供大家参考.具体如下: <?php class file_dir { function check_exist($filename) //检查目录或文件是否存在 { if(file_exists($filename)) { return true; } else return false; } function create_dir($dirname,$mode=0777) // 一次只能创建一级目录 { if(is_null($dirname) |

php操作MongoDB类实例_php技巧

本文实例讲述了php操作MongoDB类的方法.分享给大家供大家参考.具体如下: 1. MyMongo.php文件: <?php /** * 仿写CI的MongoDB * @author sparkHuang 2011-11-03 * */ class MyMongo { private $mongo_config = "mongo_config.php"; private $connection; private $db; private $mongo_connect_stri

PHP与MYSQL中UTF8编码的中文排序实例_php技巧

本文实例讲述了PHP与MYSQL中UTF8编码的中文排序方法,分享给大家供大家参考.具体实现方法如下: 一般来说,中文共有三种排序方式: 1.根据拼音排序: 2.根据笔画排序: 3.根据偏旁排序. 系统的默认排序方式为拼音排序了,这个也是我们常用的,下面介绍的就是按拼音排序了 1. 需要在php数组中用中文排序,但是一般使用utf8格式的文件,直接用asort排序不行.用gbk和gb2312可以.这跟几种格式的编码有关系.gbk和gb2312本身的编码就是用拼音排序的. 复制代码 代码如下: f

php使用PDO操作MySQL数据库实例_php技巧

本文实例讲述了php使用PDO操作MySQL数据库的方法.分享给大家供大家参考.具体分析如下: PDO是mysql数据库操作的一个公用类,我们不需要进行自定类就可以直接使用pdo来操作数据库,但是在php默认配置中pdo是未开启所以我们必须先在php.ini中开启它才可以使用,这里来详细介绍一下. PDO扩展为PHP访问数据库定义了一个轻量级的,一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据. PDO支持的PHP版本为PHP5.1以及更

php中convert_uuencode()与convert_uuencode函数用法实例_php技巧

本文实例讲述了php中convert_uuencode()与convert_uuencode函数用法.分享给大家供大家参考.具体分析如下: onvert_uudecode() 函数对 uuencode 编码的字符串进行解码. 语法:convert_uudecode(string),代码如下: 复制代码 代码如下: $str=",2&5l;&/@=v]r;&0a `";         //定义uuencode编码字符串 $result=convert_uudec

php中getservbyport与getservbyname函数用法实例_php技巧

本文实例讲述了php中getservbyport与getservbyname函数用法.分享给大家供大家参考.具体如下: 复制代码 代码如下: string getservbyport ( int $port , string $protocol )   */ $services=array('80','21','22','23','25','143');      //定义数组 foreach($services as $service)         //循环读取内容 {   $protoc

PHP连接操作access数据库实例_php技巧

因为之前做的PingSwitch要做一个WEB展示的前端,因为一开始用了Delphi和access的结构,而Delphi与MySQL的连接又相对麻烦,最后只能选择用PHP+Access的组合,比较奇怪,但是也合理····· 在PHP中连接access数据库的话我们必须ADO来连接,这跟ASP中连接数据库非常的类似.下边给出了一段DEMO供大家参考. <?PHP /* 创建ADO连接 */ $conn = @new COM("ADODB.Connection") or die (&