要求:
把一个图片复制一百张,再给每一张加随机位置的水印
package com.oracle.cl;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Random;
import javax.imageio.ImageIO;
public class PrintImage
{
static Random random=new Random();
public static void main(String[] args) throws IOException
{
// 把一个图片复制一百张
File file=new File("D:\\hello.jpg");
InputStream in=new FileInputStream(file);
byte[] b=new byte[in.available()];
in.read(b);
for(int i=1;i<=100;i++)
{
File f2=new File("D:\\export\\hello"+i+".jpg");
File parentFile = f2.getParentFile();
if(!parentFile.exists())
{
parentFile.mkdirs();
}
OutputStream out=new FileOutputStream(f2);
out.write(b);
out.close();
}
// 批量加水印
File dir=new File("D:\\export");
File[] listFiles = dir.listFiles();
for(int i=0;i<listFiles.length;i++)
{
BufferedImage read = ImageIO.read(listFiles[i]);
Graphics graphics = read.getGraphics();
graphics.setColor(Color.PINK);
int heigh=read.getHeight();
int width=read.getWidth();
int x=random.nextInt(width);
int y=random.nextInt(heigh);
graphics.setFont(new Font("微软雅黑",Font.BOLD,20));
graphics.drawString("http://www.baidu.com", x, y);
ImageIO.write(read, "jpg", listFiles[i]);
}
}
}
运行结果:


417



被折叠的 条评论
为什么被折叠?



