• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php图片生成圆角

php 搞代码 4年前 (2022-01-22) 17次浏览 已收录 0个评论

本篇文章的内容是关于PHP图片生成圆角,现在分享给大家,有需要的朋友可以参考一下

        /**	 * @param  string  $imgpath 源图片路径	 * @param  integer $radius  圆角半径长度默认为15,处理成圆型	 * @return [type]           [description]	 */	function radius_img($imgpath = './t.png', $radius = 15) {		$ext     = pathinfo($imgpath);		$src_img = null;		switch ($ext['extension']) {		case 'jpg':			$src_img = imagecreatefromjpeg($imgpath);			break;		case 'png':			$src_img = imagecreatefrompng($imgpath);			break;		}		$wh = getimagesize($imgpath);		$w  = $wh[0];		$h  = $wh[1];		// $radius = $radius == 0 ? (m<em style="color:transparent">本@文来源[email protected]搞@^&代*@码网(</em><q>搞代gaodaima码</q>in($w, $h) / 2) : $radius;		$img = imagecreatetruecolor($w, $h);		//这一句一定要有		imagesavealpha($img, true);		//拾取一个完全透明的颜色,最后一个参数127为全透明		$bg = imagecolorallocatealpha($img, 255, 255, 255, 127);		imagefill($img, 0, 0, $bg);		$r = $radius; //圆 角半径		for ($x = 0; $x < $w; $x++) {			for ($y = 0; $y < $h; $y++) {				$rgbColor = imagecolorat($src_img, $x, $y);				if (($x >= $radius && $x <= ($w - $radius)) || ($y >= $radius && $y <= ($h - $radius))) {					//不在四角的范围内,直接画					imagesetpixel($img, $x, $y, $rgbColor);				} else {					//在四角的范围内选择画					//上左					$y_x = $r; //圆心X坐标					$y_y = $r; //圆心Y坐标					if (((($x - $y_x) * ($x - $y_x) + ($y - $y_y) * ($y - $y_y)) <= ($r * $r))) {						imagesetpixel($img, $x, $y, $rgbColor);					}					//上右					$y_x = $w - $r; //圆心X坐标					$y_y = $r; //圆心Y坐标					if (((($x - $y_x) * ($x - $y_x) + ($y - $y_y) * ($y - $y_y)) <= ($r * $r))) {						imagesetpixel($img, $x, $y, $rgbColor);					}					//下左					$y_x = $r; //圆心X坐标					$y_y = $h - $r; //圆心Y坐标					if (((($x - $y_x) * ($x - $y_x) + ($y - $y_y) * ($y - $y_y)) <= ($r * $r))) {						imagesetpixel($img, $x, $y, $rgbColor);					}					//下右					$y_x = $w - $r; //圆心X坐标					$y_y = $h - $r; //圆心Y坐标					if (((($x - $y_x) * ($x - $y_x) + ($y - $y_y) * ($y - $y_y)) <= ($r * $r))) {						imagesetpixel($img, $x, $y, $rgbColor);					}				}			}		}		return $img;	}

相关推荐:

PHP图片处理之多张图片合成一张的实例

php图片水印添加、压缩、剪切的封装类

php图片无损压缩的问题解决

以上就是php图片生成圆角的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php图片生成圆角
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址