Revision 28231 trunk/applications/appgvSIG/src/com/iver/cit/gvsig/project/documents/layout/FLayoutDraw.java
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