Php 裁剪左右两侧的图像

Php 裁剪左右两侧的图像,php,image,gd,Php,Image,Gd,我有一张尺寸为1440 X 500的图像 我需要在左侧的200px和右侧的200px处裁剪此图像。也就是说,新图像的尺寸必须为1040 X 500 我正在尝试这个 $original_w = 1440; $original_h = 500; $new_w = 1040; $new_h = 500; $new_img = imagecreatetruecolor( $new_w, $new_h); imagecopyresampled($new_img, $original_img, 200,

我有一张尺寸为1440 X 500的图像

我需要在左侧的
200px
和右侧的
200px
处裁剪此图像。也就是说,新图像的尺寸必须为
1040 X 500

我正在尝试这个

$original_w = 1440;
$original_h = 500;

$new_w = 1040;
$new_h = 500;

$new_img = imagecreatetruecolor( $new_w, $new_h);
imagecopyresampled($new_img, $original_img, 200, 0, 200, 0, $new_w, $new_h, $original_w, $original_h);

我没有得到理想的结果,请帮助,我做错了什么?

您想要的可能是:

imagecopyresampled($new\u img,$original\u img,-200,0,0,0,$new\u w,$new\u h,$original\u w,$original\u h)

这告诉PHP:

将从坐标(0,0)开始的1440x500图像复制到从(-200,0)开始的1040x500画布

这样,您将原始图像从画布左移200像素,并将画布宽度缩小400px(以便右200px也被切断)


我相信你应该知道你在寻找什么。

你想要的可能是:

imagecopyresampled($new\u img,$original\u img,-200,0,0,0,$new\u w,$new\u h,$original\u w,$original\u h)

这告诉PHP:

将从坐标(0,0)开始的1440x500图像复制到从(-200,0)开始的1040x500画布

这样,您将原始图像从画布左移200像素,并将画布宽度缩小400px(以便右200px也被切断)

我相信你应该知道你在寻找什么。

阅读时,你使用的是
imagecopyresampled
错误:

imagecopyresampled ( 
   resource $dst_image , 
   resource $src_image , 
   int $dst_x , 
   int $dst_y , 
   int $src_x , 
   int $src_y , 
   int $dst_w , 
   int $dst_h , 
   int $src_w , 
   int $src_h 
)
因此:

将1040*500框从(200,0)坐标复制到(0,0)坐标处的新图像。

读取时,使用的是
imagecopyresampled
错误:

imagecopyresampled ( 
   resource $dst_image , 
   resource $src_image , 
   int $dst_x , 
   int $dst_y , 
   int $src_x , 
   int $src_y , 
   int $dst_w , 
   int $dst_h , 
   int $src_w , 
   int $src_h 
)
因此:


将1040*500框从(200,0)坐标复制到(0,0)坐标处的新图像。

整数坐标。。前两个不是目的地?。在本例中为0,0,因为您希望从左上角看到新图像。您是否有任何错误或图像不符合您的要求?整数坐标。。前两个不是目的地?。在本例中为0,0,因为您希望从左上角看到新图像。您是否有任何错误或图像不符合您的要求?