java 实现获取本机 字体包

来源:互联网 发布:淘宝申请退款 编辑:程序博客网 时间:2024/04/30 15:06
package com.LovePatPrint.common;import java.awt.*; import java.util.*; import java.util.List;import java.text.*; /** * @category 获取系统字体包 * @author lmc * @time 2014-6-16 16:08:59 */public class GetSysFont{  public static void main(String[] args){    List font=GetSysFont.returnFont();    if(font.size()>0)    {    for(int i=0;i<font.size();i++)    {    System.out.println(font.get(i));    }    }    }        public static List returnFont()    {    List list=new ArrayList();    Font[] fonts=GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts();    for(int i=0;i<fonts.length;i++){     list.add(fonts[i].getFamily());//获取字体    }     List array=removeDeuplicate(list);//去除重复    String[] result=new String[array.size()];     for(int i=0;i<array.size();i++)    {     result[i]=array.get(i).toString();    }    //按首字母排序开始    Comparator<Object> com=Collator.getInstance(java.util.Locale.CHINA);            Arrays.sort(result,com);           List font=new ArrayList();        for(String i:result){               font.add(i);        }          //按首字母排序结束        return font;    }    public static List removeDeuplicate(List arlList){HashSet h=new HashSet(arlList);arlList.clear();arlList.addAll(h);List list=new ArrayList();list=arlList;return list;}  }

0 0