Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php ImageCopy重采样问题&x2013;右下黑色边框…;_Php_Image - Fatal编程技术网

Php ImageCopy重采样问题&x2013;右下黑色边框…;

Php ImageCopy重采样问题&x2013;右下黑色边框…;,php,image,Php,Image,第一种选择有效,第二种不行…我不明白为什么?我拍摄一幅1500×1500像素的图像,如果它通过第一个选项,结果是正确的,如果它通过第二个选项,我会在右边和底部得到一个黑色边框 if ($this_imagesize[0] > 1000) { $thumb_source = imagecreatefromjpeg('/path/' . $this_image_id . '.jpg'); $thumbnail = imagecreatetruecolo

第一种选择有效,第二种不行…我不明白为什么?我拍摄一幅1500×1500像素的图像,如果它通过第一个选项,结果是正确的,如果它通过第二个选项,我会在右边和底部得到一个黑色边框

if ($this_imagesize[0] > 1000)
    {
        $thumb_source = imagecreatefromjpeg('/path/' . $this_image_id . '.jpg');

        $thumbnail = imagecreatetruecolor(1000, intval(1000 * ($this_imagesize[1] / $this_imagesize[0])));

        imagefill($thumbnail, 0, 0, imagecolorallocate($tn, 255, 255, 255));

        imagecopyresampled($thumbnail, $thumb_source, 0, 0, 0, 0, 1000, intval(1000 * ($this_imagesize[1] / $this_imagesize[0])), $this_imagesize[0], $this_imagesize[1]);

        unlink('/path/' . $this_image_id . '.jpg');

        imagejpeg($thumbnail, '/path/' . $this_image_id . '.jpg', 75);
    }

if ($this_imagesize[1] > 1000)
    {
        $thumb_source = imagecreatefromjpeg('/path/' . $this_image_id . '.jpg');

        $thumbnail = imagecreatetruecolor(intval(1000 * ($this_imagesize[0] / $this_imagesize[1])), 1000);

        imagecopyresampled($thumbnail, $thumb_source, 0, 0, 0, 0, intval(1000 * ($this_imagesize[0] / $this_imagesize[1])), 1000, $this_imagesize[0], $this_imagesize[1]);

        unlink('/path/' . $this_image_id . '.jpg');

        imagejpeg($thumbnail, '/path/' . $this_image_id . '.jpg', 75);
    }

当它不工作时,您收到了哪些错误消息?这是什么语言?没有错误消息第二个if语句只生成一个黑色边框的图像…它是PHP…发生这种情况是因为您创建的背景层比上面的大,所以背景(在photoshop之类的程序中是透明的)是黑色的。您可能没有正确计算尺寸。