Revision 18621 trunk/libraries/libFMap/src/com/iver/cit/gvsig/fmap/layers/FLayers.java

View differences:

FLayers.java
53 53
import java.util.Vector;
54 54

  
55 55
import javax.print.attribute.PrintRequestAttributeSet;
56
import javax.print.attribute.standard.PrintQuality;
56 57
import javax.swing.ImageIcon;
57 58

  
58 59
import org.apache.log4j.Logger;
......
473 474
	public ComposedLayer draw(BufferedImage image, Graphics2D g, ViewPort viewPort,
474 475
			Cancellable cancel,double scale, ComposedLayer group) throws ReadDriverException {
475 476
		boolean bNeedRecalculateCache = false;
476

  
477
		double dpi = MapContext.getScreenDPI();
477 478
		///// CHEMA ComposedLayer
478 479
		long tg1 = System.currentTimeMillis();
479 480
		///// CHEMA ComposedLayer
......
642 643
							///// CHEMA ComposedLayer
643 644

  
644 645

  
645
							((ILabelable) lyr).drawLabels(image, g, viewPort, cancel, scale);
646
							((ILabelable) lyr).drawLabels(image, g, viewPort, cancel, scale, dpi);
646 647
						}
647 648
						bNeedRecalculateCache = true;
648 649
					}
......
720 721
	 */
721 722
	public ComposedLayer print(Graphics2D g, ViewPort viewPort, Cancellable cancel, double scale, PrintRequestAttributeSet properties, ComposedLayer group)
722 723
	throws ReadDriverException {
724
        double dpi = 72;
723 725

  
726
		PrintQuality resolution=(PrintQuality)properties.get(PrintQuality.class);
727
		if (resolution.equals(PrintQuality.NORMAL)){
728
			dpi = 300;
729
		} else if (resolution.equals(PrintQuality.HIGH)){
730
			dpi = 600;
731
		} else if (resolution.equals(PrintQuality.DRAFT)){
732
			dpi = 72;
733
		}
734
		 
724 735
		// TODO: A la hora de imprimir, isWithinScale falla, porque est?
725 736
		// calculando la escala en pantalla, no para el layout.
726 737
		// Revisar esto.
......
760 771
									if (lyr instanceof ILabelable && ((ILabelable) lyr).isLabeled()) {
761 772
										ILabelable lLayer = (ILabelable) lyr;
762 773

  
763
										lLayer.drawLabels(null, g, viewPort, cancel, scale);
774
										lLayer.drawLabels(null, g, viewPort, cancel, scale, dpi);
764 775
									}
765 776
								}
766 777
							} else {
......
784 795
							if (lyr instanceof ILabelable && ((ILabelable) lyr).isLabeled()) {
785 796
								ILabelable lLayer = (ILabelable) lyr;
786 797

  
787
								lLayer.drawLabels(null, g, viewPort, cancel, scale);
798
								lLayer.drawLabels(null, g, viewPort, cancel, scale, dpi);
788 799
							}
789 800
						}
790 801
					} else {

Also available in: Unified diff