实现水印效果(1)
public static void main(String[] args) throws IOException, FontFormatException { String name = "d:/Auser/2.png"; BufferedImage dar = ImageIO.read(new File(name)); Graphics2D g =dar.createGraphics(); g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_GASP); g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, RenderingHints.VALUE_STROKE_DEFAULT); //写字 g.setColor(new Color(255,0,0,100));//透明色 Font font =new Font("宋体",Font.BOLD,60); //Font font =Font.createFont(Font.TYPE1_FONT,new File("/a.ttf")); font =font.deriveFont(100f);//字体大小 font = font.deriveFont(Font.BOLD); g.setFont(font); String text ="123ghjkasda"; int x=200; int y=100; g.drawString(text,x,y); g.dispose(); String n1 = name.substring(0,name.lastIndexOf("."));//从零开始节到最后一个点,不包含点 String n2 = name.substring(name.lastIndexOf("."));//从最后一个点截出来 String nn =n1 +"_text"+n2;//(123_text.jpg) ImageIO.write(dar,"png",new File(nn));//改完后是原名的话就会覆盖 //执行完打开 Runtime run =Runtime.getRuntime(); run.exec("cmd /k start "+ nn); }