文件流转图片java代码 java传文件流是穿什么

java文本文件转化为图片文件怎么弄?

文件在计算机中都是以二进制保存的,但系统是以文件头来区分各种文件格式的。

创新互联建站是一家专注于成都做网站、网站设计与策划设计,师宗网站建设哪家好?创新互联建站做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:师宗等地区。师宗做网站价格咨询:028-86922220

也就是说,仅仅更改后缀名是不行的。

按照你说想的,可以这么来做:

1、读取txt文本的每一行

2、创建BufferedImage图片,然后在图片上画读取到的文本

下面给出示例程序:

测试类 TextToImageExample.java

import java.io.File;

import java.util.Scanner;

/**

* 文本转图片测试类

* @author YY2924 2014/11/18

* @version 1.0

*/

public class TextToImageExample {

public static void main(String[] args) {

Scanner in = new Scanner(System.in);

System.out.print("输入TXT文本名称 (例如: D:/java.txt ):");

String textFileName = in.nextLine();

System.out.print("输入保存的图片名称 (例如: D:/java.jpg):");

String imageFileName = in.nextLine();

TextToImage convert = new TextToImage(new File(textFileName), new File(imageFileName));

boolean success = convert.convert();

System.out.println("文本转图片:" + (success ? "成功" : "失败"));

}

}

文本转图片类 TextToImage.java

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;

/**

* 文本转图片类

* @author YY2924 2014/11/18

* @version 1.0

*/

public class TextToImage {

/** 文本文件  */

private File textFile;

/** 图片文件 */

private File imageFile;

/** 图片 */

private BufferedImage image;

/** 图片宽度  */

private final int IMAGE_WIDTH = 400;

/** 图片高度 */

private final int IMAGE_HEIGHT = 600;

/** 图片类型  */

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 = 15;

int lineNum = 1;

try {

while((line = reader.readLine()) != null){

g.drawString(line, 0, 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(Color.WHITE); //设置背景色

g.fillRect(0, 0, IMAGE_WIDTH, IMAGE_HEIGHT);//绘制背景

g.setColor(Color.BLACK); //设置前景色

g.setFont(new Font("微软雅黑", Font.PLAIN, 12)); //设置字体

return g;

}

}

特别注意:程序中使用到了com.sun.image.codec.jpeg.JPEGImageEncoder和 com.sun.image.codec.jpeg.JPEGCodec ,这 两个是sun的专用API,Eclipse会报错。

解决办法:

Eclipse软件,Windows-Preferences-Java-Complicer-Errors/Warnings,Deprecated and restricted API-Forbidden reference 改为 Warnning。

如果还是报错,在工程上build path,先移除JRE System Library,然后再添加JRE System Library。

java pdf转图片问题

搜索添加spire.pdf.jar文件为依赖,pdf转图片代码如下:

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import com.spire.pdf.PdfDocument;

import javax.imageio.ImageIO;

public class toImage {

  public static void main(String[] args) throws IOException {

      //加载PDF文件

      PdfDocument doc = new PdfDocument();

      doc.loadFromFile("Sample.pdf");

      //保存PDF的每一页到图片

      BufferedImage image;

      for (int i = 0; i doc.getPages().getCount(); i++) {

          image = doc.saveAsImage(i);

          File file = new File( String.format("ToImage-img-%d.png", i));

          ImageIO.write(image, "PNG", file);

      }

      doc.close();

  }

}

从文件中读取图片和写入图片到文件里的java代码是什么?

首先导入各种需要的包:

import java.awt.Image;

import javax.imageio.ImageIO;

import java.io.*;

读取图片的方法如下:

Image[] array = new Image[10];

Image image = ImageIO.read(new File("d:\\source.gif"));//根据你实际情况改文件路径吧

array[0] = image;

图片读出来了。

如果你有一个Image对象,想把它写入文件可以这样做:

BufferedImage image = ImageIO.read(new File("d:\\source.gif"));

//要想保存这个对象的话你要把image声明为BufferedImage 类型

ImageIO.write(image, "png", new File("f:\\test.png"));


当前标题:文件流转图片java代码 java传文件流是穿什么
当前网址:http://azwzsj.com/article/ddddphc.html