- 浏览: 904009 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (354)
- Java学习 (122)
- jstl el表达式 (2)
- struts2 标签 (6)
- Ibatis (14)
- S2SH (3)
- struts2 json (2)
- JDK1.6-JDK1.5 (1)
- spring mvc (1)
- 工作项目开发 (8)
- jxl (3)
- jqgrid (9)
- POI (10)
- jQuery (9)
- itext (11)
- oracle (56)
- js (20)
- treegrid (1)
- myeclipse (4)
- Jforum (1)
- iphone (2)
- 角色权限 (1)
- Log4J (5)
- WebService (1)
- spring定时 (1)
- swfupload (12)
- Servlet (1)
- KindEditor (1)
- Java学习,httpclient (2)
- http (4)
- datagrid (1)
- KinSlideshow (1)
- android (7)
- html (1)
- CSS (1)
- 正则表达式 (3)
- easyui (6)
- JSONP (1)
- SQLServer (1)
- tomcat (2)
- Spring (4)
- Jquery plugins (2)
- windows7 (3)
- bootstrap (1)
- FreeMarker (1)
- flex (1)
- ExtJS (6)
- tTP-Link (1)
- MySQL (4)
- JavaScript (3)
- Notepad++ (1)
- ora (1)
- C语言 (1)
- 计算机 (1)
- DWR (2)
- 吉他 (1)
- hibernate (1)
- eclipse (1)
最新评论
-
天使建站:
这里的这篇文章写得很好:http://www.aijquery ...
jS 如何删除二维数组的重复项 -
羽翼的心动:
POI处理的格式单一,无法导出格式比较复杂的表格。POI不能使 ...
poi合并单元格同时导出excel -
zhixinhuacom:
jqgrid 按回车键默认提交数据,怎么做才能时回车不提交数据 ...
JQgrid要实现在jqGrid表格上动态的加行、删行,最后点击“保存”按钮,与后台交互,保存数据 -
w_mojian180:
nice 很多情况都是因为引入文件导入
Uncaught SyntaxError: Unexpected token < -
springdata_springmvc:
bootstrap demo实例教程源代码下载:http:// ...
bootstrap-switch开关按钮表单插件
功能:直接在一张已有的图片上写字,可指定文字颜色。
如果背景图片是空,生成一张白图片,根据文本信息,来决定图片的长度和宽度。
package pictures;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import javax.imageio.ImageIO;
public class Draw {
private static Font mFont = new Font("宋体",Font.PLAIN,20);
public static void main(String[] args) {
File f1 = new File("C:\\Documents and Settings\\xugang\\桌面\\t.txt");
File f2 = new File("C:\\Documents and Settings\\xugang\\桌面\\testPictrue.JPEG");
File f3 = new File("C:\\Documents and Settings\\xugang\\桌面\\1.jpg");
draw2(f1,f2,f3,true);
}
//直接在一张已有的图片上写字,可指定文字颜色。如果背景图片参数为空或者"",则写张白图
public static void draw2( File content , File outPictrue , File background , boolean b ){
FileReader f = null ;
try {
f = new FileReader(content);
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
BufferedReader br = new BufferedReader(f);
String line = "";
int lineNum = 0 ; //一共有多少行
List<String> list = new ArrayList<String>();
try {
while( (line = br.readLine()) != null){
System.out.println(line);
list.add(line);
++lineNum;
}
} catch (IOException e1) {
e1.printStackTrace();
}
int[] iArray = new int[list.size()];
int length = list.size();
for(int k = 0 ; k < length ; k++){
iArray[k] = format1(list.get(k));
}
Arrays.sort(iArray);
int lineLength = iArray[length-1];
System.out.println("文本中最长的一行的长度是:"+lineLength);
System.out.println("一共的行数是:"+lineNum);
BufferedImage image = null;
if( background.equals("") || background == null){
double h = 256/16;
double w = 85/10;
int width=(int) (w*lineLength)+ 40 , height=(int) (h*lineNum);
image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
}else{
try {
image = ImageIO.read(background);
} catch (IOException e1) {
e1.printStackTrace();
}
}
Graphics g = image.getGraphics();
// g.setColor(getRandColor(200,250));
// g.fillRect(1, 1, width-1, height-1);
if( b == false){
g.setColor(new Color(102,102,102)); //设字体为黑色,否则就是白色
}
// g.drawRect(0, 0, width-1, height-1);
g.setFont(mFont);
int k = 0;
Iterator<String> it = list.iterator();
while(it.hasNext()){
g.drawString(it.next(), 30, 15 + 20*k);
++k;
}
try {
ImageIO.write(image, "JPEG", outPictrue);
} catch (IOException e) {
e.printStackTrace();
}
}
//返回占位符的长度。
public static int format1( String s){
int length = 0 ;
for(int t = 0; t < s.length() ; t++){
if( s.charAt(t)> 255){
length = length + 2;
}else{
length = length + 1 ;
}
}
System.out.println(length);
return length;
}
//生成一张白图片,根据文本信息,来决定图片的长度和宽度。
//缺点:字体不同,字体样式不同,都会影响整个图片。
public static void draw1(){
FileReader f = null ;
try {
f = new FileReader("C:\\Documents and Settings\\xugang\\桌面\\t.txt");
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
BufferedReader br = new BufferedReader(f);
String line = "";
int lineNum = 0 ; //一共有多少行
List<String> list = new ArrayList<String>();
try {
while( (line = br.readLine()) != null){
System.out.println(line);
list.add(line);
++lineNum;
}
} catch (IOException e1) {
e1.printStackTrace();
}
int[] iArray = new int[list.size()];
int length = list.size();
for(int k = 0 ; k < length ; k++){
iArray[k] = format1(list.get(k));
}
Arrays.sort(iArray);
int lineLength = iArray[length-1];
System.out.println("文本中最长的一行的长度是:"+lineLength);
System.out.println("一共的行数是:"+lineNum);
double h = 256/16;
double w = 85/10;
int width=(int) (w*lineLength)+ 40 , height=(int) (h*lineNum);
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics g = image.getGraphics();
// g.setColor(getRandColor(200,250));
g.fillRect(1, 1, width-1, height-1);
g.setColor(new Color(102,102,102));
g.drawRect(0, 0, width-1, height-1);
g.setFont(mFont);
int k = 0;
Iterator<String> it = list.iterator();
while(it.hasNext()){
g.drawString(it.next(), 30, 15+15*k);
++k;
}
try {
ImageIO.write(image, "JPEG", new File("C:\\Documents and Settings\\xugang\\桌面\\testPictrue.JPEG"));
} catch (IOException e) {
e.printStackTrace();
}
}
}
转载
发表评论
-
Java中List Set Map 是否有序等总结
2015-05-05 11:09 728转http://blog.csdn.net/zhengqiq ... -
ava操作word宏
2015-04-29 10:44 534转:http://aa8945163.iteye.com/b ... -
System.load 和 System.loadLibrary详解
2015-04-09 10:50 652转:http://www.cnblogs.com/h ... -
(转)谈谈对Java中Unicode、编码的理解
2015-03-03 11:07 422转:http://www.cnblogs.com/newst ... -
HTTP status code 说明
2015-01-15 16:15 483200 – 服务器成功返回 ... -
JAVA邮件发送
2015-01-13 16:56 631转:http://www.cnblogs.com/codep ... -
Java排序算法 记录
2015-01-13 10:24 420转:http://www.cnblogs.com/dians ... -
java中volatile关键字
2015-01-05 14:30 490转:http://www.cnblogs.com/aigon ... -
4.1 Servlet简介
2014-12-22 16:34 417转:http://www.blogjava.net/ ... -
在 Windows 中实现 Java 本地方法
2014-12-21 15:18 466转:http://www.ibm.com/devel ... -
严重: Error listenerStart
2014-11-18 17:14 4212007-5-31 14:27:13 org.apache. ... -
java.security.AccessControlException: access denied 的解决方法
2014-11-07 22:07 3337转:http://blog.csdn.net/maomao ... -
Linux下反斜杠号"\"
2014-10-27 13:36 2501转:http://www.cnblogs.com/Muyou ... -
@override在JDK1.5和JDK1.6中用法区别
2014-10-14 22:54 403转:http://gaowenming.iteye.com/ ... -
ClientAbortException:java.io.IOException解决方案
2014-09-09 10:13 12558转:http://blog.sina.com.cn/s/bl ... -
SchedulerFactoryBean 注入
2014-08-26 10:19 821转:http://blog.csdn.net/neutro ... -
Spring 3整合Quartz 2实现定时任务二:动态添加任务
2014-08-26 09:47 821转:http://www.meiriyouke.net/?p ... -
Spring 3整合Quartz 2实现定时任务一:常规整合
2014-08-26 09:45 662转:http://www.meiriyouke.net/?p ... -
Spring 3整合Quartz 2实现定时任务三:动态暂停 恢复 修改和删除任务
2014-08-26 09:21 2244转http://my.oschina.net/u/1177 ... -
java.lang.UnsupportedClassVersionError: Bad version number in .class file
2014-08-18 16:45 378今天新建了一个基于jdk6的工程,在tomcat中部署之后, ...
相关推荐
在Java编程领域,添加文字到图片上的操作通常用于创建水印、标注或进行图像处理。这个"Java编写的图片上加文字Demo"项目利用Eclipse 4.2.1作为开发环境,实现了在本地图片上动态添加文字的功能,允许用户自定义字体...
在Java编程语言中,实现将文字写入图片是一项常见的任务,尤其在图形用户界面(GUI)开发、数据可视化或图像处理应用中。本教程将详细解释如何使用Java来完成这一功能,主要涉及到Java的`java.awt`和`javax.imageio`...
在本文中,我们将深入探讨如何使用Java编程语言为图片添加文字或图像水印。这个话题源于一个名为"Java水印.rar"的压缩包文件,它包含了一段Java源代码,用于实现这一功能。该压缩包有四个文件:RunIt.bat(运行脚本...
在这个特定的应用场景中,我们利用 JavaCV 对图片进行文字识别(OCR,Optical Character Recognition),以定位并提取指定文字在图片中的位置坐标,同时优化识别速度。 首先,我们需要了解 OCR 的基本概念。OCR ...
在Java编程领域,将文字转换为图片是一种常见的需求,它广泛应用于验证码生成、文本水印、数据可视化等领域。本文将详细讲解如何利用Java实现这一功能,主要涉及以下几个知识点: 1. **Graphics2D API** Java中的`...
Java手写识别技术是一种在Java平台上实现的图像处理与机器学习技术,主要用于识别手写数字或字符。在本项目中,"java手写识别超级准确" 提示我们这是一个高效的识别系统,具有高度的准确率,并且它采用了Swing库来...
Java识别PDF图片中的文字是一项常见的任务,特别是在文档处理和数据提取领域。Tess4J是一个强大的工具,它基于Tesseract OCR(光学字符识别)引擎,能够帮助开发者在Java应用程序中实现这一功能。以下是对这个主题的...
Java原有图片上加文字,对图片进行处理。
在Java编程环境中,给图片添加文字或图片水印是一项常见的图像处理任务,广泛应用于版权保护、品牌宣传等领域。本项目“基于Java给图片添加文字或图片水印”旨在教授如何利用Java实现这一功能,适用于大学生的课程...
这个名为"java图片上添加文字代码.rar"的压缩包很可能是包含了一个或多个Java类,这些类提供了将文字添加到图片上的功能。让我们深入探讨一下如何在Java中实现这样的功能,以及涉及到的相关技术。 首先,我们需要...
在Java编程中,实现图片上传并添加水印效果是一项常见的任务,这通常涉及到图像处理、图形用户界面(GUI)和文件I/O等多个方面。在这个项目中,我们将关注以下几个关键知识点: 1. **Java图像处理库**:Java标准库...
基于java实现的手写识别软件,字库是特征点字库,通过KNN算法计算,汉字的特征点通过递归方法得到,核心代码量300行左右,识别效果良好。直接使用eclipse导入工程即可,单击startframe.java开始运行
我们可以使用 `java.awt.Font` 类来设置字体样式和大小,并使用 `Graphics2D` 类的 `drawString` 方法将文字画到图片上。 ```java Font font = new Font("SansSerif", Font.BOLD, 30); g.setFont(font); g.setColor...
在标签中,作者列出了四个关键词:“java 处理图片背景颜色”、“java 图片背景颜色替换”、“java 图片背景颜色更改”、“java 蓝底寸照批量转换为白底”,这些关键词都与 Java 处理图片背景颜色相关。 在部分内容...
总结起来,JavaCV提供了一个强大的平台,让我们能够在Java环境中轻松实现图片文字定位。通过理解并运用图像预处理、文字区域检测、文字定位和文字识别等技术,我们可以构建出高效的OCR解决方案。
在IT行业中,生成二维码、图片合成以及在图片上添加文字是常见的图像处理任务,尤其是在移动应用、营销推广和数据交换等领域。本资源包提供了一个基于Java的解决方案,使用了ZXing库(Zebra Crossing)和Java 2D图形...
java 图片添加文字,java 图片添加文字
代码支持通过传递参数,在后台生成艺术字图片。该图片可以根据不同的参数调节样式内容。
在Java编程中,给图片添加水印是一项常见的需求,无论是为了版权保护还是视觉美化。水印可以是图片形式,也可以是文字形式。本教程将详细讲解如何使用Java来实现这一功能,重点在于介绍所需的依赖包。 首先,我们...
总的来说,JavaCV为开发者提供了在不同操作系统上实现图片文字识别的统一接口,简化了多平台开发的复杂性。通过合理利用JavaCV和相关的计算机视觉库,开发者可以在Linux、Windows、Android和Mac等平台上构建高效、...