package org.jzy3d.plot3d.text.renderers.jogl;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.font.FontRenderContext;
import java.awt.font.GlyphVector;
import java.awt.geom.Rectangle2D;
public class DefaultTextStyle implements ITextStyle {
protected Color color;
public DefaultTextStyle(Color color) {
this.color = color;
}
@Override
public boolean intensityOnly() {
return false;
}
@Override
public Rectangle2D getBounds(CharSequence str, Font font,
FontRenderContext frc) {
return getBounds(str.toString(), font, frc);
}
@Override
public Rectangle2D getBounds(String str, Font font, FontRenderContext frc) {
return getBounds(font.createGlyphVector(frc, str), frc);
}
@Override
public Rectangle2D getBounds(GlyphVector gv, FontRenderContext frc) {
Rectangle2D stringBounds = gv.getPixelBounds(frc, 0, 0);
return new Rectangle2D.Double(stringBounds.getX(), stringBounds.getY(), stringBounds.getWidth(), stringBounds.getHeight());
}
@Override
public void drawGlyphVector(Graphics2D graphics, GlyphVector str, int x,
int y) {
graphics.setColor(Color.WHITE);
graphics.setPaint(/*new GradientPaint(x, y, color, x, y + gradientSize
/ 2, color2, true)*/color);
graphics.drawGlyphVector(str, x, y);
}
@Override
public void draw(Graphics2D graphics, String str, int x, int y) {
graphics.setColor(Color.WHITE);
graphics.setPaint(/*new GradientPaint(x, y, color1, x, y + gradientSize
/ 2, color2, true)*/color);
graphics.drawString(str, x, y);
}
}
Ads help maintain this website.