技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> PHP --> 利用php创建水中倒影的图片效果

利用php创建水中倒影的图片效果

浏览:2433次  出处信息

    在前面给大家介绍了imagick在ubuntu下的基本安装,及简单的处理图片,今天尝试使用imgaick来创建水中倒影的效果.

    reflectionphp

以下是代码片段:
< ?php
/**
 * reflection 
 * 
*/
 
function reflection($image){
    /* 读取原图片 */
    $im = new Imagick($image);
 
    /* 创建缩图 */
    $im->thumbnailImage( 200, null );
 
    /*加边框 */
    $im->borderImage( "white", 5, 5 );
 
    /* 克隆并创建镜像图片 */
    $reflection = $im->clone();
    $reflection->flipImage();
 
    /* 创建一个滤镜效果,合成 */
    $gradient = new Imagick();
 
    $gradient->newPseudoImage( $reflection->getImageWidth() + 10,
                               $reflection->getImageHeight() + 10,
                               "gradient:transparent-black"
                            );
 
    /*合成 */
    $reflection->compositeImage( $gradient, imagick::COMPOSITE_OVER, 0, 0 );
 
    /* 设置透明度*/
    $reflection->setImageOpacity( 0.3 );
 
    /* 创建一个空白背景图层,足够大 */
    $canvas = new Imagick();
    $width = $im->getImageWidth() + 40;
    $height = ( $im->getImageHeight() * 2 ) + 30;
    $canvas->newImage( $width, $height, "black", "png" );
 
    /* 合成最终效果图*/
    $canvas->compositeImage( $im, imagick::COMPOSITE_OVER, 20, 10 );
    $canvas->compositeImage( $reflection, imagick::COMPOSITE_OVER,
                            20, $im->getImageHeight() + 10 );
 
    /* 输出图片*/
    header( "Content-Type: image/png" );
    echo $canvas;
}
reflection(’me.jpg’);
?>

建议继续学习:

  1. 图片动态局部毛玻璃模糊效果的实现    (阅读:13577)
  2. 淘宝图片存储架构    (阅读:9810)
  3. 解决IE6从Nginx服务器下载图片不Cache的Bug    (阅读:7079)
  4. When we`re only No.2, we try harder之聊天表情设计小探讨    (阅读:6500)
  5. 精于图片处理的10款jQuery插件    (阅读:6204)
  6. phpThumb:强大的缩微图类    (阅读:5454)
  7. js实现预加载图片让图片快速显示    (阅读:4933)
  8. 利用开源的Gearman框架构建分布式图片处理平台[原创]    (阅读:4247)
  9. 使用数据库存放图片    (阅读:4178)
  10. 通过php+imagick 创建PDF图片预览    (阅读:3774)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1