zoukankan      html  css  js  c++  java
  • php-图片加水印和文字

    //************************** 图片加文字 ************************

    $dst_path = '11.jpg';
    //创建图片的实例
    $dst = imagecreatefromstring(file_get_contents($dst_path));
    //打上文字
    echo 13;
    //$font = './simsun.ttc';//字体
    $black = imagecolorallocate($dst, 0x00, 0x00, 0x00);//字体颜色
    echo 12;

    $font_file = './arial.ttf';

    // Draw the text 'PHP Manual' using font size 13
    imagefttext($dst, 13, 0, 105, 55, $black, $font_file, 'PHP Manual');


    //var_dump(imagefttext($dst, 13, 0, 20, 20, $black,'12313'));

    echo 111;die;
    //输出图片
    list($dst_w, $dst_h, $dst_type) = getimagesize($dst_path);
    var_dump($dst_type);die;
    switch ($dst_type) {
    case 1://GIF
    header('Content-Type: image/gif');
    imagegif($dst);
    break;
    case 2://JPG
    header('Content-Type: image/jpeg');
    imagejpeg($dst);
    break;
    case 3://PNG
    header('Content-Type: image/png');
    imagepng($dst);
    break;
    default:
    break;
    }

    imagedestroy($dst);

    //************************** 图片加水印 ************************

    //生成图片水印
    echo 12;die;
    //die;
    $dst_path = '11.jpg';
    $src_path = '11.png';
    //创建图片的实例
    $dst = imagecreatefromstring(file_get_contents($dst_path));
    $src = imagecreatefromstring(file_get_contents($src_path));
    //获取水印图片的宽高
    list($src_w, $src_h) = getimagesize($src_path);
    //将水印图片复制到目标图片上,最后个参数80是设置透明度,这里实现半透明效果
    imagecopymerge($dst, $src, 10, 10, 0, 0, $src_w, $src_h, 80);
    //如果水印图片本身带透明色,则使用imagecopy方法
    //imagecopy($dst, $src, 10, 10, 0, 0, $src_w, $src_h);
    //输出图片
    list($dst_w, $dst_h, $dst_type) = getimagesize($dst_path);
    switch ($dst_type) {
    case 1://GIF
    header('Content-Type: image/gif');
    imagegif($dst);
    break;
    case 2://JPG
    header('Content-Type: image/jpeg');
    imagejpeg($dst);
    break;
    case 3://PNG
    header('Content-Type: image/png');
    imagepng($dst);
    break;
    default:
    break;
    }
    imagedestroy($dst);
    imagedestroy($src);

  • 相关阅读:
    spring scope prototype与singleton区别
    JAVA中的内存们
    汉诺塔问题
    关于设置tomcat端口为80的事
    struts2表单提单细节处理
    volatile的作用
    Java并发编程:Thread类的使用
    git的几个小技巧
    UEdit插件使用
    MySQL优化必须调整的10项配置
  • 原文地址:https://www.cnblogs.com/nyfz/p/10410815.html
Copyright © 2011-2022 走看看