Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Alinear a la derecha importes en PrinterJob

Hola a todos:
Estoy utilizando la clase PrinterJob para imprimir un ticket y quisiera saber como alinear varios importes a la derecha:
Graphics g;
g.drawString("4.56", 30, 10);
g.drawString("12.32", 30, 20);
Pretendo que se muestre así más o menos :
TICKET DE VENTA
1º Artículo ________4.56
2º Artículo ______ 12,32
---------------------------------

Gracias

abril 3, 2015 | Unregistered CommenterJorgito_p

Estimado existe un procedimiento por el cual se puede calcular el ancho que tiene un texto al momento de pintarlo, por lo tanto con ello se pueden efectuar los calculos adecuados para alinear adecuadamente. El procedimiento se detalle en un documento en:
http://docs.oracle.com/javase/tutorial/2d/text/measuringtext.html

pero en resumen la forma de obtenerlo es asi:


// get metrics from the graphics
FontMetrics metrics = graphics.getFontMetrics(font);
// get the height of a line of text in this
// font and render context
int hgt = metrics.getHeight();
// get the advance of my text in this font
// and render context
int adv = metrics.stringWidth(text);
// calculate the size of a box to hold the
// text with some padding.
Dimension size = new Dimension(adv+2, hgt+2);

abril 4, 2015 | Unregistered CommenterGerman Morocho