recherche

Maison  >  Questions et réponses  >  le corps du texte

Pourquoi ne puis-je pas ajouter de filigrane et l'image ne peut pas être sortie ? Il n'y a qu'une petite boîte. La même chose est vraie pour la mise à l'échelle et le recadrage de l'image précédente ?

<?php
// 获取图片宽度、高度和类型
$img='abc.jpeg';
print_r(getImageInfo($img));
echo '<br/>';
function getImageInfo($img){
  $info= getimagesize($img);
  $imageinfo=pathinfo($img);
  $getImageInfo=array(
    'width' =>$info[0],
    'height'=>$info[1],
     'type'=>$imageinfo['extension'],
    );
    return $getImageInfo;
}
water('abc.jpeg','du.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['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);
           break;
       case 7:
           $x=0;
           $y=$info['height']-$logo['height'];
           break;
       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'];
           break;
       case 0:
       default:
           $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);
}
   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);
               break;
           default:
               exit('图片类型不支持');
       }
       return $img;
   }
?>


城南花已开城南花已开2175 Il y a quelques jours1786

répondre à tous(1)je répondrai

  • 啊啊啊啊啊啊啊啊啊欧

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

    Si le nom du suffixe de l'image est directement modifié, cela se produira. Vous pouvez modifier le nom du suffixe via PS. J'espère que la réponse sera utile.

    <?php
    // 获取图片宽度、高度和类型

    // $img='time.jpg';

    // print_r(getImageInfo($img));

    // echo '<br />';

    fonction getImageInfo($img){

     $info= getimagesize($img);

     $imageinfo=pathinfo($img);

     $getImageInfo=array(

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

       'height'=>$info[1],

        'type'=>$imageinfo['extension'],

       );

       return $getImageInfo;

    }

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

    fonction 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){

          cas 1 :

              $x=0;

              $y=0;

              pause;

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

              $y=0;

              break;

          cas 3 :

              $x=$info['width']-$logo['width']; " 'hauteur'])/2) ;

              pause;

          cas 5 :

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

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

              break;

          cas 6 :

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

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

              break;

          cas 7 :

              $x=0;

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

              break;

          case 8:

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

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

              pause;

          cas 9 :

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

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

              pause;

          case 0:

          par défaut :

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

              $y=mt _rand(0,$y= $info['hauteur']-$logo['hauteur']);

              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':

             'pjpeg':

                  $ img=imagecreatefromjpeg($path);

                  break;

              case 'png':

              case 'x-png':

                  $img=imagecreatefrompng ($path);

                  pause;

              cas 'gif' :

                  $img=imagecreatefromgif($path);

                  break;

              case 'wbmp':

                  $img=imagecreatefromwbmp($path);

                  break;

              par défaut :

                  exit('图片类型不支持');

          }

          return $img;

      }

    ?> Vous pouvez également utiliser 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);
                 pause;
             cas 'image/png' :
              case 'image/x-png':
                  $img=imagecreatefrompng($path);
                  break;
              case 'image/gif':
                  $img=image createfromgif ($path);
                  break;
              case 'image/ wbmp':
                  $img=imagecreatefromwbmp($path);
                  break;
              default:
                  exit('图片类型不支持');
        }
          return $img;
      }

    //$water = 'watermark.jpeg ';
    fonction eau($img,$water,$pos=9,$tm=100){
      $info=getImageInfo($img);
      $logo=getImageInfo($water);
      $dst=openImg($ img,$info['type']);
      $src=openImg($water,$logo['type']);
      switch($pos){
          cas 1 :
              $x=0;
              $y= 0;
              break;
          cas 2 :
              $x=ceil(($info['width']-$logo['width'])/2);
              $y=0;
              break;
        cas 3 :
    $x=$info['width']-$logo['width'];
              $y=0;
              break;
          cas 4 :
              $x=0;
              $y=ceil(($info['height ']-$logo['height'])/2);
              break;
          cas 5 :
              $x=ceil(($info['width']-$logo['width'])/2);
              $y=ceil(($info['height']-$logo['height'])/ 2);
              pause;
          cas 6 :
              $x=$info['width']-$logo['width'];
              $y=ceil(($info['height']-$logo['height '])/2);
              pause;
          cas 7:
              $x=0;
              $y=$info['height']-$logo['height'];
              pause;
          cas 8 :
              x $ =ceil(($info['width']-$logo['width'])/2);
              $y=$info['height']-$logo['height'];
              break;
          cas 9 :
              $x=$info['width']-$logo['width'];
              $y=$info['height']-$logo['height'];
              break;
          case 0:
          par défaut :
              $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");

    répondre
    0
  • Annulerrépondre