公司最近需要进行图片内容动态添加数据需求

boolean flag = PDFReader.createStringMark(“C:\Users\zhangwp\Desktop\1.jpg”, “CALG”,“C:\Users\zhangwp\Desktop\12.jpg”);
System.out.println(flag);
具体内容位置等根据需求调试

/***  给图片添加文字内容* @param filePath  原图路径* @param markContent 文字内容* @param outPath   添加文字内容的图片存放路径地址* @param flag   可以根据flag值,给图片设置具体值*/public static void createStringMark(String filePath,String markContent,String outPath,Integer flag) {ImageIcon imgIcon = new ImageIcon(filePath);Image theImg = imgIcon.getImage();int width = theImg.getWidth(null) == -1 ? 200 : theImg.getWidth(null);int height = theImg.getHeight(null) == -1 ? 200 : theImg.getHeight(null);
//        System.out.println(width);
//        System.out.println(height);
//        System.out.println(theImg);BufferedImage bimage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);// RGB形式Graphics2D g = bimage.createGraphics();Color mycolor = Color.white; // 颜色g.setColor(mycolor);g.setBackground(Color.white);// 设置背景色g.drawImage(theImg, 0, 0, null);// 参数一:image是要加载的图像;参数二,三:x,y是指定绘制图像矩形左上角的位置;参数四:observer是要绘制图像的容器,一般此参数默认为null/* 设置抗锯齿 消文字锯齿:RenderingHints.KEY_TEXT_ANTIALIASING*           消绘图锯齿:RenderingHints.KEY_ANTIALIASING*           字体圆滑:  RenderingHints.VALUE_TEXT_ANTIALIAS_ON*/switch (flag){case 0:
//              g.setFont(new java.awt.Font("黑体", java.awt.Font.BOLD, 24)); // 字体、字型、字号
//              g.drawString(markContent, 1, 39); // 画文字 文字在1宽度,39高度g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);// 设置抗锯齿g.setFont(new java.awt.Font("黑体", java.awt.Font.BOLD, 24)); // 字体、字型、字号g.setPaint(new Color(0, 0, 0, 64));// 阴影颜色g.drawString(markContent, 1, 39);// 先绘制阴影g.setPaint(Color.WHITE);// 正文颜色g.drawString(markContent, 1, 39);// 用正文颜色覆盖上去break;case 1:
//              g.setFont(new java.awt.Font("黑体", java.awt.Font.BOLD, 16)); // 字体、字型、字号
//              g.drawString(markContent, 1, 17); // 画文字 文字在1宽度,17高度g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);// 设置抗锯齿g.setFont(new java.awt.Font("黑体", java.awt.Font.BOLD, 16)); // 字体、字型、字号g.setPaint(new Color(0, 0, 0, 64));// 阴影颜色g.drawString(markContent, 1, 17);// 先绘制阴影g.setPaint(Color.WHITE);// 正文颜色g.drawString(markContent, 1, 17);// 用正文颜色覆盖上去break;default:g.setFont(new java.awt.Font("黑体", java.awt.Font.PLAIN, 1)); // 字体、字型、字号g.drawString(markContent, 1, 1); // 画文字 文字在1宽度,1高度break;}g.dispose();try {FileOutputStream out = new FileOutputStream(outPath); // 一个特定的输出文件名JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bimage);param.setQuality(100, false);  // 进行高质量图片缩放encoder.encode(bimage, param);out.close();} catch (Exception e) {e.printStackTrace();throw new ServiceException(e.getMessage());}}

1.jpg

2.jpg


JAVA 图片添加内容相关推荐

  1. Java 图片添加数字暗水印工具类

    Java 图片添加数字暗水印工具类. package cnki.thesis.common.utils;import org.opencv.core.*;import java.util.ArrayL ...

  2. Java 图片添加文字或者logo水印(附代码) | Java工具类

    目录 前言 环境依赖 代码 总结 前言 本文提供java工具类,给图片添加文字或者logo图片的水印效果. 环境依赖 工具库maven依赖添加 <dependency><groupI ...

  3. java 图片阴影_Java如何为 PPT 中的图形添加阴影效果

    在PowerPoint文档中,给图片添加阴影效果能增强图片的逼真度,使其贴近现实效果,提升文档的美观度. 本文将展示如何使用Free Spire.Presentation for Java为PPT中的 ...

  4. JAVA 给图片添加文字水印

    水印操作有很多,例如:给图片添加文字.图片水印,给pdf文件添加水印,给文件加盖公章,这类需求还是时常会遇到的,今天就简单记录一下给图片添加文字水印的demo,仅供大家参考,后续会写别的情况的添加水印 ...

  5. Java实现添加文字水印、图片水印功能

    Java实现添加水印功能 添加水印 Java 2D API介绍 绘制文字水印 绘制图片水印 循环添加文字水印 添加水印 为图片添加水印的主要作用是保护图片版权,防止图片被未经授权的人使用或传播.为图片 ...

  6. java 给图片添加文字

    java 给图片添加文字 最近开发中要实现给图片加文字功能,本打算用Jmagick实现的,可是中文出现乱码,没有找到解决办法,就用 最原始的方法实现了,如果随知道Jmagick图片解决中文乱码问题,可 ...

  7. Java分享--给图片添加文字水印(文字可旋转)

    这篇文章主要介绍了Java实现给图片添加文字水印,文字水印的方法,涉及java针对图片的读取.水印添加设置等相关操作技巧,需要的朋友可以参考下 . 很多时候项目中的图片需要一定的版权,就是人家拿出去用 ...

  8. Java给图片添加文字水印

    闲着没事,研究了下图片水印的事儿,图片水印虽然恶心,而且大大的影响了图片的美观,试想一下,一张美女的性感写真照,下方来了个大大的水印"XXXX所有",看着那猥琐的文字水印,是不是很 ...

  9. java io在文件结尾持续添加内容

    [代码] java io在文件结尾持续添加内容 public static void write(String path, String content) {try {File f = new Fil ...

最新文章

  1. 官宣弃用Java 8!Kafka 3.0.0 新功能get
  2. JQuery EasyUI 动态隐藏
  3. oracle故障一例,工作中遇到的oracle故障分析和处理一例
  4. java socket 判断是否断开_Linux Socket:如何在客户端程序中检测断开的网络?
  5. UBUNTU安装Android Studio 3
  6. NYOJ 819奶牛 水
  7. 广播地址的计算方法(与运算、或运算)
  8. Android仿QQ列表滑动
  9. 基于北斗观测值的智能手机GNSS定位研究
  10. 苹果发布iOS10.2.1 ,别升级!别问为什么
  11. 什么是线性电路,非线性电路
  12. Linux下qt/C++全局键盘监控,处理键盘事件,输出按键码
  13. 标准盒子模型与怪异盒子模型
  14. 5个免费翻译网页的工具,快速 、高效、准确率高!
  15. 【JVM】GC垃圾回收(三)——零落成泥碾作尘,只有香如故
  16. 水经注,bigemap 功能对比
  17. 压力传感器行业调研报告 - 市场现状分析与发展前景预测
  18. 【预测模型-ELAMN预测】基于蚁群算法优化ELMAN神经网络实现数据回归预测matlab代码
  19. 【数学建模】灰色关联分析 + Matlab代码实现
  20. 如何申请外网ip地址

热门文章

  1. 2023好用视频降噪软件推荐
  2. Python tkinter ubuntu安装
  3. 关于TPS5430电压输出不正常 的原因
  4. (13.1.3)PMBOK之三:十大知识领域与具体过程
  5. inittab的简单使用
  6. 快速排序Java实现
  7. 关于Pytorch中双向LSTM的输出表示问题
  8. linux桌面版共享,多台电脑共享一套键盘鼠标 for WINS\MAC\LINUX
  9. 《统计学》笔记:第13章 时间序列分析和预测
  10. 中国新的AI警察局将不会有人类