public static void printOperatorList() { OperationRegistry operationRegistry = JAI.getDefaultInstance().getOperationRegistry(); List<OperationDescriptor> descriptors = (List<OperationDescriptor>) operationRegistry.getDescriptors(OperationDescriptor.class); Collections.sort( descriptors, new Comparator<OperationDescriptor>() { public int compare(OperationDescriptor descriptor1, OperationDescriptor descriptor2) { return descriptor1.getName().compareTo(descriptor2.getName()); } }); int columnCount = 0; for (OperationDescriptor descriptor : descriptors) { columnCount = Math.max(columnCount, descriptor.getName().length()); } for (OperationDescriptor descriptor : descriptors) { String namePart = descriptor.getName(); if (namePart.length() < columnCount) { namePart += spaces(columnCount - namePart.length()); } String[][] resources = descriptor.getResources(Locale.getDefault()); String description = resources[3][1]; System.out.println(namePart + " - " + description); } }