Text effect: rotation and transparent :: Java/2D Graphics GUI/Gradient Paint [SSISO Community]

SSISO Community (Source & API)

Java
 Animation (4)  Area Calculation  Buffer Paint (3)  Chart (2)
 Clip  Color Model  Color  Composite
 Curve  Font  Full Screen  Geometry
 GIF  Gradient Paint (3)  Graphic Environment  Icon
 Image Filter  Image IO  Image  JAI
Text effect: rotation and transparent
import java.awt.AlphaComposite;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.geom.AffineTransform;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class TextRendering extends JPanel {
  public void paint(Graphics g) {
    Graphics2D g2 = (Graphics2D) g;
    g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
        RenderingHints.VALUE_ANTIALIAS_ON);

    Dimension d = getSize();
    AffineTransform ct = AffineTransform.getTranslateInstance(d.width / 2,
        d.height * 3 / 4);
    g2.transform(ct);

    String s = "www.ssiso.net";
    Font f = new Font("Serif", Font.PLAIN, 128);
    g2.setFont(f);

    int count = 6;
    for (int i = 1; i <= count; i++) {
      AffineTransform oldTransform = g2.getTransform();

      float ratio = (float) i / (float) count;
      g2.transform(AffineTransform.getRotateInstance(Math.PI
          * (ratio - 1.0f)));
      float alpha = ((i == count) ? 1.0f : ratio / 3);
      g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER,
          alpha));
      g2.drawString(s, 0, 0);

      g2.setTransform(oldTransform);
    }
  }

  public static void main(String[] args) {
    JFrame f = new JFrame();
    f.getContentPane().add(new TextRendering());
    f.setSize(800, 800);
    f.show();
  }
}
GradientPaint demo
GradientPaint Ellipse
Text effect: rotation and transparent