C#实现将Email地址转成图片显示的方法


本文实例讲述了C#实现将Email地址转成图片显示的方法。分享给大家供大家参考。具体实现方法如下:

private final static IndexColorModel icm = createIndexColorModel();
/**
 * 生成电子邮件图片
 * @param email
 * @param out
 * @throws IOException
 */
public static void MakeEmailImage(String email, OutputStream out) throws IOException {
  int height = 22;
  BufferedImage bi = new BufferedImage(255,height,BufferedImage.TYPE_INT_RGB);    
  Graphics2D g = (Graphics2D)bi.getGraphics();
  Font mFont = new Font("Verdana", Font.PLAIN, 14);
  g.setFont(mFont);
  g.drawString(email, 2, 19);
  FontMetrics fm = g.getFontMetrics();
  int new_width = fm.charsWidth(email.toCharArray(), 0, email.length()) + 4;
  int new_height = fm.getHeight();
  BufferedImage nbi = new BufferedImage(new_width, new_height, BufferedImage.TYPE_BYTE_INDEXED, icm);
  Graphics2D g2 = (Graphics2D)nbi.getGraphics();
  g2.setColor(new Color(0,0,0,0));//透明
  g2.fillRect(0,0,new_width,new_height);
  g2.setFont(mFont);
  g2.setColor(new Color(200,0,0));
  g2.drawString(email, 2, new_height-4);
  ImageIO.write(nbi, "gif", out);
}

希望本文所述对大家的C#程序设计有所帮助。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3