使用Graphics将字符串居中绘制到图片上
File srcImgFile = new File(srcImgPath);//得到文件Image srcImg = ImageIO.read(srcImgFile);//文件转化为图片int srcImgWidth = srcImg.getWidth(null);//获取图片的宽int srcImgHeight = srcImg.getHeight(null);//获取图片的高// 加水印 BufferedImage bufImg = new BufferedImage(srcImgWidth, srcImgHeight, BufferedImage.TYPE_INT_RGB);Graphics g = bufImg.createGraphics();g.drawImage(srcImg, 0, 0, srcImgWidth, srcImgHeight, null);g.setColor(new Color(0,0,0)); //根据图片的背景设置水印颜色g.setFont(new Font("微软雅黑", Font.PLAIN, 95)); //设置字体String str = "xxxxxxxx";//待绘制文字//文字居中FontMetrics fm = g.getFontMetrics(); g.drawString(str,(srcImgWidth-fm.stringWidth(str))/2, 1055); //画出水印g.dispose(); // 输出图片 FileOutputStream outImgStream = new FileOutputStream(tarImgPath); ImageIO.write(bufImg, "png", outImgStream);System.out.println("添加水印完成"); outImgStream.flush(); outImgStream.close();
使用Graphics将字符串居中绘制到图片上相关推荐
- python手记(四):pillow(四) ImageDraw模块 图片绘制(图片上自定义绘制)
人生不易且无趣,一起来找点乐子吧.欢迎评论,和文章无关的也可以. 这次说下ImageDraw module,其实从名字上就可以看出来,这个模块的功能是什么.就是在图片上绘制一些东西,比如文字,简单图形 ...
- 目标检测之将bbox绘制到图片上
绘制bbox 文件夹内容 其中train1里面放的是待绘制的图片 train1_crop.json里面保存的是train1文件夹里数据的信息,三个指标:name,defect_name,bbox 例如 ...
- 将bbox注释信息绘制到图片上
这里以天池布匹数据集为例: !!! 需要备份图片,因为下面的程序会覆盖掉原来的图片,替换成有bbox框的图片,但图片名不会变. import os import json from PIL impor ...
- php怎么调整字体和图片距离,PHP计算思源字体宽度, 并把文字绘制到图片上
2019-6-19 9:18:54 星期三 思源字体是一套开源的字体, 那字体宽度是多少呢? 测试场景, 将包含汉字, 数字, 大小写字符的一段文字写到图片中去, 但不能出现超出的情况, 这就要计算 ...
- 使用cv2在图片上绘制点
数据的格式为坐标构成的list,要将这些点绘制在图片上并保存: import os import sys import cv2imagePath="./img/"image = c ...
- java使用Graphics在图片上绘制形状
开发中遇到一个需求,就是在抓拍的图片上按照点位画出有效区域,并且区域有正选和反选,所以需要填充多边形内和多边形外. 花了些时间看源码找资料,搞出了个demo 1.图片上绘制多边形区域并填充颜色 /** ...
- C#图像处理:在图片上写字,文字位置居中问题
1.给图片上添加文字,位置的位置居中.左对齐.右对齐等 Font LabelFont = new Font("宋体", 14, FontStyle.Bold); //设置字体.字号 ...
- C# 绘制验证码图片
随着 B/S 应用系统的兴起,网站登录对安全性的要求也越来越高了,一般情况下都会采用验证码的方式提高网站系统的安全等级. 验证码业务流程 在实现验证码功能之前,先弄明白验证码的业务流程. 1. ...
- 【Android 应用开发】Paint 渲染 之 BitmapShader 位图渲染 ( 渲染流程 | CLAMP 拉伸最后像素 | REPEAT 重复绘制图片 | MIRROR 绘制反向图片 )
文章目录 1. 位图渲染 BitmapShader 简介 ( 1 ) 位图渲染综述 ( ① 三种方式 : Shader.TileMode.CLAMP | Shader.TileMode.REPEAT ...
- 解决《Mobile绘制背景图片》中的问题
与PC平台的开发相比,Mobile的开发麻烦了许多,至少这是我的感觉 . 谢谢--" Fly Pig(^@^)" 的文章<Mobile开发(绘制背景图片) > http ...
最新文章
- 率清华团队研发“天机芯”登《Nature》封面,他说类脑计算是发展人工通用智能的基石...
- 清明是品茗的好时节,那么你了解quot;明前茶quot;吗?
- 【Android 高性能音频】OboeTester 音频性能测试应用 ( Oboe 输出测试参数 | API 选择 | 音频输出设备选择 | 采样率 | 通道 | 采样格式 | 播放偏好 )
- 多云回归分析入门(老阿姨要重新开始学习概率论了~)
- 网页mysql命令大全_Mysql命令大全
- CAS和Synchronized知识
- 复制以下命令到终端中,C++然后回车即可
- 使用https协议解决掉顽固不化的已解密的登录请求
- mysql 使用update 1064错误的原因和解决方法
- Windows平台下的session0创建进程的问题与解决办法
- VMware网络设置详解 打造超级虚拟网络
- 斯托克斯公式(三维中两类曲面和第二类曲线互相转换)
- c语言排快速排序过程,C语言中快速排序法怎么排
- 58金融客服电话--24小时全国统一服务热线
- 在线客服api是什么?
- 派克比例方向控制阀放大器
- 保研面试中常见的英语问题有哪些?
- 【持续更新】树莓派启动与故障系列集锦
- 全国高等教师资格证考试复习笔记-高等教育学(1)-教育学概述
- 拉格朗java_逻辑炸弹通常是通过_______。
热门文章
- 更好用的冒泡排序、双向冒泡排序,拓展荷兰国旗问题
- firefox插件开发和调试
- 计算机鼠标老跳动,用win10系统,鼠标总是乱飞乱跳怎么回事,找到原因及解决方案了...
- 点对点网络带宽测试软件,点对点带宽测试工具iperf
- Oracle 对表空间无操作权限
- 手机word文档docx密码忘了怎么办,忘记word文档docx密码怎么办?
- 在APPLE从创建ID到申请发布AppStore账户(六)新建AppleID用户首次使用要求双重认证(您的 Apple ID 需要更新)
- 基于智能手机传感器数据的人类行为识别
- 安卓手机传感器采集数据并保存数据
- 机器学习学习整理(二)对数几率回归与支持向量机