首页 > 代码库 > PHP图片处理
PHP图片处理
最近项目中要添加一个功能,用户穿戴着一个可以采集位置和自身身体状况的的设备,将这 些数据展示在地图上。看起来是个不错的想法,可是现在没有这个设备啊(坑爹啊),只能模拟数据。而且有了数据也要将多个人展示在地图上,也需要不同的图 标,初步的想法是以用户的编号来识别。做成像下图一样的(这也是做完的效果)。
对PHP还有这么一点熟悉,就用PHP来做了,
需要准备一张图片,从网上下的,缩小的合适的尺寸,接下来开始用程序生成了》》
1、首先需要得到一个图片资源
$im = imagecreatefrompng(‘your.png‘);
参数就是你准备的图片地址,因为我们的图片是png格式的,png图片背景透明,所以都用它。还有其他的函数,imagecreatefromjpeg、imagecreatefromgif等等
2、分配一个颜色,这里是白色,后三个参数是rgb的值。
$color = imagecolorallocate($im, 255, 255, 255);
3、在图片上写字。
imagettftext($im, 9, 0, 10, 17, $color, ‘Monaco.ttf‘, ‘10’);
参数分别是: 图片资源,字体大小,文字倾斜,文字位置x,文字位置y,颜色,字体文件,文字内容。其中文字位置相对于图片左上角而言。
4、输出
imagepng($im);
如果忽略第二个参数,图片会输出到浏览器。第二个参数是存储位置。
这样做完之后发现,哇靠,图片竟然有背景了,我们要的是透明的,网上查找之,还有这么个函数:
imagesavealpha($im, true);
这样就不会有背景了,还是透明的
完整代码如下:
$im = imagecreatefrompng(‘your.png‘);imagesavealpha($im, true);$color = imagecolorallocate($im, 255, 255, 255);imagettftext($im, 9, 0, 10, 17, $color, ‘Monaco.ttf‘, ‘10’);imagepng($im);
如果想得到多张,可以循环一下,然后调整文字位置,输出一下,看我的:
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。