検索

ホームページ  >  に質問  >  本文

ウォーターマークを追加できず、画像を出力できないのはなぜですか? 小さなボックスしかありません。前の画像をズームしたりトリミングしたりしても同じことが当てはまります。

ああ、


城南花已开城南花已开2218日前1812

全員に返信(1)返信します

  • 啊啊啊啊啊啊啊啊啊欧

    啊啊啊啊啊啊啊啊啊欧2019-02-12 17:17:23

    画像のサフィックス名を直接変更すると、PSを通じてサフィックス名を変更できます。

    <?php
    // 图片宽度、高さ和型

    // $img='time.jpg';

    // print_r(getImageInfo($img));

    // echo '<br />';

    function getImageInfo($img){

    $info= getimagesize($img);

    $imageinfo=pathinfo($img);

    $getImageInfo=array(

    'width' => ;$info[0],

    '高さ'=>$info[1],

    'タイプ'=>$imageinfo['拡張子'],

    );

    return $getImageInfo;

    }

    water('photo.jpeg','watermark.png');

    function Water($img,$water,$pos=9,$tm=100){

    $info=getImageInfo($img);

    $logo=getImageInfo($water);

    $dst=openImg($img,$info['type']);

    $src=openImg($water,$logo['type']);

    switch($pos){

    case 1:

    $x=0;

    $y=0;

    Break;

    case 2:

    $x=ceil(($info['width'] -$logo['width'])/2);

    $y=0;

    Break;

    case 3:

    $x=$info['width']-$logo['width'];

    $y=0;

    Break;

    case 4:

    $x=0;

    $y=ceil(($info['height']-$logo['高さ'])/2) ;

    ブレーク;

    case 5:

    $x=ceil(($info['width']-$logo['width'])/2);

    $y=ceil(($info[' height']-$logo['height'])/2);

    Break;

    case 6:

    $x=$info['width']-$logo['width'];

    $y =ceil(($info['height']-$logo['height'])/2);

    Break;

    case 7:

    $x=0;

    $y=$info['height ']-$logo['height'];

    Break;

    case 8:

    $x=ceil(($info['width']-$logo['width'])/2);

    $y=$info['高さ']-$logo['高さ'];

              Break;

    case 9:

    $x=$info['width']-$logo['width'];

    $y=$info['height']-$logo['height'];

    Break;

    case 0:

    default:

    $x=mt_rand(0,$info['width']-$logo['width']);

    $y=mt_ran d(0,$y= $info['height']-$logo['height']);

    Break;

    }

    imagecopymerge($dst,$src,$x,$y,0,0,$logo['width' ],$logo['height'],$tm);

    header ('Content-Type:image/jpeg');

    imagejpeg($dst);

    imagedestory($dst);

    imagedestory($ src);

    }

    function openImg($path,$type){

    switch($type){

    case 'jpeg':

    case 'jpg':

    case 'pjpeg':

    $ img=imagecreatefromjpeg($path);

    Break;

    case 'png':

    case 'x-png':

    $img=imagecreatefrompng( $path);

    Break;

    case 'gif':

    $img=imagecreatefromgif($path);

    Break;

    case 'wbmp':

    $img=imagecreatefromwbmp($path );

    ブレーク;

    デフォルト:

    exit('图片类型不サポート');

    }

    return $img;

    }

    ?>

    追加の手続き上のメソッド(カスタム可能)、getImageInfo関数とは異なります。

    <?php
    header("content-type:text/html;charset=utf-8");  
    water('photo.jpeg','watermark.jpeg');
    function getImageInfo($path) {
    $info = getimagesize($path);
    $data['width'] = $info[0];
    $data['height'] = $info[1];
    $data['type'] = $info['mime'];
    return $data;
    }
    function openImg($path,$type){
    switch($type){
    case 'image/jpeg':
    case 'image/jpg':
    case 'image/pjpeg':
    $img=imagecreatefromjpeg($path);
    Break;
    case 'image/png' :
    case 'image/x-png':
    $img=imagecreatefrompng($path);
    Break;
    case 'image/gif':
    $img =imagecreatefromgif($path);
    Break;
    case 'image/ wbmp':
    $img=imagecreatefromwbmp($path);
    Break;
    default:
    exit('图片类型不サポート');
    }
    return $img;
    }

    //$water = 'watermark.jpeg ';
    関数水($img,$water,$pos=9,$tm=100){
    $info=getImageInfo($img);
    $logo=getImageInfo($water);
    $dst=openImg($ img,$info['type']);
    $src=openImg($water,$logo['type']);
    switch($pos){
    case 1:
    $x=0;
    $y= 0;
    ブレーク;
    ケース 2:
    $x=ceil(($info['width']-$logo['width'])/2);
    $y=0;
    ブレーク;
    ケース3 :
    $x=$info['width']-$logo['width'];
    $y=0;
    Break;
    case 4:
    $x=0;
    $y=ceil(($info['height ']-$logo['height'])/2);
    Break;
    case 5:
              $x=ceil(($info['width']-$logo['width'])/2);
    $y=ceil(($info['height']-$logo['height'])/ 2);
    Break;
    case 6:
    $x=$info['width']-$logo['width'];
    $y=ceil(($info['height']-$logo['height '])/2);
    ブレーク;
    case 7:
    $x=0;
    $y=$info['height']-$logo['height'];
    ブレーク;
    case 8:
    $x =ceil(($info['width']-$logo['width'])/2);
    $y=$info['height']-$logo['height'];
    Break;
    case 9 :
    $x=$info['width']-$logo['width'];
    $y=$info['height']-$logo['height'];
    ブレーク;
    case 0:
    デフォルト:
    $x=mt_rand(0,$info['width']-$logo['width']);
    $y=mt_rand(0,$y=$info['height']-$logo['height' ']);
    Break;
    }
    imagecopymerge($dst,$src,$x,$y,0,0,$logo['width'],$logo['height'],$tm);
    header ('Content-Type:image/jpeg');
    imagejpeg($dst);
    imagedestory($dst);
    imagedestory($src);
    }
    ?>



    返事
    0
  • キャンセル返事