Revision 28231

View differences:

trunk/applications/appgvSIG/src/com/iver/cit/gvsig/project/documents/layout/FLayoutDraw.java
47 47
import java.awt.Color;
48 48
import java.awt.Component;
49 49
import java.awt.Graphics2D;
50
import java.awt.Image;
50 51
import java.awt.geom.AffineTransform;
51 52
import java.awt.geom.Point2D;
52 53
import java.awt.geom.Rectangle2D;
......
88 89
public class FLayoutDraw {
89 90
    private Layout layout;
90 91

  
92

  
91 93
    /**
92 94
     * Crea un nuevo FLayoutDraw.
93 95
     *
......
110 112
     */
111 113
    public void drawLayout(Graphics2D g2, BufferedImage imgBase)
112 114
        throws ReadDriverException {
113
        layout.getLayoutControl().setCancelDrawing(false);
115
    	LayoutControl layoutControl=layout.getLayoutControl();
116
    	LayoutContext layoutContext= layout.getLayoutContext();
117
    	Attributes attributes=layoutContext.getAtributes();
118
    	Rectangle2D rLayout=layoutControl.getRect();
119
    	AffineTransform at=layoutContext.getAT();
120

  
121
    	layoutControl.setCancelDrawing(false);
114 122
        double scale = 0;
115
        scale = layout.getLayoutControl().getRect().height / layout.getLayoutContext().getAtributes().m_sizePaper.getAlto() * 1;
123
        scale = rLayout.getHeight() / attributes.m_sizePaper.getAlto() * 1;
116 124
        AffineTransform escalado = new AffineTransform();
117 125
        AffineTransform translacion = new AffineTransform();
118
        translacion.setToTranslation(layout.getLayoutControl().getRect().getMinX(),
119
            layout.getLayoutControl().getRect().getMinY());
126
        translacion.setToTranslation(rLayout.getMinX(),
127
            rLayout.getMinY());
120 128
        escalado.setToScale(scale, scale);
121
        layout.getLayoutControl().getAT().setToIdentity();
122
        layout.getLayoutControl().getAT().concatenate(translacion);
123
        layout.getLayoutControl().getAT().concatenate(escalado);
124
        layout.getLayoutContext().getAtributes().setDistanceUnitX(layout.getLayoutControl().getRect());
125
        layout.getLayoutContext().getAtributes().setDistanceUnitY(layout.getLayoutControl().getRect());
126
        IFFrame[] fframes=layout.getLayoutContext().getFFrames();
129
        at.setToIdentity();
130
        at.concatenate(translacion);
131
        at.concatenate(escalado);
132
        attributes.setDistanceUnitX(rLayout);
133
        attributes.setDistanceUnitY(rLayout);
134
        IFFrame[] fframes=layoutContext.getFFrames();
127 135
        for (int i = 0; i < fframes.length; i++) {
128 136
        	IFFrame f = fframes[i];
129 137
        	//original, lento (NO MAC)
130
    		f.draw(g2, layout.getLayoutControl().getAT(), layout.getLayoutControl().getVisibleRect(),imgBase);
138
    		f.draw(g2, at, layoutControl.getVisibleRect(),imgBase);
131 139
        	// ESTILO MAC
132 140
        	/* if (f instanceof FFrameView)
133 141
        	{
134 142
        		FFrameView fframe = (FFrameView) f;
135
        		BufferedImage img = new BufferedImage((int) layout.getLayoutControl().getWidth(),
136
    				(int) layout.getLayoutControl().getHeight(), BufferedImage.TYPE_INT_ARGB);
143
        		BufferedImage img = new BufferedImage((int) layoutControl.getWidth(),
144
    				(int) layoutControl.getHeight(), BufferedImage.TYPE_INT_ARGB);
137 145

  
138 146

  
139
        		fframe.draw(img.createGraphics(), layout.getLayoutControl().getAT(),	layout.getLayoutControl().getVisibleRect(), imgBase);
140
        		g2.drawImage(img, 0, 0, layout.getLayoutControl());
147
        		fframe.draw(img.createGraphics(), at,	layoutControl.getVisibleRect(), imgBase);
148
        		g2.drawImage(img, 0, 0, layoutControl);
141 149
        		fframe.setBufferedImage(img);
142 150
        	}
143 151
        	else
144 152
        	{
145
        		f.draw(g2, layout.getLayoutControl().getAT(), layout.getLayoutControl().getVisibleRect(),imgBase);
153
        		f.draw(g2, at, layoutControl.getVisibleRect(),imgBase);
146 154
        	} */
147 155

  
148 156
            //          Dibuja el s?mbolo de que contiene un tag.
......
152 160
        }
153 161

  
154 162
        if (!(fframes.length==0)) {
155
            layout.getLayoutControl().setStatus(LayoutControl.ACTUALIZADO);
163
            layoutControl.setStatus(LayoutControl.ACTUALIZADO);
156 164
        } else {
157
            layout.getLayoutControl().setStatus(LayoutControl.DESACTUALIZADO);
165
            layoutControl.setStatus(LayoutControl.DESACTUALIZADO);
158 166
        }
159 167
    }
160 168

  
......
164 172
     * @param g Graphics2D
165 173
     */
166 174
    public void drawRectangle(Graphics2D g) {
167
        double unidadesX = layout.getLayoutContext().getAtributes().getNumUnitsX();
168
        double unidadesY = layout.getLayoutContext().getAtributes().getNumUnitsY();
175
    	Attributes attributes=layout.getLayoutContext().getAtributes();
176
    	Rectangle2D rLayout=layout.getLayoutControl().getRect();
177
    	AffineTransform at=layout.getLayoutContext().getAT();
169 178

  
179
    	double unidadesX = attributes.getNumUnitsX();
180
        double unidadesY = attributes.getNumUnitsY();
181

  
170 182
        if ((unidadesX == 0) && (unidadesY == 0)) {
171 183
            return;
172 184
        }
173 185

  
174 186
        g.setColor(Color.darkGray);
175 187

  
176
        Rectangle2D.Double rectBig = new Rectangle2D.Double(layout.getLayoutControl().getRect().x,
177
                layout.getLayoutControl().getRect().y, layout.getLayoutControl().getRect().width,
178
                layout.getLayoutControl().getRect().height);
188
        Rectangle2D.Double rectBig = new Rectangle2D.Double(rLayout.getX(),
189
                rLayout.getY(), rLayout.getWidth(),
190
                rLayout.getHeight());
179 191

  
180
        g.fill3DRect((int) rectBig.x + 7, (int) rectBig.y + 7,
181
            (int) rectBig.width, (int) rectBig.height, true);
192
        g.fillRect((int) rectBig.x + 7, (int) rectBig.y + 7,
193
            (int) rectBig.width, (int) rectBig.height);
182 194

  
183 195
        Rectangle2D.Double r = new Rectangle2D.Double();
184 196

  
185
        if (layout.getLayoutContext().getAtributes().isMargin()) {
186
            r = new Rectangle2D.Double((layout.getLayoutControl().getRect().x +
197
        if (attributes.isMargin()) {
198

  
199
            r = new Rectangle2D.Double((rLayout.getX() +
187 200
                    FLayoutUtilities.fromSheetDistance(
188
                        layout.getLayoutContext().getAtributes().m_area[2], layout.getLayoutControl().getAT())),
189
                    (layout.getLayoutControl().getRect().y +
201
                        attributes.m_area[2], at)),
202
                    (rLayout.getY() +
190 203
                    FLayoutUtilities.fromSheetDistance(
191
                        layout.getLayoutContext().getAtributes().m_area[0], layout.getLayoutControl().getAT())),
192
                    (layout.getLayoutControl().getRect().width -
193
                    FLayoutUtilities.fromSheetDistance(layout.getLayoutContext().getAtributes().m_area[2] +
194
                        layout.getLayoutContext().getAtributes().m_area[3], layout.getLayoutControl().getAT())),
195
                    (layout.getLayoutControl().getRect().height -
196
                    FLayoutUtilities.fromSheetDistance(layout.getLayoutContext().getAtributes().m_area[0] +
197
                        layout.getLayoutContext().getAtributes().m_area[1], layout.getLayoutControl().getAT())));
204
                        attributes.m_area[0], at)),
205
                    (rLayout.getWidth() -
206
                    FLayoutUtilities.fromSheetDistance(
207
                    	attributes.m_area[2] +
208
                        attributes.m_area[3], at)),
209
                    (rLayout.getHeight() -
210
                    FLayoutUtilities.fromSheetDistance(
211
                    	attributes.m_area[0] +
212
                        attributes.m_area[1], at)));
198 213
        } else {
199
            r.setRect(layout.getLayoutControl().getRect());
214
            r.setRect(rLayout);
200 215
        }
201 216

  
202 217
        g.setColor(Color.white);
203
        g.fill(layout.getLayoutControl().getRect());
218
        g.fill(rLayout);
204 219

  
205 220
        g.setColor(Color.darkGray);
206
        g.drawRect((int) layout.getLayoutControl().getRect().getMinX(),
207
            (int) layout.getLayoutControl().getRect().getMinY(),
208
            (int) layout.getLayoutControl().getRect().getWidth(),
209
            (int) layout.getLayoutControl().getRect().getHeight());
221
        g.drawRect((int) rLayout.getMinX(),
222
            (int) rLayout.getMinY(),
223
            (int) rLayout.getWidth(),
224
            (int) rLayout.getHeight());
210 225

  
211
        if (layout.getLayoutContext().getAtributes().isMargin()) {
226
        if (attributes.isMargin()) {
212 227
            g.setColor(Color.black);
213 228

  
214 229
            g.drawRect((int) r.x, (int) r.y, (int) r.width, (int) r.height);
......
222 237
     */
223 238
    public void drawGrid(Graphics2D g) {
224 239
        int unidadesMin = 6;
225
        double unidadesX = layout.getLayoutContext().getAtributes().getUnitInPixelsX();
226
        double unidadesY = layout.getLayoutContext().getAtributes().getUnitInPixelsY();
240
        LayoutContext layoutContext= layout.getLayoutContext();
241
        Attributes attributes=layoutContext.getAtributes();
242
    	Rectangle2D rLayout=layout.getLayoutControl().getRect();
243
    	AffineTransform at=layoutContext.getAT();
227 244

  
245

  
246
    	double unidadesX = attributes.getUnitInPixelsX();
247
        double unidadesY = attributes.getUnitInPixelsY();
248

  
228 249
        Rectangle2D.Double r = new Rectangle2D.Double();
229 250

  
230
        if (layout.getLayoutContext().getAtributes().isMargin()) {
231
            r = new Rectangle2D.Double((layout.getLayoutControl().getRect().x +
251
        if (attributes.isMargin()) {
252
            r = new Rectangle2D.Double((rLayout.getX() +
232 253
                    FLayoutUtilities.fromSheetDistance(
233
                        layout.getLayoutContext().getAtributes().m_area[2], layout.getLayoutControl().getAT())),
234
                    (layout.getLayoutControl().getRect().y +
254
                        attributes.m_area[2], at)),
255
                    (rLayout.getY() +
235 256
                    FLayoutUtilities.fromSheetDistance(
236
                        layout.getLayoutContext().getAtributes().m_area[0], layout.getLayoutControl().getAT())),
237
                    (layout.getLayoutControl().getRect().width -
238
                    FLayoutUtilities.fromSheetDistance(layout.getLayoutContext().getAtributes().m_area[2] +
239
                        layout.getLayoutContext().getAtributes().m_area[3], layout.getLayoutControl().getAT())),
240
                    (layout.getLayoutControl().getRect().height -
241
                    FLayoutUtilities.fromSheetDistance(layout.getLayoutContext().getAtributes().m_area[0] +
242
                        layout.getLayoutContext().getAtributes().m_area[1], layout.getLayoutControl().getAT())));
257
                        attributes.m_area[0], at)),
258
                    (rLayout.getWidth() -
259
                    FLayoutUtilities.fromSheetDistance(attributes.m_area[2] +
260
                        attributes.m_area[3], at)),
261
                    (rLayout.getHeight() -
262
                    FLayoutUtilities.fromSheetDistance(attributes.m_area[0] +
263
                        attributes.m_area[1], at)));
243 264
        } else {
244
            r.setRect(layout.getLayoutControl().getRect());
265
            r.setRect(rLayout);
245 266
        }
246 267
        if ((unidadesX == 0) && (unidadesY == 0)) {
247 268
            return;
......
249 270
        g.setColor(Color.darkGray);
250 271

  
251 272
        if (((unidadesX > unidadesMin) || (unidadesY > unidadesMin)) &&
252
                layout.getLayoutContext().isGridVisible()) {
273
                layoutContext.isGridVisible()) {
253 274
            double ax = r.getMinX();
254 275
            double ay;
255 276

  
......
273 294
     * @param color Color de la regla.
274 295
     */
275 296
    public void drawRuler(Graphics2D g, Color color) {
276
        if (layout.getLayoutContext().getRuler()) {
297
    	LayoutControl layoutControl=layout.getLayoutControl();
298
    	LayoutContext layoutContext= layout.getLayoutContext();
299
    	Attributes attributes=layoutContext.getAtributes();
300
    	Rectangle2D rLayout=layoutControl.getRect();
301
    	AffineTransform at=layoutContext.getAT();
302

  
303
        if (layoutContext.getRuler()) {
277 304
            int ini = 10;
278 305
            int w = 30;
279 306
            int wi = 16;
280 307

  
281 308
            g.setColor(new Color(250, 255, 250, 180));
282
            g.fillRect(ini, w, wi, layout.getLayoutControl().getHeight() - w);
283
            g.fillRect(w, ini, layout.getLayoutControl().getWidth() - w, wi);
309
            g.fillRect(ini, w, wi, layoutControl.getHeight() - w);
310
            g.fillRect(w, ini, layoutControl.getWidth() - w, wi);
284 311

  
285 312
            g.setColor(new Color(100, 155, 150, 180));
286
            g.fillRect(w, ini, (int) layout.getLayoutControl().getRect().x - w, wi);
287
            g.fillRect((int) layout.getLayoutControl().getRect().getMaxX(), ini,
288
                layout.getLayoutControl().getWidth() - (int) layout.getLayoutControl().getRect().getMaxX(), wi);
313
            g.fillRect(w, ini, (int) rLayout.getX() - w, wi);
314
            g.fillRect((int) rLayout.getMaxX(), ini,
315
                layoutControl.getWidth() - (int) rLayout.getMaxX(), wi);
289 316

  
290
            g.fillRect(ini, w, wi, (int) layout.getLayoutControl().getRect().y - w);
291
            g.fillRect(ini, (int) layout.getLayoutControl().getRect().getMaxY(), wi,
292
                layout.getLayoutControl().getHeight() - (int) layout.getLayoutControl().getRect().getMaxY());
317
            g.fillRect(ini, w, wi, (int) rLayout.getY() - w);
318
            g.fillRect(ini, (int) rLayout.getMaxY(), wi,
319
                layoutControl.getHeight() - (int) rLayout.getMaxY());
293 320

  
294
            if (layout.getLayoutContext().getAtributes().isMargin()) {
321
            if (attributes.isMargin()) {
295 322
                g.setColor(new Color(50, 55, 50, 180));
296
                g.fillRect((int) layout.getLayoutControl().getRect().x, ini,
323
                g.fillRect((int) rLayout.getX(), ini,
297 324
                    (int) FLayoutUtilities.fromSheetDistance(
298
                        layout.getLayoutContext().getAtributes().m_area[2], layout.getLayoutControl().getAT()), wi);
299
                g.fillRect((int) layout.getLayoutControl().getRect().getMaxX() -
325
                        attributes.m_area[2], at), wi);
326
                g.fillRect((int) rLayout.getMaxX() -
300 327
                    (int) FLayoutUtilities.fromSheetDistance(
301
                        layout.getLayoutContext().getAtributes().m_area[3], layout.getLayoutControl().getAT()), ini,
328
                        attributes.m_area[3], at), ini,
302 329
                    (int) FLayoutUtilities.fromSheetDistance(
303
                        layout.getLayoutContext().getAtributes().m_area[3], layout.getLayoutControl().getAT()), wi);
330
                        attributes.m_area[3], at), wi);
304 331

  
305
                g.fillRect(ini, (int) layout.getLayoutControl().getRect().y, wi,
332
                g.fillRect(ini, (int) rLayout.getY(), wi,
306 333
                    (int) FLayoutUtilities.fromSheetDistance(
307
                        layout.getLayoutContext().getAtributes().m_area[0], layout.getLayoutControl().getAT()));
334
                        attributes.m_area[0], at));
308 335
                g.fillRect(ini,
309
                    (int) layout.getLayoutControl().getRect().getMaxY() -
336
                    (int) rLayout.getMaxY() -
310 337
                    (int) FLayoutUtilities.fromSheetDistance(
311
                        layout.getLayoutContext().getAtributes().m_area[1], layout.getLayoutControl().getAT()), wi,
338
                        attributes.m_area[1], at), wi,
312 339
                    (int) FLayoutUtilities.fromSheetDistance(
313
                        layout.getLayoutContext().getAtributes().m_area[1], layout.getLayoutControl().getAT()));
340
                        attributes.m_area[1], at));
314 341
            }
315 342

  
316 343
            g.setColor(color);
317
            g.drawLine(w, wi + ini, layout.getLayoutControl().getWidth(), wi + ini);
318
            g.drawLine(w, ini, layout.getLayoutControl().getWidth(), ini);
319
            g.drawLine(ini, w, ini, layout.getLayoutControl().getHeight());
320
            g.drawLine(wi + ini, w, wi + ini, layout.getLayoutControl().getHeight());
344
            g.drawLine(w, wi + ini, layoutControl.getWidth(), wi + ini);
345
            g.drawLine(w, ini, layoutControl.getWidth(), ini);
346
            g.drawLine(ini, w, ini, layoutControl.getHeight());
347
            g.drawLine(wi + ini, w, wi + ini, layoutControl.getHeight());
321 348

  
322
            drawLineY(g, 5, 12, 22, layout.getLayoutControl().getRect().y, 0);
323
            drawLineX(g, 5, 12, 22, layout.getLayoutControl().getRect().x, 0);
349
            drawLineY(g, 5, 12, 22, rLayout.getY(), 0);
350
            drawLineX(g, 5, 12, 22, rLayout.getX(), 0);
324 351

  
325
            if (FLayoutUtilities.fromSheetDistance(1, layout.getLayoutControl().getAT()) > 15) {
326
                drawLineY(g, 1, 12, 22, layout.getLayoutControl().getRect().y, 0);
327
                drawLineX(g, 1, 12, 22, layout.getLayoutControl().getRect().x, 0);
352
            if (FLayoutUtilities.fromSheetDistance(1, at) > 15) {
353
                drawLineY(g, 1, 12, 22, rLayout.getY(), 0);
354
                drawLineX(g, 1, 12, 22, rLayout.getX(), 0);
328 355

  
329
                if (FLayoutUtilities.fromSheetDistance(1, layout.getLayoutControl().getAT()) > 25) {
330
                    drawLineY(g, 1, 18, 22, layout.getLayoutControl().getRect().y, 0.5);
331
                    drawLineY(g, 0.1, 21, 22, layout.getLayoutControl().getRect().y, 0);
332
                    drawLineX(g, 1, 18, 22, layout.getLayoutControl().getRect().x, 0.5);
333
                    drawLineX(g, 0.1, 21, 22, layout.getLayoutControl().getRect().x, 0);
356
                if (FLayoutUtilities.fromSheetDistance(1, at) > 25) {
357
                    drawLineY(g, 1, 18, 22, rLayout.getY(), 0.5);
358
                    drawLineY(g, 0.1, 21, 22, rLayout.getY(), 0);
359
                    drawLineX(g, 1, 18, 22, rLayout.getX(), 0.5);
360
                    drawLineX(g, 0.1, 21, 22, rLayout.getX(), 0);
334 361
                }
335 362
            }
336 363
        }
......
349 376
     */
350 377
    private void drawLineY(Graphics2D g, double dist, int init, int end,
351 378
        double y, double desp) {
352
        double distY = FLayoutUtilities.fromSheetDistance(dist, layout.getLayoutControl().getAT());
379
    	AffineTransform at=layout.getLayoutContext().getAT();
380
    	LayoutControl layoutControl=layout.getLayoutControl();
381

  
382
    	double distY = FLayoutUtilities.fromSheetDistance(dist, at);
353 383
        double rota = Math.toRadians(90);
354 384

  
355 385
        if (distY > 4) {
356 386
            double despY = FLayoutUtilities.fromSheetDistance(desp,
357
                    layout.getLayoutControl().getAT());
387
                    at);
358 388

  
359 389
            double posUnitY = y + despY;
360 390
            double posUnitYNeg = posUnitY;
361 391
            int num = 0;
362 392
            double iniY = 40;
363 393
            Point2D.Double pfin = FLayoutUtilities.fromSheetPoint(new Point2D.Double(
364
                        layout.getLayoutControl().getWidth(), layout.getLayoutControl().getHeight()), layout.getLayoutControl().getAT());
394
                        layoutControl.getWidth(), layoutControl.getHeight()), at);
365 395

  
366 396
            while (posUnitY < (pfin.y - 5)) {
367 397
                posUnitYNeg -= distY;
......
418 448
     */
419 449
    private void drawLineX(Graphics2D g, double dist, int init, int end,
420 450
        double x, double desp) {
421
        double distX = FLayoutUtilities.fromSheetDistance(dist, layout.getLayoutControl().getAT());
451
    	AffineTransform at=layout.getLayoutContext().getAT();
452
    	LayoutControl layoutControl=layout.getLayoutControl();
422 453

  
454
    	double distX = FLayoutUtilities.fromSheetDistance(dist, at);
455

  
423 456
        if (distX > 4) {
424 457
            double despX = FLayoutUtilities.fromSheetDistance(desp,
425
                    layout.getLayoutControl().getAT());
458
                    at);
426 459
            double posUnitX = x + despX;
427 460
            double posUnitXNeg = posUnitX;
428 461
            int num = 0;
429 462
            double iniX = 40;
430 463
            Point2D.Double pfin = FLayoutUtilities.fromSheetPoint(new Point2D.Double(
431
                        layout.getLayoutControl().getWidth(), layout.getLayoutControl().getHeight()), layout.getLayoutControl().getAT());
464
                        layoutControl.getWidth(), layoutControl.getHeight()), at);
432 465

  
433 466
            while (posUnitX < (pfin.x - 5)) {
434 467
                posUnitXNeg -= distX;
......
475 508
     * @param color Color de los Handlers.
476 509
     */
477 510
    public void drawHandlers(Graphics2D g, Color color) {
511
    	LayoutContext layoutContext= layout.getLayoutContext();
512

  
478 513
        g.setColor(color);
479
        IFFrame[] fframes=layout.getLayoutContext().getFFrames();
514
        IFFrame[] fframes=layoutContext.getFFrames();
480 515
        for (int i = 0; i < fframes.length; i++) {
481 516
            IFFrame fframe = fframes[i];
482 517

  
......
606 641
     * @param ps
607 642
     */
608 643
    public void toPS(File ps) {
644
    	Attributes attributes=layout.getLayoutContext().getAtributes();
645
    	LayoutControl layoutControl=layout.getLayoutControl();
646

  
609 647
    	try {
610 648
            // Prepare the output file to receive the postscript
611 649
            OutputStream fos = new BufferedOutputStream(
......
632 670
                // see e702 Determining When a Print Job Has Finished
633 671
                //PrintJobWatcher pjDone = new PrintJobWatcher(job);
634 672
//              Actualizar attributes
635
                 PrintRequestAttributeSet att = layout.getLayoutContext().getAtributes()
673
                 PrintRequestAttributeSet att = attributes
636 674
                                                      .toPrintAttributes();
637 675
                // Print it
638 676
                job.print(doc, att);
......
668 706
            e.printStackTrace();
669 707
        }
670 708
        */
671
         layout.getLayoutControl().fullRect();
709
         layoutControl.fullRect();
672 710
    }
673 711

  
674 712

  
......
679 717
     * @param pdf
680 718
     */
681 719
    public void toPDF(File pdf) {
682
        double w = 0;
720
    	Attributes attributes=layout.getLayoutContext().getAtributes();
721
    	LayoutControl layoutControl=layout.getLayoutControl();
722

  
723
    	double w = 0;
683 724
        double h = 0;
684 725
        Document document = new Document();
685 726

  
686
        if (layout.getLayoutContext().getAtributes().isLandSpace()) {
687
            w = ((layout.getLayoutContext().getAtributes().m_sizePaper.getAlto() * Attributes.DPISCREEN) / Attributes.PULGADA);
688
            h = ((layout.getLayoutContext().getAtributes().m_sizePaper.getAncho() * Attributes.DPISCREEN) / Attributes.PULGADA);
727
        if (attributes.isLandSpace()) {
728
            w = ((attributes.m_sizePaper.getAlto() * Attributes.DPISCREEN) / Attributes.PULGADA);
729
            h = ((attributes.m_sizePaper.getAncho() * Attributes.DPISCREEN) / Attributes.PULGADA);
689 730
        } else {
690
            w = ((layout.getLayoutContext().getAtributes().m_sizePaper.getAncho() * Attributes.DPISCREEN) / Attributes.PULGADA);
691
            h = ((layout.getLayoutContext().getAtributes().m_sizePaper.getAlto() * Attributes.DPISCREEN) / Attributes.PULGADA);
731
            w = ((attributes.m_sizePaper.getAncho() * Attributes.DPISCREEN) / Attributes.PULGADA);
732
            h = ((attributes.m_sizePaper.getAlto() * Attributes.DPISCREEN) / Attributes.PULGADA);
692 733
        }
693 734

  
694 735
        document.setPageSize(new com.lowagie.text.Rectangle((float) w, (float) h));
......
705 746
            Graphics2D g2 = cb.createGraphicsShapes((float) w, (float) h);
706 747

  
707 748
            try {
708
                if (layout.getLayoutContext().getAtributes().isLandSpace()) {
749
                if (attributes.isLandSpace()) {
709 750
                    g2.rotate(Math.toRadians(-90), 0 + (w / (h / w)),
710 751
                        0 + (h / 2));
711 752
                    print.print(g2, new PageFormat(), 0);
......
729 770

  
730 771
        document.close();
731 772

  
732
        layout.getLayoutControl().fullRect();
773
        layoutControl.fullRect();
733 774
      }
734 775
}

Also available in: Unified diff