imagecopymerge による半透明なすかしの作成

## imagecopymerge() による半透明なすかしの作成

例1 imagecopymerge() による半透明なすかしの作成

    <?php
    // スタンプと、それをすかしとして適用する写真を読み込みます
    $im = imagecreatefromjpeg('photo.jpeg');

    // まず、スタンプ画像を GD で作成します
    $stamp = imagecreatetruecolor(100, 70);
    imagefilledrectangle($stamp, 0, 0, 99, 69, 0x0000FF);
    imagefilledrectangle($stamp, 9, 9, 90, 60, 0xFFFFFF);
    imagestring($stamp, 5, 20, 20, 'libGD', 0x0000FF);
    imagestring($stamp, 3, 20, 40, '(c) 2007-9', 0x0000FF);

    // スタンプの余白を設定し、スタンプ画像の幅と高さを取得します
    $marge_right = 10;
    $marge_bottom = 10;
    $sx = imagesx($stamp);
    $sy = imagesy($stamp);

    // スタンプを、50% の不透明度で写真に重ねます
    imagecopymerge($im, $stamp, imagesx($im) - $sx - $marge_right, imagesy($im) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp), 50);

    // 画像をファイルに保存します
    imagepng($im, 'photo_stamp.png');

    ?>

この例は、imagecopymerge() を使ってスタンプを元画像にかぶせます。 これを使うと、スタンプの不透明度を設定することができます。 今回の例では 50% の不透明度に設定しています。 この半透明のすかしを用いる方法は、著作権つきの画像を保護するのに便利です。 すかしをとるのは非常に難しく、またもとの画像の見栄えも損ねません。
`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open