// This source code was automatically generated by The Image Sourcerer // For further information, see www.catalysoft.com //package TBD; import java.awt.Toolkit; import java.awt.Image; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import java.lang.reflect.Method; import com.catalysoft.sourcerer.ByteDecoder; public class Ernie { private static byte[] getSegment0() { return new byte[] { 9,-48,-50,-57,-115,-118,-102,-118,-128,-128, -128,-115,-55,-56,-60,-46,-128,-128,-128,-96, -128,-128,-128,-96,-120,-126,-128,-128,-128,124, -104,109,35,-128,-128,-127,120,-55,-60,-63, -44,-8,28,45,21,81,-19,68,-96,-116, 6,-51,84,119,-10,6,94,-120,105,-52, 100,33,-109,17,25,-82,-93,92,-114,109, -13,-85,37,-122,3,-79,14,-55,-72,41, 22,-107,-91,-124,-66,127,-74,-50,0,61, -17,16,12,-18,100,-43,-66,-34,26,-67, -55,-46,-58,108,105,-128,99,104,75,-68, 26,87,99,80,113,-80,122,69,63,71, -8,-70,3,93,-57,-97,15,-127,23,-12, -94,30,120,9,-4,52,-55,-123,63,-106, -101,118,106,-30,26,-13,-114,111,-35,-79, -69,-87,-61,56,-76,-81,62,3,31,47, -70,-88,-46,-23,110,-43,-122,-100,15,102, -27,49,-59,-44,-4,-36,103,-70,111,101, 85,-84,38,-37,69,-3,-38,85,-124,-72, 89,9,-108,-28,35,-75,-11,90,98,84, -76,-103,3,-52,-25,0,8,-38,119,95, -17,70,-67,4,103,4,-114,-12,83,26, -128,-115,-99,109,115,45,59,46,-49,-41, -55,-52,12,-18,54,-34,2,70,20,-26, -114,35,75,6,-51,-96,4,31,-4,-63, -105,54,78,8,22,66,-15,67,40,54, 19,-82,11,-27,-72,97,-122,85,107,124, 66,-59,-100,112,-121,17,66,-16,-93,104, -51,-66,9,17,-99,-118,-76,-15,113,17, 28,-61,-62,91,13,7,-82,-38,65,-74, -95,-10,-113,-31,119,-95,2,-118,-73,-114, -10,74,-32,-28,-48,-123,-54,-49,92,-120, 69,-85,86,-29,-66,46,-53,-94,-54,105, -21,-128,-4,14,42,75,38,87,-113,61, 100,-50,-78,-77,-105,13,104,27,-112,84, 23,31,-77,8,-79,82,10,-18,-3,-118, -73,-42,-26,-122,-69,-125,-53,-66,-16,9, 84,79,-82,-74,3,-112,25,-74,-10,41, 90,-25,-16,75,-62,25,-27,121,-99,-70, -100,127,-59,42,23,-43,-116,100,82,53, 33,31,27,-15,-122,21,-92,100,-30,57, -91,92,-68,92,56,-90,-57,31,-24,-86, 6,122,69,-21,-39,-2,8,-18,-121,-48, 82,-116,40,-121,29,-54,95,122,-33,-14, 90,-73,73,77,93,28,-68,30,-115,73, 119,112,100,-98,104,74,-6,-69,27,-69, 14,4,104,-9,95,-59,-35,-27,96,-59, 7,-48,-105,6,76,69,107,-68,67,22, -38,108,-29,77,39,-112,112,-63,84,90, 64,79,46,84,74,-83,77,-80,34,-15, 100,-95,-58,-98,-42,-116,-3,34,-99,121, 84,108,100,-124,-27,-76,81,95,-61,116, -34,12,-102,-128,-33,-56,-71,-20,50,-48, -96,-50,-26,-58,-81,91,-99,61,23,71, -97,-48,-97,-47,54,-19,2,30,91,-128, -128,-128,-128,-55,-59,-50,-60,46,-62,-32, 2 }; } private static byte[] concat(byte[] array1, byte[] array2) { byte[] result = new byte[array1.length + array2.length]; for (int i=0; i<array1.length; i++) { result[i] = array1[i]; } for (int j=0; j<array2.length; j++) { result[array1.length+j] = array2[j]; } return result; } public static final Image getImage() { Class c = Ernie.class; byte[] imageBytes = new byte[] {}; Method[] methods = c.getDeclaredMethods(); for (int i=0; i<methods.length; i++) { String methodName = methods[i].getName(); if (methodName.startsWith("getSegment")) { try { byte[] segment = (byte[]) methods[i].invoke(Ernie.class, new Object[] {}); for(int j=0; j<segment.length; j++) { segment[j] = ByteDecoder.decode(segment[j]); } imageBytes = concat(imageBytes, segment); } catch (Exception e) { e.printStackTrace(System.err); } } } return Toolkit.getDefaultToolkit().createImage(imageBytes); } public static void main(String[] args) { JFrame frame = new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ImageIcon icon = new ImageIcon(getImage()); JLabel label = new JLabel(icon); frame.getContentPane().add(label); frame.setTitle("Image Preview"); frame.setSize(200, 200); frame.setVisible(true); } }