641abd7c1cef54d36d8c0e10f3b8d70dfdab24d6
[eltron.git] / src / com / megacz / eltron / MailingLabel.java
1 package com.megacz.eltron;
2
3 import org.ibex.util.*;
4 import org.ibex.graphics.*;
5 import java.io.*;
6 import java.util.*;
7 import gnu.io.*;
8 import java.awt.image.*;
9 import java.awt.*;
10 import java.io.*;
11 import java.awt.Color;
12 import java.awt.Font;
13
14 /** stupid little program to print out mailing labels from a text file */
15 public class MailingLabel {
16
17     public static void main(String[] args) throws Exception {
18         System.setProperty("java.awt.headless", "true");
19         BufferedImage img = new BufferedImage(1200, 800, BufferedImage.TYPE_INT_RGB);
20         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
21         boolean indent = false;
22         Font f = new Font("sansserif", 0, 50);
23         FontMetrics fm = Toolkit.getDefaultToolkit().getFontMetrics(f);
24         Graphics g = img.getGraphics();
25         g.setFont(f);
26         g.setColor(Color.white);
27         g.fillRect(0, 0, img.getWidth(null), img.getHeight(null));
28         g.setColor(Color.black);
29
30         int yp = 200;
31         for(String s = br.readLine(); s!=null; s = br.readLine()) {
32             if (s.trim().equals("")) indent = true;
33
34             if (indent) s = "      "+s;
35             g.drawString(s, 100, yp);
36             yp += fm.getHeight();
37         }
38         int[] data = new int[img.getWidth(null) * img.getHeight(null)];
39         for(int x=0; x<img.getWidth(null); x++)
40             for(int y=0; y<img.getHeight(null); y++)
41                 data[x+y*img.getWidth(null)] = img.getRGB(x, y);
42         Eltron.print(data, img.getWidth(null), img.getHeight(null));
43     }
44
45 }