import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.net.URL;
import javax.imageio.ImageIO;
public class Test {
public static BufferedImage resize(int targetWidth, int targetHeight,
BufferedImage src) {
double scaleW = (double) targetWidth / (double) src.getWidth() ;
double scaleH = (double) targetHeight / (double) src.getHeight() ;
double scale = scaleW < scaleH ? scaleW : scaleH;
BufferedImage result = new BufferedImage((int) (src.getWidth() * scale),
(int) (src.getHeight() * scale), BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = result.createGraphics();
g2d.drawImage(src, 0, 0, result.getWidth(), result.getHeight(), null);
g2d.dispose();
return result;
}
public static void main(String[] args) {
try {
// InputStream is1 = new FileInputStream("C:\\Users\\SHCL\\Desktop\\美化二维码\\效果图\\小说\\1.png");
// InputStream is2 = new FileInputStream("C:\\Users\\SHCL\\Desktop\\美化二维码\\效果图\\小说\\3.png");
// BufferedImage bi1 = ImageIO.read(is1);
// BufferedImage bi2 = ImageIO.read(is2);
BufferedImage bi1 = ImageIO.read(new URL("http://ossmh.cn/uploads/picture/740caa3c5621ba609f493.png"));
BufferedImage bi2 = ImageIO.read(new URL("https://oss-cn-shanghai.aliyuncs.com/lize/40ed36bf7b4148688bc03e3710208b1f.png"));
bi2 = resize(182, 182, bi2);
Graphics g = bi1.getGraphics();
g.drawImage(bi2, bi1.getWidth() - bi2.getWidth() - 37, bi1.getHeight() - bi2.getHeight() - 25, null);
g.dispose();
File outputfile = new File("E:/9.jpg");
//此处要写PNG否则可能会出现遮罩层
ImageIO.write(bi1, "png", outputfile);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("结束");
}
}