问题:根据JS对原图片选取的座标,使用GD从原图取得选取部分并保证生成的图片宽等于200px,当用户选取的宽小于200px时,两边用空白填充。这里只写PHP实现的部分不用考虑JS部分的实现。请问各位大虾有没有实现的代码发给我 老板让我帮他找答案 我找不到又急着要。。谢谢大家。

解决方案 »

  1.   

    我的旧代码,似乎是将图片转成高或者宽不超过200的。
    要白色填充,你可以将数据放到白色底板上:)<?php
    $filename=realpath($_REQUEST["add"]);
    //echo $filename;
    $im  = imagecreatefromjpeg($filename); $src_w =imagesx($im);
     $src_h =imagesy($im);$newh=0;
    $neww=0;
    if($src_w>=$src_h)
    {
       $newh=200;
       $neww=$src_w/$src_h*$newh;
    }
    else
    {
       $neww=200;
       $newh=$src_h/$src_w*neww;
    }
    //echo $neww.$newh;  $dst_im1 =imagecreatetruecolor($neww,$newh);
     imagecopyresized ( $dst_im1, $im, 0, 0,  0,0, $neww,$newh, $src_w,  $src_h );$file=pathinfo($filename);
    imagejpeg($dst_im1,"new".$file["filename"].".".$file["extension"]);imagedestroy($im);
    imagedestroy($dst_im1);header("Location:http://localhost/cut/dir.php?add=./photo");
    ?>