1 36 37 40 41 42 package java2d.demos.Lines; 43 44 45 import static java.awt.Color .*; 46 import java.awt.*; 47 import java.awt.geom.Line2D ; 48 import java.awt.font.TextLayout ; 49 import java.awt.font.FontRenderContext ; 50 import java2d.Surface; 51 52 import static java.awt.BasicStroke .*; 53 54 55 58 public class Caps extends Surface { 59 60 private static int cap[] = { CAP_BUTT, CAP_ROUND, CAP_SQUARE }; 61 private static String desc[] = { "Butt Cap", "Round Cap", "Square Cap" }; 62 63 64 public Caps() { 65 setBackground(WHITE); 66 } 67 68 69 public void render(int w, int h, Graphics2D g2) { 70 FontRenderContext frc = g2.getFontRenderContext(); 71 Font font = g2.getFont(); 72 g2.setColor(BLACK); 73 for (int i=0; i < cap.length; i++) { 74 g2.setStroke(new BasicStroke (15, cap[i], JOIN_MITER)); 75 g2.draw(new Line2D.Float (w/4,(i+1)*h/4,w-w/4,(i+1)*h/4)); 76 TextLayout tl = new TextLayout (desc[i], font, frc); 77 tl.draw(g2,(float)(w/2-tl.getBounds().getWidth()/2),(i+1)*h/4-10); 78 } 79 } 80 81 82 public static void main(String s[]) { 83 createDemoFrame(new Caps()); 84 } 85 } 86 | Popular Tags |