Revision 39569 trunk/extensions/extSymbology/src/org/gvsig/symbology/gui/layerproperties/LabelClassPreview.java
LabelClassPreview.java | ||
---|---|---|
44 | 44 |
import java.awt.Color; |
45 | 45 |
import java.awt.Dimension; |
46 | 46 |
import java.awt.Font; |
47 |
import java.awt.FontMetrics; |
|
47 | 48 |
import java.awt.Graphics; |
48 | 49 |
import java.awt.Graphics2D; |
49 | 50 |
import java.awt.Rectangle; |
51 |
import java.awt.font.FontRenderContext; |
|
52 |
import java.awt.font.GlyphVector; |
|
53 |
import java.awt.geom.AffineTransform; |
|
50 | 54 |
|
51 | 55 |
import javax.swing.JPanel; |
52 | 56 |
|
53 | 57 |
import com.iver.andami.PluginServices; |
54 | 58 |
import com.iver.cit.gvsig.fmap.core.styles.ILabelStyle; |
59 |
import com.iver.cit.gvsig.fmap.core.symbols.ITextSymbol; |
|
55 | 60 |
import com.iver.cit.gvsig.fmap.rendering.styling.labeling.LabelClass; |
56 | 61 |
|
57 | 62 |
public class LabelClassPreview extends JPanel { |
... | ... | |
102 | 107 |
|
103 | 108 |
// try { |
104 | 109 |
// labelClass.drawInsideRectangle((Graphics2D) g, r); |
105 |
Font myFont = new Font(labelClass.getTextSymbol().getFont().getName(),labelClass.getTextSymbol().getFont().getStyle(),35); |
|
110 |
ITextSymbol sym = labelClass.getTextSymbol(); |
|
111 |
Font myFont = new Font(sym.getFont().getName(),sym.getFont().getStyle(),35); |
|
112 |
AffineTransform saveAT = ((Graphics2D)g).getTransform(); |
|
113 |
|
|
114 |
// AffineTransform tx = new AffineTransform(); |
|
115 |
// tx.setToTranslation(0, -r.getCenterY()); |
|
116 |
saveAT.translate(0, r.getCenterY()); |
|
117 |
((Graphics2D) g).setTransform(saveAT); |
|
118 |
FontRenderContext frc = new FontRenderContext( |
|
119 |
saveAT, false, true);; |
|
106 | 120 |
g.setFont(myFont); |
107 |
g.drawString(PluginServices.getText(this, "text_field"), 0, (int)r.getCenterY()); |
|
121 |
String text = PluginServices.getText(this, "text_field"); |
|
122 |
|
|
123 |
if (sym.isDrawWithHalo()) { |
|
124 |
BasicStroke haloStroke = new BasicStroke(sym.getHaloWidth()); |
|
125 |
char[] charText = new char[text.length()]; |
|
126 |
text.getChars(0, charText.length, charText, 0); |
|
127 |
GlyphVector glyph = myFont.layoutGlyphVector(frc, charText, 0, charText.length, Font.LAYOUT_NO_LIMIT_CONTEXT); |
|
128 |
g.setColor(sym.getHaloColor()); |
|
129 |
((Graphics2D) g).setStroke(haloStroke); |
|
130 |
((Graphics2D) g).draw(glyph.getOutline()); |
|
131 |
} |
|
132 |
g.setColor(sym.getTextColor()); |
|
133 |
g.drawString(PluginServices.getText(this, "text_field"), 0, 0); |
|
108 | 134 |
// } catch (SymbolDrawingException e) { |
109 | 135 |
// SymbologyFactory |
110 | 136 |
// .getWarningSymbol( |
Also available in: Unified diff