【将txt文本转图片】
【测试类】
public static void main(String[] args)
{
try
{
File textFile = new File("F:\\java56班\\eclipse-SDK-4.2-win32\\1.txt");
File imageFile = new File("F:\\java56班\\eclipse-SDK-4.2-win32\\1.png");
TextToImage texttoimage = new TextToImage(textFile, imageFile);
texttoimage.convert();
}
catch (Exception e)
{
e.printStackTrace();
}
}
【将文本转换为图片类】
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.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
import com.sun.image.codec.jpeg.JPEGCodec; public class TextToImage { /** 文本文件 */
private File textFile;
/** 图片文件 */
private File imageFile;
/** 图片 */
private BufferedImage image;
/** 图片宽度 */
private final int IMAGE_WIDTH = ;
/** 图片高度 */
private final int IMAGE_HEIGHT = ;
/** 图片类型 */
private final int IMAGE_TYPE = BufferedImage.TYPE_INT_RGB; /**
* 构造函数
* @param textFile 文本文件
* @param imageFile 图片文件
*/
public TextToImage(File textFile,File imageFile){
this.textFile = textFile;
this.imageFile = imageFile;
this.image = new BufferedImage(IMAGE_WIDTH, IMAGE_HEIGHT, IMAGE_TYPE);
} /**
* 将文本文件里文字,写入到图片中保存
* @return boolean true,写入成功;false,写入失败
*/
public boolean convert() { //读取文本文件
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(textFile));
} catch (FileNotFoundException e) {
e.printStackTrace();
return false;
} //获取图像上下文
Graphics g = createGraphics(image);
String line;
//图片中文本行高
final int Y_LINEHEIGHT = ;
int lineNum = ;
try {
while((line = reader.readLine()) != null){
g.drawString(line, , lineNum * Y_LINEHEIGHT);
lineNum++;
}
g.dispose(); //保存为jpg图片
FileOutputStream fos = new FileOutputStream(imageFile);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fos);
encoder.encode(image);
fos.close();
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
} /**
* 获取到图像上下文
* @param image 图片
* @return Graphics
*/
private Graphics createGraphics(BufferedImage image){
Graphics g = image.createGraphics();
g.setColor(null); //设置背景色
g.fillRect(, , IMAGE_WIDTH, IMAGE_HEIGHT);//绘制背景
g.setColor(Color.BLACK); //设置前景色
g.setFont(new Font("微软雅黑", Font.PLAIN, )); //设置字体
return g;
}
【将txt文本转图片】的更多相关文章
- 数据库存储txt文本和jpg图片
环境:MySql+SQLyog+j2se+jdbc 存储文本用longtext类型 存储图片用blob类型 1.首先建表 create table t_t (id int(16) NOT NULL A ...
- 如何使用免费PDF控件从PDF文档中提取文本和图片
如何使用免费PDF控件从PDF文档中提取文本和图片 概要 现在手头的项目有一个需求是从PDF文档中提取文本和图片,我以前也使用过像iTextSharp, PDFBox 这些免费的PD ...
- 重新想象 Windows 8 Store Apps (40) - 剪切板: 复制/粘贴文本, html, 图片, 文件
[源码下载] 重新想象 Windows 8 Store Apps (40) - 剪切板: 复制/粘贴文本, html, 图片, 文件 作者:webabcd 介绍重新想象 Windows 8 Store ...
- C# 提取PPT文本和图片的实现方案
在图文混排的文档中,我们可以根据需要将文档中的文字信息或者图片提取出来,通过C#代码可以提取Word和PDF文件中的文本和图片,那么同样的,我们也可以提取PPT幻灯片当中的文本和图片.本篇文档将讲述如 ...
- Java 读取PDF中的文本和图片
本文将介绍通过Java程序来读取PDF文档中的文本和图片的方法.分别调用方法extractText()和extractImages()来读取. 使用工具:Free Spire.PDF for Ja ...
- Java 提取Word中的文本和图片
本文将介绍通过Java来提取或读取Word文档中文本和图片的方法.这里提取文本和图片包括同时提取文档正文当中以及页眉.页脚中的的文本和图片. 使用工具:Free Spire.Doc for Java ...
- 使用JavaMail发送邮件(含文本/附件/图片)的工具类
记录利用公司内搭建的smtp邮件服务器,使用javax mail发送邮件的程序 package com.test.mailTest; import java.util.Date; import jav ...
- 使用java读取解析txt文本数据,管理简单的数据
在实际开发中会经常碰到使用编程语言读取文本文件的内容,这内容可以是各种各样的一下本人写出我自己做的一个读取文本文件的例子,文件中存储的是我的个人网站 www.yzcopen.com 导航栏目因为懒得使 ...
- C# 读取Word文本框中的文本、图片和表格(附VB.NET代码)
[概述] Word中可插入文本框,在文本框中可添加文本.图片.表格等内容.本篇文章通过C#程序代码介绍如何来读取文本框中的文本.图片和表格等内容.附VB.NET代码,有需要可作参考. [程序环境] 程 ...
随机推荐
- IE/Chrome背景图片居中1px偏移解决方法
最近在支持行业运营的一个推广页面,遇到了非常规的页面banner图居中的问题,为了解决此问题,做了简单的测试,做了一个小结,为经常做大促页面的兄弟姐妹们提供参考解决方案. 首先来看看现象.最经典的页面 ...
- 全排列dfs算法
如下 #include <iostream> using namespace std; #define MAX 10 #define _CRT_SECURE_NO_WARNINGS int ...
- Servlet、Filter、Listener、Interceptor基础
第一:Servlet Servlet是个接口,全限定名是javax.servlet.Servlet,在javax.servlet包中,在servlet-api.jar(在tomcat自带的lib文件夹 ...
- A. Brain's Photos ——Codeforces Round #368 (Div. 2)
A. Brain's Photos time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...
- Android PagerAdapter的用法
转http://blog.csdn.net/look85/article/details/8563906 在写这个之前,真心需要吐槽一下…关于Android开发中,PageAdapter的用法在网上能 ...
- 解决ie阴影的兼容性
box-shadow:0px 0px 10px #aba25b; -webkit-box-shadow:0px 0px 10px #aba25b; -moz-box-shadow:0px 0px 10 ...
- drawableLayout的使用(转载讲的比较清晰的文章)
创建drawbler的布局文件 初始化drawbler的列表 响应drawable列表点击事件 现在侧滑菜单使用很多,大都是通过SlidingMenu实现.现在也可以通过DrawerLayout 创建 ...
- PAT (Top Level) Practise 1005 Programming Pattern (35)
后缀数组.排序之后得到height数组,然后从上到下将height>=len的都分为一组,然后找到第一组个数最多的输出即可. #pragma comment(linker, "/STA ...
- 浅析PageRank算法
很早就对Google的PageRank算法很感兴趣,但一直没有深究,只有个轮廓性的概念.前几天趁团队outing的机会,在动车上看了一些相关的资料(PS:在动车上看看书真是一种享受),趁热打铁,将所看 ...
- 更改web project 访问项目名称
1.新建web project 2.右键该项目名称------properties 3.访问该项目的URL http://localhost:8806/ssm/.......... 相比书写整个项目名 ...