PSpriter之ImageComposite--图片合并 进入全屏
续前篇,PSpriter中的第二个独立功能:图片合并。
简介:
/**
* 图片合并,依赖RectanglePacking算法
* 矩形布局算法,支持三种模式布局
* 1、verticla:垂直方向合并
* 2、horizontal:水平方向合并
* 3、mixed:混合布局
*
* @example
* // 导入类库
* include_once('ImageComposite.class.php');
* // 需要进行布局的矩阵列
* $imagefiles = array(
* 'png' => array(
* '/home/zhaoxianlie/images/1.png',
* '/home/zhaoxianlie/images/2.png',
* ),
* 'gif' => array(
* '/home/zhaoxianlie/images/1.gif',
* '/home/zhaoxianlie/images/2.gif',
* ),
* );
* // 布局所需配置
* $options = array(
* 'margin' => 5,
* 'packing' => 'mixed',
* 'output' => '/home/zhaoxianlie/sprite_output'
* );
* // 创建图片合并的实例
* $composite_instance = new ImageComposite();
* // 图片合并
* $result = $composite_instance->run($imagefiles,$options);
*
* // 要看返回结果的格式,请查看run方法的注释
*
* @author zhaoxianlie
*/
* 图片合并,依赖RectanglePacking算法
* 矩形布局算法,支持三种模式布局
* 1、verticla:垂直方向合并
* 2、horizontal:水平方向合并
* 3、mixed:混合布局
*
* @example
* // 导入类库
* include_once('ImageComposite.class.php');
* // 需要进行布局的矩阵列
* $imagefiles = array(
* 'png' => array(
* '/home/zhaoxianlie/images/1.png',
* '/home/zhaoxianlie/images/2.png',
* ),
* 'gif' => array(
* '/home/zhaoxianlie/images/1.gif',
* '/home/zhaoxianlie/images/2.gif',
* ),
* );
* // 布局所需配置
* $options = array(
* 'margin' => 5,
* 'packing' => 'mixed',
* 'output' => '/home/zhaoxianlie/sprite_output'
* );
* // 创建图片合并的实例
* $composite_instance = new ImageComposite();
* // 图片合并
* $result = $composite_instance->run($imagefiles,$options);
*
* // 要看返回结果的格式,请查看run方法的注释
*
* @author zhaoxianlie
*/
返回结果:
/**
* @return 返回合并后的图片,以及原始图片在合并后的图片中的坐标
* $result = array(
* 'png' => array(
* 'output' => '合并后的大图完整路径',
* 'images' => array(
* array(
* 'filepath' => '原始图片绝对路径',
* 'width' => '原始图片宽度',
* 'height' => '原始图片高度',
* 'x' => '在合并后大图中的x坐标',
* 'y' => '在合并后大图中的y坐标'
* ),
* ...
* ),
* ),
* ...
* );
*/
* @return 返回合并后的图片,以及原始图片在合并后的图片中的坐标
* $result = array(
* 'png' => array(
* 'output' => '合并后的大图完整路径',
* 'images' => array(
* array(
* 'filepath' => '原始图片绝对路径',
* 'width' => '原始图片宽度',
* 'height' => '原始图片高度',
* 'x' => '在合并后大图中的x坐标',
* 'y' => '在合并后大图中的y坐标'
* ),
* ...
* ),
* ),
* ...
* );
*/
例:
1、水平方向的合并
2、混合模式合并
and so on...