
privateBitmapcreateBitmap(Bitmapphoto,Stringstr,intmark_x,intmark_y){
intwidth=photo.getWidth(),hight=photo.getHeight()
System.out.println("宽"width"高"hight)
//建立一个空的BItMap
Bitmapicon=Bitmap.createBitmap(width,hight,Bitmap.Config.ARGB_8888)
//初始化画布绘制的图像到icon上
Canvascanvas=newCanvas(icon)
PaintphotoPaint=newPaint()//建立画笔
photoPaint.setDither(true)//获取跟清晰的图像采样
photoPaint.setFilterBitmap(true)//过滤一些
//创建一个指定的新矩形的坐标
Rectsrc=newRect(0,0,photo.getWidth(),photo.getHeight())
//创建一个指定的新矩形的坐标
Rectdst=newRect(0,0,width,hight)
//将photo缩放或则扩大到dst使用的填充区photoPaint
canvas.drawBitmap(photo,src,dst,photoPaint)
最近有个工作任务就是给用户拍的照片打上水印并且上传到服务器首先我们看看效果
话不多说 开搞
首先准备一张图片
图片准备好了接下来要轮到我们的Canvas来表演了
画布和图片准备好了那么我们开始吧文字绘制上去吧因为有些图片偏亮 那么白字就不容易辨识了 所以我们来给文字下面加个70%透明度的黑色底色吧
好了一切准备就绪开始绘制吧 先来个左上角的(此处给三倍margin是因为文字顶部的留白问题)
这里是dp和sp转PX的方法 很基础就不赘述了
因为涉及到图片的上传那么我们还需要将bitmap转成文件提交给服务器
最后是我封装的用来在各个位置加上文字水印有需要可以直接拿去使用
完结散花
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)