PHP 给图片加边框
/**
* 给图片加边框 by liangjian 2014-06-19
* @param $ImgUrl 图片地址
* @param $SavePath 新图片保存路径
* @param $px 边框像素(2表示左右各一像素)
* @return Ambigous <boolean, 新图片的路径>
*/
function ImageAddBoard($ImgUrl, $SavePath, $px = 2) {
$aPathInfo = pathinfo ( $ImgUrl );
// 文件名称
$sFileName = $aPathInfo ['filename'];
// 图片扩展名
$sExtension = $aPathInfo ['extension'];
// 获取原图大小
list($img_w, $img_h) = getimagesize ( $ImgUrl ); // 读取图片
if (strtolower ( $sExtension ) == 'png') {
$resource = imagecreatefrompng ( $ImgUrl );
} elseif (strtolower ( $sExtension ) == 'jpg' || strtolower ( $sExtension ) == 'jpeg') {
$resource = imagecreatefromjpeg ( $ImgUrl );
} // 282*282的黑色背景图片
$im = @imagecreatetruecolor ( ($img_w + $px), ($img_h + $px) ) or die ( "Cannot Initialize new GD image stream" ); // 为真彩色画布创建背景,再设置为透明
$color = imagecolorallocate ( $im, 0, 0, 0 );
//imagefill ( $im, 0, 0, $color );
//imageColorTransparent ( $im, $color ); // 把品牌LOGO图片放到黑色背景图片上。边框是1px
imagecopy ( $im, $resource, $px / 2, $px / 2, 0, 0, $size [0], $size [1] ); $imgNewUrl = $SavePath . $sFileName . '-n.' . $sExtension;
if (strtolower ( $sExtension ) == 'png') {
$ret = imagepng ( $im, $imgNewUrl );
} elseif (strtolower ( $sExtension ) == 'jpg' || strtolower ( $sExtension ) == 'jpeg') {
$ret = imagejpeg ( $im, $imgNewUrl );
}
imagedestroy ( $im );
return $ret ? $imgNewUrl : false;
}
使用:
$savePath = './brand/';
$url = 'http://cdn0.xx.cn/store/moudlepic/301_module_images/936001_z.jpg'; var_dump(ImageAddBoard($url, $savePath));
加入前:
加入后:
PHP 给图片加边框的更多相关文章
- CSS鼠标悬停图片加边框效果,不位移的方法
<!DOCTYPE HTML> <html lang="en-US"> <head> <title>css实现鼠标悬停时图片加边框效 ...
- C#实现给图片加边框的方法
Bitmap bit= new Bitmap(@"" + Path);//给图片加边框 //Bitmap bit = new Bitmap(Screen.AllScreens[0] ...
- jQuery - 点击图片加边框
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- CSS鼠标悬停图片加边框效果,页面布局发生错位的解决办法
CSS鼠标悬停图片加边框效果,页面布局发生错位的解决办法 .recomend-list{ width:1200px; a{ @extend %fl; margin-right: 30px; width ...
- Android 给图片 加边框
图片处理时,有时需要为图片加一些边框,下面介绍一种为图片添加简单边框的方法. 基本思路是:将边框图片裁剪成八张小图片(图片大小最好一致,不然后面处理会很麻烦),分别对应左上角,左边,左下角,下边,右下 ...
- Android 给图片加边框
图片处理时,有时需要为图片加一些边框,下面介绍一种为图片添加简单边框的方法. 基本思路是:将边框图片裁剪成八张小图片(图片大小最好一致,不然后面处理会很麻烦),分别对应左上角,左边,左下角,下边,右下 ...
- Android学习笔记进阶19 之给图片加边框
//设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width ...
- Android学习笔记进阶19之给图片加边框
//设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width ...
- bug:无法给图片加边框
一,经历 1.错误代码 _avatarView.layer.cornerRadius = GIFT_AVATAR_WIDTH * 0.5; _avatarView.layer.borderColor ...
随机推荐
- 【计算机网络】2.2 Web和HTTP
第二章第二节 Web和HTTP 这一章中,我们需要讨论5种重要的应用:Web.文件传输.电子邮件.目录服务.P2P:这一节中,我们将讨论Web和它的应用层协议HTTP. Outline Web简介 H ...
- 06CSS列表
CSS列表 列表样式——list-style-type list-style-type:<属性值> disc 黑圆点 circle 空心圆点 square 小黑方块 decimal ...
- idea vue提示
我在idea中,装了,vue.js插件,可就是死活,没有提示,我的html 文件是 .html扩展名,我想是不是因为这个原因,我就新建了个,test.vue,哈哈,提示出来了,我又在其它.html文件 ...
- BZOJ4832: [Lydsy1704月赛]抵制克苏恩 (记忆化搜索 + 概率DP)
题意:模拟克苏恩打奴隶战对对方英雄所造成的伤害 题解:因为昨(今)天才写过记忆化搜索 所以这个就是送经验了 1A还冲了个榜 但是我惊奇的发现我数组明明就比数据范围开小了啊??? #include &l ...
- Oracle存储过程和程序包
一.为什么要用存储过程? 如果在应用程序中经常需要执行特定的操作,可以基于这些操作简历一个特定的过程.通过使用过程可以简化客户端程序的开发和维护,而且还能提高客户端程序的运行性能. 二.过程的优点? ...
- 通过反编译小程序来学习前端:wxappUnpacker
小程序开发时,会有4种文件:.wxss .json .wxs .wxml. 正式上传到腾讯时,目录会被打包,使用时再发放给客户端. 这个文件包后缀是 .wxapkg.只要手机用过这个小程序,文件 ...
- 两种js下载文件的方法(转)
function DownURL(strRemoteURL, strLocalURL){ try{ var xmlHTTP = new ActiveXObject("Microsoft.XM ...
- java枚举中常见的7中用法
2016年08月11日 11:14:45 李学凯 原文链接https://blog.csdn.net/qq_27093465/article/details/52180865 JDK1.5引入了新的 ...
- 详细了解为什么支持Postman Chrome应用程序已被弃用?
本地postman chrome插件确实也无法正常使用,只有Postman官方自己的软件应用程序可以使用.笔者多少追溯终于知道原因,并紧急上线了不同操作系统版本的Postman应用程序. 为什么近期P ...
- 一次偶遇 IOException
今天遇到了个挺有意思的事情,为了实现上传头像的功能,这是需要实现的功能,项目在本地跑起来且在本地 服务器(tomcat)也实现了头像上传,并把头像路径存入数据库,但是却在上传到线上服务器的时候死活存不 ...