pf.setOrientation(nOrientacion);
printJob = PrinterJob.getPrinterJob();
if (printJob != null)
{
HashPrintRequestAttributeSet printRequestAttributeSet = new HashPrintRequestAttributeSet();
printRequestAttributeSet.add(PrintQuality.DRAFT);
// tenemos que calcular el n�mero de p�ginas. Para ello vamos a suponer que el papel utilizado es din A4.
int numpaginas = getNumPaginas(ElComponenteAImprimir,159.2 , 246.2, PageFormat.PORTRAIT);
pageRanges = new PageRanges(1, numpaginas); // una sola pagina
printRequestAttributeSet.add(pageRanges);
if (printJob.printDialog(printRequestAttributeSet))
{
try {
pageRanges = (PageRanges) printRequestAttributeSet.get(PageRanges.class);
MediaPrintableArea mpa = (MediaPrintableArea)printRequestAttributeSet.get(MediaPrintableArea.class);
float medidas[] = mpa.getPrintableArea(MediaPrintableArea.MM); // x, y , ancho y alto
OrientationRequested orientation = (OrientationRequested) printRequestAttributeSet.get(OrientationRequested.class);
if (orientation==null)
pf.setOrientation(PageFormat.PORTRAIT);
else if (orientation.equals(OrientationRequested.LANDSCAPE))
pf.setOrientation(PageFormat.LANDSCAPE);
else if (orientation.equals(OrientationRequested.PORTRAIT))