将图像裁剪成圆圈并添加边框

时间:2010-02-08 17:16:25

标签: php

我正在尝试裁剪圆形图像并在其周围添加边框。下面是我裁剪圆形图像的代码。

<?php

$img1 = imagecreateFromjpeg("./a.jpg");
$x=imagesx($img1)-$width ;
$y=imagesy($img1)-$height;


$img2 = imagecreatetruecolor($x, $y);
$bg = imagecolorallocate($img2, 255, 255, 255);
imagefill($img2, 0, 0, $bg);

$e = imagecolorallocate($img2, 0, 0, 0);

$r = $x <= $y ? $x : $y;
imagefilledellipse($img2, ($x/2), ($y/2), $r, $r, $e); 

imagecolortransparent($img2, $e);

imagecopymerge($img1, $img2, 0, 0, 0, 0, $x, $y, 100);

imagecolortransparent($img1, $bg);

header("Content-type: image/png");
imagepng($img1);

imagedestroy($img2);
imagedestroy($img1);

?>

任何想法或指南我都可以使用PHP GD在它周围添加边框?

1 个答案:

答案 0 :(得分:4)

如果你设法做了裁剪,那应该很容易。

只需创建一个黑色圆圈并在其上放置一个2px的小圆圈,然后将其与图像一起填充(这就是你所做的,不是吗?;)

编辑:

更确切地说:

现在您创建一个填充图像的圆圈。我建议:

  1. 创建一个圆圈并填充它 黑色
  2. 在其上创建另一个圈子 并像你一样填写你的形象 现在