}
   public static String[] getAvailableFontFamilyNames() {      try {         /* return GraphicsEnvironment.getLocalGraphicsEnvironment()                                   .getAvailableFontFamilyNames(); */         Class GEClass = Class.forName("java.awt.GraphicsEnvironment");         Object GEInstance =               GEClass.getMethod("getLocalGraphicsEnvironment", null)               .invoke(null, null);         String[] nameArray = (String[])               GEClass.getMethod("getAvailableFontFamilyNames", null)               .invoke(GEInstance, null);         java.util.Vector nameVector = new java.util.Vector(nameArray.length);         for(int i = 0, j; i < nameArray.length; i++) {            for(j = 0; j < HIDEFONTS.length; j++)               if(nameArray[i].indexOf(HIDEFONTS[j]) >= 0) break;            if(j == HIDEFONTS.length)               nameVector.addElement(nameArray[i]);         }	 String[] _array = new String[nameVector.size()];	 nameVector.copyInto(_array);	 return _array;      } catch(Exception ex) {         return Toolkit.getDefaultToolkit().getFontList();      }   }