PHP GD imagefill - 填充到源的左侧

时间:2013-01-10 00:10:00

标签: php gd

我正在使用PHP gd扩展图像画布:

    $newimage = imagecreatetruecolor($imageWidth + 840, $imageHeight);
    $color = imagecolorallocate($newimage, 0, 0, 0);
    imagefill($newimage, 0, 0, $color);
    imagecopy($newimage, $image, 0, 0, 0, 0, $imageWidth, $imageHeight);

    //get extension of the cropped image
    $ext = end(explode('.' , $imageName));

    //timestamp it
    $timestamp = time();

    //rename the new image
    $fileName = rand() . $timestamp . '.' . $ext;

    //unlink old image
    unlink($src);

    //update the DB with new imagename
    $update = array('update' => $this->image->update($imageID, $fileName));

    //Set the path for the image
    $path = 'data/gallery/' . $galleryID . '/images/album/' . $fileName;

    //create the cropped image
    imagejpeg($newimage,$path,$jpeg_quality);

这按预期工作,画布扩展到右侧840像素。我想要做的是将画布扩展到左侧840像素。不知道如何实现这一目标。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

一旦我破译了所有参数,实际上非常简单。

imagecopy ( resource dest_image, resource source_image, int dest_x, int dest_y, int source_x, int source_y, int source_width, int source_height)
  • 您要复制到的目标图片

  • 您要复制的源图像

  • 您要复制的X坐标

  • 您要复制的Y坐标

  • 您要从

  • 复制的X坐标
  • 您要从

  • 复制的y坐标
  • 要复制的源图像的宽度(以像素为单位)

  • 要复制的源图像的高度(以像素为单位)