Revision: 4940
          http://sourceforge.net/p/jump-pilot/code/4940
Author:   michaudm
Date:     2016-06-23 05:51:01 +0000 (Thu, 23 Jun 2016)
Log Message:
-----------
Change how svg export is scaled in order to keep labels as in the 
LayerViewPanel.

Modified Paths:
--------------
    core/trunk/ChangeLog
    core/trunk/src/org/openjump/core/ui/plugin/file/SaveImageAsSVGPlugIn.java

Modified: core/trunk/ChangeLog
===================================================================
--- core/trunk/ChangeLog        2016-06-18 21:16:27 UTC (rev 4939)
+++ core/trunk/ChangeLog        2016-06-23 05:51:01 UTC (rev 4940)
@@ -3,15 +3,18 @@
 # 2. make sure that lines break at 80 chars for constricted display situations
 #<-------------------------------- 80 chars 
---------------------------------->#
 
+2016-06-23 mmichaud <m.michael.mich...@orange.fr>
+  * Fix bug #420 (many feature labels were lost with svg export)
+
 2016-06-12 mmichaud <m.michael.mich...@orange.fr>
-  * update TopologyExtension to 0.9.0.
+  * Update TopologyExtension to 0.9.0.
 
 2016-06-17 mmichaud <m.michael.mich...@orange.fr>
   * Fix a problem with z interoplation in Noder plugin (note : there is still
     a bug related to JTS when using a PrecisionModel of 0 decimal - scale=1)
 
 2016-06-12 mmichaud <m.michael.mich...@orange.fr>
-  * update TopologyExtension to 0.8.2.
+  * Update TopologyExtension to 0.8.2.
 
 2016-06-04 Giuseppe Aruta  <giuseppe_ar...@yahoo.it>
   * Add zoom shortcuts to status bar.
@@ -23,7 +26,7 @@
     vary from one version to another and using that much memory may crash the 
jvm.
 
 2016-05-29 ede
-  * add a new PlugInClassLoader to keep all classes in one to circumvent issues
+  * Add a new PlugInClassLoader to keep all classes in one to circumvent issues
     resulting in non working instanceof's or missing classes
 
 2016-05-24 mmichaud <m.michael.mich...@orange.fr>

Modified: 
core/trunk/src/org/openjump/core/ui/plugin/file/SaveImageAsSVGPlugIn.java
===================================================================
--- core/trunk/src/org/openjump/core/ui/plugin/file/SaveImageAsSVGPlugIn.java   
2016-06-18 21:16:27 UTC (rev 4939)
+++ core/trunk/src/org/openjump/core/ui/plugin/file/SaveImageAsSVGPlugIn.java   
2016-06-23 05:51:01 UTC (rev 4940)
@@ -147,7 +147,6 @@
        * SVGGraphics2D(ctx, true);
        */
       SVGGraphics2D svgGenerator = new SVGGraphics2D(document);
-      Viewport viewport = context.getLayerViewPanel().getViewport();
 
       // --- Test with changed classes of Openjump and the new maxFeatures
       // field in FeatureCollectionRenderer.class
@@ -188,25 +187,17 @@
           myRnew.setMaxFeatures(10000000);
         }
       }
-      lvp.repaint();
       // Change drawing resolution to print to svg (0.5 pixel to 0.1 pixel)
-      Java2DConverter oldConverter = lvp.getViewport().getJava2DConverter();
-      lvp.getViewport().setJava2DConverter(
-          new Java2DConverter(lvp.getViewport(), 0.001));
-      double scale = ScreenScale.getHorizontalMapScale(lvp.getViewport());
-      int resolution = ScreenScale.getResolution();
+      Viewport viewport = lvp.getViewport();
+      Java2DConverter oldConverter = viewport.getJava2DConverter();
+      viewport.setJava2DConverter(new Java2DConverter(viewport, 0.001));
 
-      ScreenScale.setResolution(90);
-      ZoomToScalePlugIn zoomToScalePlugIn = new ZoomToScalePlugIn();
-      zoomToScalePlugIn.setScale(scale);
-      zoomToScalePlugIn.zoomToNewScale(context);
+      //svgGenerator.scale(0.746, 0.746); // rapport pour LibreOffice 
(0.72/0.96)
+      svgGenerator.scale(0.90/0.96, 0.90/0.96); // rapport pour Inkscape
       lvp.paintComponent(svgGenerator);
 
       // Restore previous rendering resolution
       lvp.getViewport().setJava2DConverter(oldConverter);
-      ScreenScale.setResolution(resolution);
-      zoomToScalePlugIn.setScale(scale);
-      zoomToScalePlugIn.zoomToNewScale(context);
       // ------------------------------
       // reset the old state of 100 features
       for (int i = 0; i < layers.size(); i++) {


------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to