imagecopymerge

Copy and merge part of an image

&reftitle.description; `bool` `imagecopymerge` `GdImage` `dst_image` `GdImage` `src_image` `int` `dst_x` `int` `dst_y` `int` `src_x` `int` `src_y` `int` `src_width` `int` `src_height` `int` `pct`

Copy a part of `src_image` onto `dst_image` starting at the x,y coordinates `src_x`, `src_y` with a width of `src_width` and a height of `src_height`. The portion defined will be copied onto the x,y coordinates, `dst_x` and `dst_y`.

&reftitle.parameters;

`dst_image`

- &gd.image.destination;

`src_image`

- &gd.image.source;

`dst_x`

- x-coordinate of destination point.

`dst_y`

- y-coordinate of destination point.

`src_x`

- x-coordinate of source point.

`src_y`

- y-coordinate of source point.

`src_width`

- &gd.source.width;

`src_height`

- &gd.source.height;

`pct`

- The two images will be merged according to `pct` which can range from 0 to 100. When `pct` = 0, no action is taken, when 100 this function behaves identically to `imagecopy` for pallete images, except for ignoring alpha components, while it implements alpha transparency for true colour images.

&reftitle.returnvalues;

&return.success;

&reftitle.changelog;

&Version; | &Description;
8.0.0 | `dst_image` and `src_image` expect `GdImage` instances now; previously, `resource`s were expected.

&reftitle.examples;

### Merging two copies of the PHP.net logo with 75% transparency

    <?php
    // Create image instances
    $dest = imagecreatefromgif('php.gif');
    $src = imagecreatefromgif('php.gif');

    // Copy and merge
    imagecopymerge($dest, $src, 10, 10, 0, 0, 100, 47, 75);

    // Output and free from memory
    header('Content-Type: image/gif');
    imagegif($dest);

    imagedestroy($dest);
    imagedestroy($src);
    ?>