zhangli.lisa 发表于 2013-1-15 02:51:38

将文字写到图片上

import java.io.*;import com.sun.image.codec.jpeg.*;import java.awt.*;import java.awt.image.BufferedImage;import java.awt.image.*;import javax.swing.*;public class Test{    public static void main(String[]args) throws Exception{                //1.jpg是你的 主图片的路径      InputStream is = new FileInputStream("c:/1.jpg");                        //通过JPEG图象流创建JPEG数据流解码器      JPEGImageDecoder jpegDecoder = JPEGCodec.createJPEGDecoder(is);      //解码当前JPEG数据流,返回BufferedImage对象      BufferedImage buffImg = jpegDecoder.decodeAsBufferedImage();      //得到画笔对象      Graphics g = buffImg.getGraphics();                //创建你要附加的图象。      //2.jpg是你的小图片的路径      //ImageIcon imgIcon = new ImageIcon("c:/2.jpg");               //得到Image对象。      //Image img = imgIcon.getImage();                //将小图片绘到大图片上。      //5,300 .表示你的小图片在大图片上的位置。       // g.drawImage(img,5,330,null);                              //设置颜色。      g.setColor(Color.red);                        //最后一个参数用来设置字体的大小      Font f = new Font("楷体_GB2312",Font.BOLD+Font.ITALIC,100);                g.setFont(f);                //10,20 表示这段文字在图片上的位置(x,y) .第一个是你设置的内容。      g.drawString("长江",150,300);                g.dispose();                              OutputStream os = new FileOutputStream("c:/union.jpg");                //创键编码器,用于编码内存中的图象数据。                JPEGImageEncoder en = JPEGCodec.createJPEGEncoder(os);      en.encode(buffImg);                        is.close();      os.close();                System.out.println ("合成结束。。。。。。。。");            }      }
页: [1]
查看完整版本: 将文字写到图片上