1
2 package org.freehep.graphicsio;
3
4 import java.awt.Dimension;
5 import java.awt.Insets;
6 import java.util.HashMap;
7 import java.util.Map;
8
9
10
11
12
13
14
15
16
17
18 public class PageConstants {
19
20 private PageConstants() {
21 }
22
23
24 public static final String ORIENTATION = "Orientation";
25
26 public static final String PORTRAIT = "Portrait";
27
28 public static final String LANDSCAPE = "Landscape";
29
30 public static final String BEST_FIT = "Best Fit";
31
32 public final static String[] getOrientationList() {
33 return new String[] { PORTRAIT, LANDSCAPE,
34 }
35
36
37 public static final String PAGE_SIZE = "PageSize";
38
39 public static final String INTERNATIONAL = "International";
40
41 public static final String A3 = "A3";
42
43 public static final String A4 = "A4";
44
45 public static final String A5 = "A5";
46
47 public static final String A6 = "A6";
48
49
50
51
52
53 public static final String CUSTOM_PAGE_SIZE = "Custom PageSize";
54
55 public static final String LETTER = "Letter";
56
57 public static final String LEGAL = "Legal";
58
59 public static final String EXECUTIVE = "Executive";
60
61 public static final String LEDGER = "Ledger";
62
63 public static final String[] getSizeList() {
64 return new String[] { INTERNATIONAL, A4, LETTER, A3, LEGAL, A5, A6,
65 EXECUTIVE, LEDGER };
66 }
67
68 public static final Dimension getSize(String size) {
69 return getSize(size, PORTRAIT);
70 }
71
72 public static final Dimension getSize(String size, String orientation) {
73 Dimension d = (Dimension) sizeTable.get(size);
74 if (orientation.equals(PORTRAIT)) {
75 return d;
76 } else {
77 return new Dimension(d.height, d.width);
78 }
79 }
80
81 private static final Map sizeTable = new HashMap();
82 static {
83 sizeTable.put(INTERNATIONAL, new Dimension(595, 791));
84 sizeTable.put(A3, new Dimension(842, 1191));
85 sizeTable.put(A4, new Dimension(595, 842));
86 sizeTable.put(A5, new Dimension(420, 595));
87 sizeTable.put(A6, new Dimension(298, 420));
88 sizeTable.put(LETTER, new Dimension(612, 791));
89 sizeTable.put(LEGAL, new Dimension(612, 1009));
90 sizeTable.put(EXECUTIVE, new Dimension(539, 720));
91 sizeTable.put(LEDGER, new Dimension(791, 1225));
92 }
93
94
95 public static final String PAGE_MARGINS = "PageMargins";
96
97 public static final String SMALL = "Small";
98
99 public static final String MEDIUM = "Medium";
100
101 public static final String LARGE = "Large";
102
103 private static final Map marginTable = new HashMap();
104 static {
105 marginTable.put(SMALL, new Insets(20, 20, 20, 20));
106 marginTable.put(MEDIUM, new Insets(30, 30, 30, 30));
107 marginTable.put(LARGE, new Insets(40, 40, 40, 40));
108 }
109
110 public static final Insets getMargins(String size) {
111 return (Insets) marginTable.get(size);
112 }
113
114 public static final Insets getMargins(Insets insets, String orientation) {
115 if (orientation.equals(PORTRAIT)) {
116 return insets;
117 } else {
118
119 return new Insets(insets.left, insets.bottom, insets.right,
120 insets.top);
121 }
122 }
123
124
125 public static final String FIT_TO_PAGE = "FitToPage";
126
127
128 public static final String TRANSPARENT = "Transparent";
129
130 public static final String BACKGROUND = "Background";
131
132 public static final String BACKGROUND_COLOR = "BackgroundColor";
133 }