0

我正在制作一个有趣的网站,但我似乎无法弄清楚为什么这段代码不起作用:

// error control
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
// loading in the image.
$img = imagecreatefromjpeg(".\image\ons\Ons-foto\mayor.jpg");

if($img != null){
    $width = imagesx($img);
    $heigth = imagesy($img);
    $calw = 134*7;
    $calh = 122*7;
    $newimg = null;
    if($width != null && $heigth != null){

        // a check to see if the image is the right size

        if($width > $calw || $width < $calh || $heigth < $calh || $heigth > $calh)
        {
        // here i save the resized image into the variable $newimg

        imagecopyresized($newimg, $img, 0,0,0,0, $calw, $calh, $width, $heigth);
        } else {
        $newimg = $img;
        }
        $tempimg = null;
        // a nested loop to automatically cut the image into pieces

        for($w = 0; $w < $calw; $w+134){
            for($h = 0; $h < $calh; $h+122){
                // taking a piece of the image and save it into $tempimg

                imagecopy($tempimg, $newimg, 0, 0, $w, $h, 134, 122);

                // showing the image on screen
                echo '<div class="blokken" style="margin: 1px;">';
                imagejpeg($tempimg);             
                echo '</div>';
            }
        }
    }
}

我想做的是:

  1. 加载图像并将其调整为正确的大小。
  2. 把它切成小块
  3. 一块一块地展示它,它们之间有一点空间(我在 .css 文件中这样做,因此是 div 标签)

这些是我得到的错误:

Warning: imagecopyresized(): supplied argument is not a valid Image resource in root\ons.php on line 52

Warning: imagecopy(): supplied argument is not a valid Image resource in root\ons.php on line 63

Warning: imagejpeg(): supplied argument is not a valid Image resource in root\ons.php on line 67

Warning: imagecopy(): supplied argument is not a valid Image resource in root\ons.php on line 63

我认为这些函数可能需要图像的路径,因此我还尝试制作调整大小的图像以及被剪切以保存在此地图中的图像 .\image\ons\Ons-foto\ 但这并没有工作。它没有保存图像,也没有将它们加载回以在屏幕上显示它们。

它也可能是 imagecreatefromjpeg() 没有输出我认为它输出和保存的内容,$imgfopen()也没有工作并且给出了同样的错误,所以我无法弄清楚

有人可以看看这个并告诉我为什么它不起作用吗?给那些做的人,谢谢

4

1 回答 1

1

您需要先创建$newimg$tempimg复制到其中。所有其他错误都来自这个问题。

于 2012-10-21T23:46:09.187 回答