Java 2D Graphics final TextBouncer bouncer = new
Java 2D Graphics final TextBouncer bouncer = new TextBouncer(s, defaultFont); Frame f = new AnimationFrame(bouncer); f.setFont(new Font(”Serif”, Font.PLAIN, 12)); controls.add(bouncer.createCheckbox(”Antialiasing”, TextBouncer.ANTIALIASING)); controls.add(bouncer.createCheckbox(”Gradient”, TextBouncer.GRADIENT)); controls.add(bouncer.createCheckbox(”Shear”, TextBouncer.SHEAR)); controls.add(bouncer.createCheckbox(”Rotate”, TextBouncer.ROTATE)); controls.add(bouncer.createCheckbox(”Axes”, TextBouncer.AXES)); Panel fontControls = new Panel(); choice.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent ie) { Font font = new Font(choice.getSelectedItem(), Font.PLAIN, size); bouncer.setFont(font); } }); fontControls.add(choice); Panel allControls = new Panel(new GridLayout(2, 1)); allControls.add(controls); allControls.add(fontControls); f.add(allControls, BorderLayout.NORTH); f.setVisible(true); } private boolean mAntialiasing = false, mGradient = false; private boolean mShear = false, mRotate = false, mAxes = false; public static final int ANTIALIASING = 0; public static final int GRADIENT = 1; public static final int SHEAR = 2; public static final int ROTATE = 3; public static final int AXES = 5; private float mDeltaX, mDeltaY; private float mX, mY, mWidth, mHeight; private float mTheta; private float mShearX, mShearY, mShearDeltaX, mShearDeltaY; private String mString; public TextBouncer(String s, Font f) { mString = s; setFont(f); Random random = new Random(); mX = random.nextFloat() * 500; mY = random.nextFloat() * 500; mDeltaX = random.nextFloat() * 3; mDeltaY = random.nextFloat() * 3; mShearX = random.nextFloat() / 2; mShearY = random.nextFloat() / 2; mShearDeltaX = mShearDeltaY = .05f; FontRenderContext frc = new FontRenderContext(null, true, false); Rectangle2D bounds = getFont().getStringBounds(mString, frc); mWidth = (float)bounds.getWidth(); mHeight = (float)bounds.getHeight(); // Make sure points are within range. addComponentListener(new ComponentAdapter() { public void componentResized(ComponentEvent ce) { Dimension d = getSize(); if (mX < 0) mX = 0; else if (mX + mWidth >= d.width) mX = d.width - mWidth - 1; if (mY < 0) mY = 0; page 264
Note: If you are looking for good and high quality web space to host and run your application check Lunarwebhost Java Web Hosting services